(Código fuente adjunto) SSM+ Sistema de gestión de información estudiantil Diseño de graduación por computadora 11578

                                                                    Resumen

Desde la década de 1920, las computadoras han aparecido locamente en la vida y el trabajo de las personas, convirtiéndose en una buena ayuda para la vida y el trabajo de las personas. Las computadoras han penetrado en todos los hogares. Las oficinas en línea y la enseñanza en línea han reemplazado los métodos tradicionales de gestión manual de registros. , utilizando computadoras para trabajar no tiene por qué limitarse a una hora y un lugar fijos, y la comunicación interregional se puede lograr fácilmente a través de sistemas informáticos. Con la popularización de la educación superior, el número de estudiantes ha seguido aumentando. Recientemente, debido al impacto de la epidemia, la consulta y gestión tradicional de la información de los estudiantes se ha vuelto cada vez más inconveniente, y la gestión manual de consultas también ha reducido la eficiencia del trabajo y ha aumentado la número de docentes y la carga de trabajo de la escuela, y no es conveniente que los estudiantes realicen consultas, por lo que se desarrolló un sistema de gestión de información estudiantil.

Este sistema se desarrolla con aplicaciones prácticas como contexto. A través del administrador del sistema, el administrador del sistema puede llevar a cabo una gestión unificada de todos los estudiantes, profesores y otro personal, así como también la gestión de algunos estudiantes, tareas asignadas, finalización de tareas, registro, profesor- comunicación de los estudiantes y otra información de datos relacionada con los estudiantes, para facilitar la retención de datos. Los profesores y estudiantes pueden registrarse y luego iniciar sesión en el sistema para consultar y administrar información como tareas asignadas, tareas completadas, registros y comunicación entre profesores y estudiantes. En general, el front-end del sistema se muestra a través de páginas Java, el back-end usa el marco SSM y la base de datos usa la popular base de datos relacional de código abierto MYSQL. Este sistema utiliza el popular vue.js actualmente en la tecnología front-end para hacer que la página se muestre más ordenada y hermosa.

Palabras clave: gestión de información estudiantil; Java; SSM; MYSQL

Abstracto

Desde la década de 1920, las computadoras han aparecido locamente en la vida y el trabajo de las personas, convirtiéndose en una buena ayuda para la vida y el trabajo de las personas. Las computadoras han penetrado en todos los hogares. La oficina en red y la enseñanza en red han reemplazado la tradicional gestión manual de registros. El uso de computadoras para trabajar no puede limitarse a horarios y lugares fijos, y la comunicación interregional se puede realizar fácilmente a través del sistema informático. Con la popularización de la educación superior, el número de estudiantes también está aumentando. Recientemente, debido al impacto de la epidemia, la gestión de consultas tradicional de la información de los estudiantes se está volviendo cada vez más inconveniente, y la gestión de consultas manual también reduce la eficiencia del trabajo, aumenta la carga de trabajo de los profesores y las escuelas y no es conveniente para los estudiantes. consulta. Por lo tanto,

Este sistema toma la aplicación práctica como base de desarrollo. A través del administrador del sistema, todos los estudiantes, maestros y otro personal, así como cierta información de datos relacionada con los estudiantes, como la gestión de estudiantes, la asignación de tareas, la finalización de tareas, el registro y el inicio de sesión, y la comunicación entre maestros y estudiantes, se pueden administrar de manera uniforme para facilitar la retención de datos. Los profesores y estudiantes pueden registrarse e iniciar sesión en el sistema para consultar y administrar la información sobre la asignación de tareas, su finalización, el registro y la comunicación entre profesores y estudiantes. En general, el primer plano del sistema se muestra a través de páginas Java, el fondo usa el marco SSM y la base de datos usa la popular base de datos relacional de código abierto MYSQL. Este sistema utiliza el vue popular actual.

Palabras clave : Gestión de información estudiantil; Java; SSM; MYSQL

Tabla de contenido

Resumen

Abstracto

Capítulo 1 Introducción  

1.1  Antecedentes de la selección de temas

1.2  Importancia del tema de investigación

1.3  Disposición de la estructura de la tesis

Capítulo 2 Análisis de requisitos del sistema de gestión de información estudiantil

2.1  Análisis de viabilidad del sistema

2.1.1  Análisis de viabilidad técnica

2.1.2  Análisis de viabilidad económica

2.1.3  Análisis de factibilidad de operación

2.2  Análisis de requisitos del sistema

2.2.1  Análisis de requisitos funcionales

2.2.2  Análisis de requisitos no funcionales

2.3  Análisis de casos de uso del sistema

Capítulo 3 Diseño general del sistema de gestión de información estudiantil

3.1  Diseño del módulo de función del sistema

3.2  Diseño de base de datos

3.2.1  Diseño de la estructura conceptual de la base de datos

3.2.2  Diseño de estructura lógica de base de datos

Capítulo 4 Diseño e implementación de módulos clave 1 7

4.1  Módulo de inicio de sesión 17

4.2  Módulo de registro

4.3  Módulo de gestión de usuarios

4.4 Módulo de Gestión de Estudiantes 

4.5 Asignar módulo de tareas 

4.6 Completar el módulo de tareas 

4.7 Módulo de facturación 

4. 8 Módulo de gestión del intercambio profesor-alumno 

Capítulo 5 Experimento del sistema y análisis de resultados 3 0

5.1  Propósito de las pruebas 30

5.2  Prueba de piezas del sistema 30

5.3  Resultados de la prueba del sistema 32

Capítulo 6 Conclusión 3 3

Referencias 3 4

Expresiones de gratitud

  • Capítulo 1 Introducción
    1. Fondo

Hoy en día, con el rápido desarrollo económico del siglo XXI, varios software auxiliares de oficina se han vuelto populares en diversas industrias, como el software ERP empresarial, el software de gestión financiera familiar, el software de gestión del estado de los estudiantes de educación, etc., que han sido muy elogiados por los usuarios. Para la educación En lo que respecta a las carreras, la mayoría de las escuelas han desarrollado muchos sistemas de gestión web para que los estudiantes y profesores lleven a cabo el aprendizaje y la gestión en línea, como sistemas de estado de los estudiantes, sistemas de exámenes, etc. A través de estos sistemas, el mantenimiento de datos, los estudiantes y sus relacionados La información se puede mantener convenientemente. La gestión de la información y su aplicación actual en la enseñanza involucran la política, la economía, la cultura y otros campos.

En términos generales, la educación actual ya no está dominada por la forma de enseñanza tradicional de un solo maestro frente a un grupo de estudiantes, sino que, sobre la base original, la enseñanza diversificada en forma de diversas formas de enseñanza auxiliares se ha convertido en la corriente principal. El cambio se debe precisamente a que una vez que la red informática se combina con la educación, está determinada por las muchas ventajas de la enseñanza en línea en forma de Internet. El sistema de gestión de información estudiantil estudiado en este tema se basa principalmente en tecnología de redes informáticas. En términos de gestión de información estudiantil, se han diseñado e implementado varias funciones. El sistema implementado tiene tres partes: administradores, profesores y estudiantes. Incluye principalmente tres funciones. : subsistema de administrador docente, subsistema de docentes y subsistema de estudiantes. Realiza funciones como gestión de estudiantes, gestión de docentes, gestión de tareas, gestión de finalización de tareas, gestión de registros, gestión de comunicación docente-estudiante, etc.

    1. Proyecto de investigaciónsignificado de la investigación

El sistema de gestión de información estudiantil es una parte importante del desarrollo empresarial escolar y cada vez más escuelas lo valoran. Por un lado, para la mayoría de las escuelas, el sistema de gestión de información de los estudiantes les ayuda a consultar y gestionar mejor la información relacionada con los estudiantes; por otro lado, los estudiantes pueden ver cursos, selecciones de cursos y resultados en línea, lo que atraerá a más estudiantes Uso, diversificado Las opciones y un proceso completamente transparente en el proceso de gestión pueden ganar el reconocimiento del usuario y aumentar la fidelidad del usuario. A través del sistema de gestión de información de los estudiantes, los estudiantes pueden completar consultas de información relacionada con los estudiantes en el sistema sin tener que ir a la oficina de cada maestro o a la oficina de asuntos académicos para realizar consultas, lo que permite a los usuarios consultar la información de los estudiantes sin salir de casa.

Este artículo diseñará un sistema de gestión de información estudiantil para la escuela basado en SSM, de acuerdo con el concepto de las necesidades del usuario como centro, con el objetivo de satisfacer las necesidades del usuario de manera integral, de alta calidad y eficiente. Proporcionar a la escuela un sistema de gestión de información estudiantil más potente. La incorporación de tecnología de la información informática en los aspectos técnicos importantes del sistema de gestión de información de los estudiantes no solo puede mejorar la eficiencia de la gestión de la información de los estudiantes y reducir la carga de trabajo de los administradores, sino que también facilita que los estudiantes verifiquen tareas, realicen intercambios entre maestros y estudiantes, verifiquen ingresar, iniciar sesión, etc., lo cual es muy importante para el futuro de la escuela. El impacto de los desarrollos y mejoras es de gran alcance. Los administradores escolares pueden gestionar toda la información en línea y el grado de racionalización de su estructura interna afecta directamente la decisión final del administrador escolar, por lo que un sistema de gestión de información estudiantil necesita información suficiente y métodos de gestión rápidos y convenientes.

    1. Disposición de la estructura de la tesis.

El documento se organizará jerárquicamente. Además de las secciones de resumen, índice, agradecimientos y referencias bibliográficas, el texto principal también analizará los requisitos del sitio web, detallará el diseño general y las funciones implementadas y, finalmente, enumerará algunos registros de puesta en servicio. El documento principalmente La arquitectura es la siguiente:

El Capítulo 1 explica los antecedentes del proyecto y la importancia práctica del desarrollo.

El Capítulo 2 analiza la viabilidad y los requisitos funcionales de este sistema.

El Capítulo 3 explica el diseño general del proyecto.

El Capítulo 4 aclara la implementación de las funciones detalladas del sistema de gestión de información de los estudiantes, basándose principalmente en las funciones del módulo funcional técnico.

El Capítulo 5 enumera algunos registros de prueba y depuración del sistema.

El Capítulo 6 presenta la conclusión del sistema de gestión de información de los estudiantes.

El sistema de gestión de información de los estudiantes utiliza la base de datos mysql para el almacenamiento y herramientas de desarrollo como IDEA y Tomcat para el desarrollo, lo que puede aportar mucha comodidad a nuestro trabajo de escritura. El sistema se desarrolla utilizando el marco SSM, lo que hace que el sistema sea más escalable y mantenible, reduce el código de configuración de Java y simplifica el código de programación. Actualmente, el marco SSM también es uno de los marcos elegidos por muchas empresas.

      1. Análisis de viabilidad económica.

El software de desarrollo utilizado para desarrollar el sistema de gestión de información de los estudiantes, como las herramientas de desarrollo IDEA, el servidor Tomcat8.0, la base de datos MySQL5.7, el software de procesamiento de imágenes Photoshop, etc., son todos de código abierto y gratuitos, y estos entornos se han estudiado sistemáticamente. en la ...escuela

      1. Análisis de viabilidad operativa

Al diseñar este proyecto, hice referencia a muchos casos exitosos de sistemas similares, analicé sistemáticamente sus interfaces y funciones operativas y combiné muchos casos para resaltar operaciones simplificadas y orientadas a las personas, para que las personas con conocimientos básicos de informática puedan operar este proyecto. Por tanto, no hay ningún problema con la viabilidad operativa.

    1. Análisis de requisitos del sistema
      1. Análisis de requisitos funcionales.

El diseño y la implementación del sistema de gestión de información de los estudiantes tienen como objetivo permitir a los usuarios de la escuela administrar de manera más conveniente cierta información relacionada con los estudiantes . Los usuarios pueden ahorrar mucho tiempo y energía al buscar y administrar, y reducir efectivamente el tiempo de búsqueda innecesario. El sistema se divide funcionalmente en tres partes: extremo del estudiante , extremo del docente y extremo del administrador.

Lado estudiantil:

(1) Registro e inicio de sesión: cuando los estudiantes quieran consultar y administrar las funciones implementadas en el sistema , deben iniciar sesión en el sistema. Si no tienen una cuenta, en la interfaz de inicio de sesión, haga clic en el botón "Registrarse" para saltar. en la interfaz de registro, complete la información de registro de acuerdo con las indicaciones, agregue y envíe, la información del estudiante se agrega a la base de datos y luego ingrese el número de cuenta y la contraseña ingresados ​​​​para iniciar sesión ;

(2) Información personal: después de iniciar sesión, los estudiantes pueden modificar su información personal y la contraseña para iniciar sesión en su cuenta;

(3) Información del estudiante: Después de hacer clic en el botón "Gestión de estudiantes", verá toda la información del estudiante en el sistema. Admite la consulta de información del estudiante por número de estudiante o nombre de estudiante o nombre de clase. Si desea conocer la información detallada de un determinado estudiante, haga clic en "Ver" posterior para ingresar a la interfaz de detalles;

(4) Información de la tarea asignada: haga clic en el menú "Información de la tarea asignada" para ver la información de su propia tarea. Admite la consulta de información de la tarea por número de estudiante. Si desea conocer los detalles de una tarea asignada, haga clic en "Detalles" para ingresar al interfaz de detalles;

(5) Complete la tarea: haga clic en el botón "Completar información de la tarea" para ver toda la información de la tarea completada. Admite consultar la información de la tarea completada a través del nombre de la clase o del estudiante;

(6) Registro: haga clic en el botón "Registrar" para ver toda la información de registro enviada por usted. Puede verificar la información de registro por nombre del estudiante, nombre de la clase o número de estudiante. Si desea agregar nueva información de registro, haga clic en el botón "Agregar" y luego ingrese la información de registro de acuerdo con las indicaciones. Después de hacer clic en "Enviar", la información de registro de estudiantes recién agregada se mostrará en la interfaz de registro de estudiantes. puede hacer clic en una determinada información de check-in para ver los detalles de la información de check-in;

(7) Comunicación profesor-alumno: haga clic en el menú "Comunicación profesor-alumno" para ver toda la información de comunicación profesor-alumno consultada en el sistema. Admite la consulta de información de comunicación profesor-alumno por título. Si desea conocer un determinado comunicación profesor-alumno Para obtener información detallada, haga clic en "Detalles" en la parte posterior para ingresar a la interfaz de detalles;

Lado del profesor:

(1) Registro e inicio de sesión: cuando los profesores quieran consultar y administrar las funciones implementadas en el sistema , deben iniciar sesión en el sistema. Si no tienen una cuenta, en la interfaz de inicio de sesión, haga clic en el botón "Registrarse" para saltar. en la interfaz de registro, complete la información de registro de acuerdo con las indicaciones, agregue y envíe, la información del maestro se agregará a la base de datos y luego ingrese el número de cuenta y la contraseña ingresados ​​​​para iniciar sesión ;

(2) Información personal: después de iniciar sesión, los profesores pueden modificar su información personal y la contraseña para iniciar sesión en su cuenta;

(3) Información del estudiante: Después de hacer clic en el botón "Gestión de estudiantes", verá toda la información del estudiante en el sistema. Admite la consulta de información del estudiante por número de estudiante o nombre de estudiante o nombre de clase. Si desea conocer la información detallada de un determinado estudiante, haga clic en "Ver" posterior para ingresar a la interfaz de detalles;

(4) Información de la tarea asignada: haga clic en el menú "Información de la tarea asignada" para ver la información de su propia tarea. Admite la consulta de información de la tarea por número de estudiante. Si desea conocer los detalles de una tarea asignada, haga clic en "Detalles" para ingresar al interfaz de detalles;

(5) Información de registro e inicio de sesión: haga clic en el botón "Información de registro e inicio de sesión" para ver la información de inicio de sesión que elige registrar. Puede consultar el registro y el inicio de sesión información por nombre de clase o nombre de estudiante. Si desea conocer los detalles de un determinado inicio de sesión, haga clic en "Ver" a continuación para ingresar a la interfaz de detalles;

(6) Comunicación entre maestro y estudiante: haga clic en el botón "Comunicación entre maestro y estudiante" para ver la comunicación entre maestro y estudiante que ha consultado. Admite consultar la información de comunicación por nombre de clase o nombre de estudiante, y puede eliminar la información de comunicación consultada;

Lado del administrador:

(1) Información personal: después de iniciar sesión, los administradores pueden modificar su información personal y la contraseña para iniciar sesión en su cuenta;

(2) Gestión de usuarios: los administradores pueden gestionar y controlar todos los roles de usuario en el sistema, incluidos administradores, estudiantes y profesores. Si necesita agregar un nuevo usuario, haga clic en el botón "Agregar" en la página e ingrese de acuerdo con las indicaciones. . Vaya a la información del usuario y haga clic en "Enviar" para verla en la interfaz de usuario correspondiente. Puede hacer clic en el botón "Eliminar" detrás del usuario para eliminarlo directamente.

(3) Gestión de estudiantes: haga clic en el botón "Administración de estudiantes" para ver toda la información de los estudiantes en el sistema. Admite consultar la información de los estudiantes por nombre de estudiante, nombre de clase o número de estudiante. Si desea agregar nueva información de estudiante, haga clic en "Agregar". " y luego ingrese la información del estudiante de acuerdo con las indicaciones. Después de hacer clic en "Enviar", la información del estudiante recién agregada se mostrará en la interfaz de información del estudiante. Puede hacer clic en la información de un estudiante determinado para ver los detalles de la información del estudiante. o puede hacer clic directamente en "Eliminar" para eliminar la información del estudiante;

(4) Asignar tareas: haga clic en el botón "Asignar tareas" para ver toda la información de las tareas asignadas. Admite consultar la información de las tareas asignadas por nombre de clase o nombre de estudiante. Si desea conocer los detalles de una determinada tarea, haga clic en "Ver". ingrese a la interfaz de detalles;

(5) Complete la tarea: haga clic en el botón "Completar tarea" para ver toda la información de la tarea completada. Admite consultar la información de la tarea completada por el nombre del estudiante, el nombre de la clase o el número del estudiante. Puede agregar, eliminar y ver la tarea completa información del estudiante Detalles de la información de la tarea;

(6) Marcar e iniciar sesión: haga clic en el botón "Marcar e iniciar sesión" para ver la información de registro e inicio de sesión de todos los estudiantes. Admite consultar la información de registro e inicio de sesión a través del nombre de la clase o del estudiante, y el registro y el inicio de sesión agregados se pueden eliminar al mismo tiempo;

(7) Comunicación maestro-alumno: haga clic en el menú "Información de comunicación maestro-alumno" para ver toda la información de comunicación agregada en el sistema. Admite consultar la información de comunicación maestro-alumno por título. Si desea agregar un nuevo maestro- comunicación del estudiante, haga clic en el botón "Agregar", ingrese la información de comunicación maestro-estudiante de acuerdo con las indicaciones, haga clic en el botón "Enviar", la nueva información de comunicación se mostrará en el sistema y la información de comunicación maestro-estudiante agregada también se puede eliminado;

      1. Análisis de requisitos no funcionales.

Los requisitos no funcionales del sistema de gestión de información de estudiantes incluyen la seguridad, confiabilidad, rendimiento, escalabilidad, etc. del sistema de gestión de información de estudiantes de autoservicio. Los detalles se pueden expresar en la siguiente tabla 3-1:

Tabla 2.1 Tabla de requisitos no funcionales para el sistema de gestión de información estudiantil

seguridad

Se refiere principalmente a la instalación de la base de datos del sistema de gestión de información estudiantil , el uso de la base de datos y la configuración de contraseñas deben cumplir con los estándares.

fiabilidad

Confiabilidad significa que el sistema de gestión de información estudiantil puede instalarse y operar de acuerdo con las instrucciones del usuario. Después de las pruebas, la confiabilidad supera el 90%.

actuación

El rendimiento es una condición necesaria para que el sistema de gestión de información estudiantil ocupe el mercado, por lo que es mejor tener un buen rendimiento.

Escalabilidad

Por ejemplo, la base de datos reserva múltiples atributos, como el uso de interfaces, para garantizar los requisitos no funcionales del sistema.

Facilidad de uso

Los usuarios solo necesitan seguir el contenido de visualización de la página del sistema de gestión de información de estudiantes y operar.

Mantenibilidad

La mantenibilidad del desarrollo del sistema de gestión de información de los estudiantes es muy importante: después de las pruebas, no hay problemas con la mantenibilidad.

    1. Análisis de casos de uso del sistema.

El diagrama de casos de uso del rol del estudiante en el sistema de gestión de información estudiantil se muestra en la Figura 2.1:

                                        

Figura 2.1 Diagrama de casos de uso del rol del estudiante

El diagrama de casos de uso del rol del docente en el sistema de gestión de información de los estudiantes se muestra en la Figura 2.2:

                                        

Figura 2.2 Diagrama de casos de uso del rol docente

El diagrama de casos de uso del rol de administrador en el sistema de gestión de información de estudiantes se muestra en la Figura 2.3:

                                        

Figura 2.3 Diagrama de casos de uso del rol de administrador

  • Capítulo 3 Diseño general del sistema de gestión de información estudiantil

Después de analizar los antecedentes, la importancia y la viabilidad del desarrollo del proyecto, el siguiente paso es discutir la división funcional del proyecto y el diseño de varias tablas en la base de datos del proyecto durante la implementación específica. En este capítulo, se hará una introducción sistemática.

    1. Diseño del módulo de funciones del sistema.

El diseño del módulo funcional es crear una arquitectura del sistema basada en las funciones específicas que el sistema debe implementar y cómo se dividen las funciones. Se muestra en forma de diagrama de módulo para facilitarnos enumerar e involucrar las funciones . En términos de funciones del sistema, el proyecto se divide en tres módulos: administrador + profesor + alumno. Cada módulo inicia sesión y corresponde a la función correspondiente. El diagrama del módulo de funciones específicas se muestra en la Figura 3.1.

               

Figura 3.1 Diagrama del módulo de funciones del sistema de gestión de información de estudiantes

    1. Diseño de base de datos

El diseño de la base de datos lleva varios datos del sistema. En un sistema, todo tipo de datos requieren un contenedor especial. La base de datos es este contenedor. Al establecer la base de datos, consta principalmente de dos partes: el diseño del modelo de base de datos y el diseño de cada tabla de base de datos.

      1. Diseño de estructura conceptual de base de datos.

El siguiente es el diagrama de relación de entidades ER total de las principales tablas de la base de datos en todo el sistema de gestión de información de los estudiantes.

Figura 3.2 Diagrama general de relaciones ER del sistema de gestión de información de estudiantes

      1. Diseño de estructura lógica de base de datos.

En el diagrama ER anterior, puede ver que el proyecto requiere la creación de muchas tablas de datos. El siguiente es el modelo relacional de las principales tablas de la base de datos del proyecto:

(1) La entidad del maestro de tabla se utiliza para almacenar el número del maestro, el nombre del maestro, el sexo, etc. en la información del maestro;

Tabla 3.1 Tabla de información docente del docente

nombre

tipo

longitud

no nulo

Clave primaria

Comentario

id_profesor

En t

11

Identificación del maestro

maestro_no

varchar

64

No

Número de profesor

Nombre del maestro

varchar

64

No

No

Nombre del maestro

género

varchar

64

No

No

género

examinar_estado

varchar

dieciséis

No

Estado de aprobación

recomendar

En t

11

No

Recomendación inteligente

ID_usuario

En t

11

No

ID de usuario

crear_tiempo

fecha y hora

0

No

tiempo de creación

tiempo de actualizacion

marca de tiempo

0

No

Tiempo de actualizacion

(2) La entidad table system_students se utiliza para almacenar nombres de estudiantes, nombres de clases, género, números de estudiantes, etc. en la información de los estudiantes;

Tabla 3.2 Sistema de información de estudiantes_tabla de estudiantes

nombre

tipo

longitud

no nulo

Clave primaria

Comentario

sistema_estudiantes_id

En t

11

ID de estudiante del sistema

Identificación del Estudiante

varchar

64

No

No

número de estudiante

género

varchar

64

No

No

género

nombre del estudiante

varchar

64

No

No

nombre del estudiante

nombre de la clase

varchar

64

No

No

nombre de la clase

examinar_estado

varchar

dieciséis

No

Estado de aprobación

recomendar

En t

11

No

Recomendación inteligente

ID_usuario

En t

11

No

ID de usuario

crear_tiempo

fecha y hora

0

No

tiempo de creación

tiempo de actualizacion

marca de tiempo

0

No

Tiempo de actualizacion

(3) La entidad de tabla complete_the_task se utiliza para almacenar el número de tarea, el número de estudiante, el nombre del estudiante, el nombre de la clase, el nombre del maestro, el nombre de la tarea, la hora de envío, el archivo de finalización, las notas de finalización, etc. en la información de la tarea completada;

Tabla 3.3 Información completa de la tarea tabla complete_the_task

nombre

tipo

longitud

no nulo

Clave primaria

Comentario

complete_the_task_id

En t

11

ID de tarea completa

número_tarea

varchar

64

No

Número de tarea

Identificación del Estudiante

En t

11

No

No

número de estudiante

nombre del estudiante

varchar

64

No

No

nombre del estudiante

nombre de la clase

varchar

64

No

No

nombre de la clase

maestro_no

En t

11

No

No

Número de profesor

Nombre del maestro

varchar

64

No

No

Nombre del maestro

nombre de la tarea

varchar

64

No

No

nombre de la misión

Tiempo del envío

varchar

64

No

No

Tiempo del envío

archivo_completo

varchar

255

No

No

Completa el documento

comentarios_completos

varchar

64

No

No

notas completas

examinar_estado

varchar

dieciséis

No

Estado de aprobación

examinar_responder

varchar

dieciséis

No

No

respuesta de moderación

recomendar

En t

11

No

Recomendación inteligente

crear_tiempo

fecha y hora

0

No

tiempo de creación

tiempo de actualizacion

marca de tiempo

0

No

Tiempo de actualizacion

(4) La entidad de comunicación entre maestros_y_estudiantes de la tabla se utiliza para almacenar el número de estudiante, el nombre del estudiante, el nombre de la clase, el número de maestro, el nombre del maestro, el contenido de la comunicación, etc. en la información de comunicación entre maestros y estudiantes;

Tabla 3.4 Tabla Comunicación_entre_profesores_y_estudiantes

nombre

tipo

longitud

no nulo

Clave primaria

Comentario

comunicación_entre_profesores_y_estudiantes_id

En t

11

ID de intercambio profesor-alumno

Identificación del Estudiante

En t

11

No

No

número de estudiante

nombre del estudiante

varchar

64

No

No

nombre del estudiante

nombre de la clase

varchar

64

No

No

nombre de la clase

maestro_no

En t

11

No

No

Número de profesor

Nombre del maestro

varchar

64

No

No

Nombre del maestro

contenido_comunicacion

texto largo

0

No

No

Contenido de la comunicación

examinar_estado

varchar

dieciséis

No

Estado de aprobación

examinar_responder

varchar

dieciséis

No

No

respuesta de moderación

recomendar

En t

11

No

Recomendación inteligente

crear_tiempo

fecha y hora

0

No

tiempo de creación

tiempo de actualizacion

marca de tiempo

0

No

Tiempo de actualizacion

(5)表clock_in实体用来存放系统中学生的打卡签到信息,包含了管理序号、学生编号、学生姓名、班级名称、教师编号、教师姓名等;

表3.5打卡签到信息clock_in

名称

类型

长度

不是null

主键

注释

clock_in_id

int

11

打卡签到ID

management_no

varchar

64

管理序号

student_id

int

11

学生编号

student_name

varchar

64

学生姓名

class_name

varchar

64

班级名称

teacher_no

int

11

教师编号

teacher_name

varchar

64

教师姓名

examine_state

varchar

16

审核状态

examine_reply

varchar

16

审核回复

recommend

int

11

智能推荐

user_id

int

11

用户ID

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

(6)表student_management学生信息实体用来存放系统中学生的信息,包含了管理序号、学生编号、学生姓名、班级名称、教师编号、教师姓名、学生档案、记录日期、限制次数等;

表3.6学生管理信息student_management

名称

类型

长度

不是null

主键

注释

student_management_id

int

11

学生管理ID

management_no

varchar

64

管理序号

student_id

int

11

学生编号

student_name

varchar

64

学生姓名

class_name

varchar

64

班级名称

teacher_no

int

11

教师编号

teacher_name

varchar

64

教师姓名

student_files

varchar

255

学生档案

record_date

date

0

记录日期

recommend

int

11

智能推荐

limit_times

int

8

限制次数

limit_type

tinyint

2

限制次数类型1

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

管理员、教师和学生在登录界面输入账号+密码,点击“登录”按钮,系统在用户数据库表中会对管理员、教师和学生的账号进行匹配,账号+密码正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其主界面展示如下图4.1所示。

图4.1 登录界面图

登录关键代码如下所示。

  /**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        QueryWrapper wrapper = new QueryWrapper<User>();

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            tokenService.save(accessToken);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

}

    public String select(Map<String,String> query,Map<String,String> config){

        StringBuffer sql = new StringBuffer("select ");

        sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");

        sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));

        if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){

            sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");

        }

        if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){

            sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");

        }

        if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){

            int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;

            int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;

            sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);

        }

        log.info("[{}] - 查询操作,sql: {}",table,sql);

        return sql.toString();

}

    public List selectBaseList(String select) {

        List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);

        List<E> list = new ArrayList<>();

        for (Map<String,Object> map:mapList) {

            list.add(JSON.parseObject(JSON.toJSONString(map),eClass));

        }

        return list;

}

    1. 注册模块

注册模块满足教师和学生两部分,当学生和教师想要进行学生相关信息的查询管理的时候,就必须进行登录,如果没有账号的话,在登录界面,点击“注册”按钮就会跳转到注册的界面,根据提示填写好注册信息,添加提交,注册的信息在数据库中就添加完成了,然后再输入填写好的账号和密码进行登录,其主界面展示如下图4.1所示。

图4.2 注册界面图

注册关键代码如下所示。

  /**

     * 注册

     * @return

     */

    @PostMapping("register")

    public Map<String, Object> signUp(HttpServletRequest request) throws IOException {

        // 查询用户

        Map<String, String> query = new HashMap<>();

        Map<String,Object> map = service.readBody(request.getReader());

        query.put("username",String.valueOf(map.get("username")));

        List list = service.selectBaseList(service.select(query, new HashMap<>()));

        if (list.size()>0){

            return error(30000, "用户已存在");

        }

        map.put("password",service.encryption(String.valueOf(map.get("password"))));

        service.insert(map);

        return success(1);

}

    public Map<String,Object> readBody(BufferedReader reader){

        BufferedReader br = null;

        StringBuilder sb = new StringBuilder("");

        try{

            br = reader;

            String str;

            while ((str = br.readLine()) != null){

                sb.append(str);

            }

            br.close();

            String json = sb.toString();

            return JSONObject.parseObject(json, Map.class);

        }catch (IOException e){

            e.printStackTrace();

        }finally{

            if (null != br){

                try{

                    br.close();

                }catch (IOException e){

                    e.printStackTrace();

                }

            }

        }

        return null;

    }

    public void insert(Map<String,Object> body){

        E entity = JSON.parseObject(JSON.toJSONString(body),eClass);

        baseMapper.insert(entity);

        log.info("[{}] - 插入操作:{}",entity);

}

    1. 用户管理模块

管理员可以对系统中所有的用户角色进行管控,包含了管理员、学生以及教师这三种角色,如果需要添加新的用户,点击页面中的“添加”按钮根据提示输入上用户信息,点击“提交”以后在对应的用户界面就可以查看到了,可以点击用户后面的“删除”按钮直接删除某一用户,这里以教师用户为例。界面如下图4.3所示。

图4.3 用户管理界面图

用户管理关键代码如下所示。

/**

 * 用户组:用于用户前端身份和鉴权(UserGroup)表实体类

 *

 * @author xxx

 *@since 202X-XX-XX

 */

@TableName("user_group")

@Data

@EqualsAndHashCode(callSuper = false)

public class UserGroup implements Serializable {

    private static final long serialVersionUID = 968356951391304707L;

    /**

     * 用户组ID:[0,8388607]

     */

    @TableId(value = "group_id", type = IdType.AUTO)

    private Integer groupId;

    /**

     * 显示顺序:[0,1000]

     */

    @TableField(value = "display")

    private Integer display;

    /**

     * 名称:[0,16]

     */

    @TableField(value = "name")

    private String name;

    /**

     * 描述:[0,255]描述该用户组的特点或权限范围

     */

    @TableField(value = "description")

    private String description;

    /**

     * 来源表:

     */

    @TableField(value = "source_table")

    private String sourceTable;

    /**

     * 来源字段:

     */

    @TableField(value = "source_field")

    private String sourceField;

    /**

     * 注册位置:

     */

    @TableField(value = "register")

    private String register;

    /**

     * 创建时间:

     */

    @TableField(value = "create_time")

    private Timestamp createTime;

    /**

     * 更新时间:

     */

    @TableField(value = "update_time")

    private Timestamp updateTime;

}

    /**

     * 所在用户组:[0,32767]决定用户身份和权限

     */

    @TableField(value = "user_group")

private String userGroup;

/**

 * 用户组:用于用户前端身份和鉴权(UserGroup)表控制层

 *

 */

@RestController

@RequestMapping("user_group")

public class UserGroupController extends BaseController<UserGroup, UserGroupService> {

    /**

     * 服务对象

     */

    @Autowired

    public UserGroupController(UserGroupService service) {

        setService(service);

    }

}

    1. 学生管理模块

管理员和学生点击“学生信息”这个按钮可以查看到系统中的学生信息,支持通过学生姓名或者班级名称或者学生档案进行查询学生信息,如果想要添加新的学生信息,点击“添加”按钮然后根据提示输入学生信息,点击“提交”后,在学生管理界面就会显示新增的学生信息,可以点击某一学生信息查看学生信息的详情,也可以直接点击“删除”进行删除学生信息。界面如下图4.4所示。

图4.4 学生管理界面图

学生管理关键代码如下所示。

  @RequestMapping("/get_list")

    public Map<String, Object> getList(HttpServletRequest request) {

        Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));

        return success(map);

    }

    1. 分配任务模块

点击“分配任务”这个菜单,可以查看到系统中所有查询的分配任务信息,支持通过任务编号对任务信息进行查询,如果想要了解某一任务的详细信息,点击后面的“详情”会进入详情界面,学生和管理员如果想要选择某一分配任务,点击“任务”按钮,根据提示填写对应的信息,点击“提交”按钮,信息没有错误在数据库就会提交成功。界面如下图4.5所示。

图4.5 分配任务界面图

分配任务管理关键代码如下所示。

@PostMapping("/set")

@Transactional

    public Map<String, Object> set(HttpServletRequest request) throws IOException {

        service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));

        return success(1);

}

    1. 完成任务模块

学生点击“完成任务信息”这个按钮可以查看到自己提交的完成任务信息,支持通过班级名称或者学生姓名进行查询完成任务信息,如果想要了解某一完成任务的详细信息,点击后面的“查看”会进入详情界面,也支持对自己选择的完成任务进行删除;教师和管理员可以对学生提交的完成任务进行查询,选择某一完成任务,点击后面的“任务”按钮,根据提示输入对应的信息,点击“提交”后,完成任务就录入成功了。界面如下图4.6所示。

图4.6 完成任务界面图

    1. 打卡签到模块

学生点击“打卡签到”这个按钮可以查看到自己所有打卡签到信息,支持通过班级名称或者学生姓名进行查询打卡签到信息,管理员和教师可以对所打卡签到信息进行删除。界面如下图4.7所示。

图4.7 打卡签到界面图

打卡签到管理关键代码:

@RequestMapping("/get_obj")

    public Map<String, Object> obj(HttpServletRequest request) {

        List resultList = service.selectBaseList(service.select(service.readQuery(request), service.readConfig(request)));

        if (resultList.size() > 0) {

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("obj",resultList.get(0));

            return success(jsonObject);

        } else {

            return success(null);

        }

}

    1. 师生交流管理模块

点击“师生交流”这个菜单,可以查看到系统中所有添加的师生交流信息,支持通过标题对师生交流信息进行查询,只有管理员用户可以添加新的师生交流内容,点击“添加”按钮,根据提示输入师生交流信息,点击“提交”按钮,新的师生交流信息就在系统中显示出来了,也可以对添加的师生交流信息进行删除。界面如下图4.8所示。

图4.8 师生交流界面图

通过前面章节的介绍,我们可以看到本学生信息管理系统已经完成了,但是能不能投入使用还是未知,因为在每个项目正式使用之前必须对开发的项目进行测试,如果不进行测试一旦投入使用可能会出现很多未可知的问题,比如使用人数太多导致系统瘫痪,比如某一功能存在bug信息填写错误等等,这些错误将给使用者带来很多的困扰,甚至造成更大的损失,因此测试是项目投入使用的最后一步,为用户提供一个运行顺畅、完美的项目也就是我们进行最后测试的目的。

    1. 系统部分测试

用户登录功能测试:

表5.1 用户登录功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

用户登录模块测试

用户登录成功的情况

点击前登录界面输入账号和密码分别输入admin和admin后点击“登录”按钮。

登录成功并调整到用户界面

正确

学生信息添加功能测试:

表5.2 学生信息添加功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

学生添加模块测试

学生添加成功的情况

在学生的页面中将点击添加,输入学生关信息,输入正确的信息后然后点击“提交”按钮。

提示添加成功

正确

学生添加模块测试

学生添加失败的情况

在学生页面中不填写的体温、健康码信息,其他信息正常输入“提交”按钮。

提示“添加失败,信息不能为空”

正确

查询打卡签到信息功能模块测试:

表5.3 查询打卡签到信息功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

查询打卡签到信息功能测试

查询成功的情况

在打卡签到界面输入班级名称或者学生姓名进行查询

查询成功

正确

师生交流信息添加功能测试:

表5.4 师生交流添加功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

师生交流添加模块测试

师生交流添加成功的情况

在师生交流的页面中将点击添加,输入课程相关信息,输入正确的信息后然后点击“提交”按钮。

提示添加成功

正确

师生交流添加模块测试

师生交流添加失败的情况

在师生交流页面中不填写的请假时间,其他信息正常输入“提交”按钮。

提示“添加失败,信息不能为空”

正确

    1. 系统测试结果

通过编写学生信息管理系统的测试用例,已经检测完毕用户的登录模块、学生信息添加模块、查询打卡签到模块、师生交流添加模块的功能测试,在对以上功能得测试过程中,发现了系统中的很多漏送并进行了完善,经过多人在线进行测试,系统完全可以正常运行,当然在后期的维护中系统将不断完善。

  • 6 章 结论

在开发本学生信息管理系统之前我胸有成竹,觉得很简单,但在实际的开发中我发现了自身的很多问题,许多编程思想和方法都还没有掌握牢靠,比如Bootsatrp、Jquery、AJAX 、Spring、SpringMVC、mybeatis等许多Java Web开发技术,通过开发这个学生信息管理系统我成长了很多,懂得了做什么事情都要脚踏实地,不能眼高手低,在本次学生信息管理系统的开发中我逐渐掌握逐渐熟悉的技术。

本次学生信息管理系统的开发中我还学会了例如良好的编程思想和完善的规划思想。在着手编程之前需要罗列出程序框架的大概,脑海中构建出程序的主题框架。做好这一步我们才能胸有成竹的经行开发项目。当设计框架了熟于心之后,需要思考本次编程所需的主要知识点和技术点,并充分学习。如此一来项目的开发才能循序渐进、如丝般顺滑,长久以往就能养成良好的开发习惯。一个程序好不好还要看出的bug多不多,如果在项目完成前做好bug的查验与预防可能发生的事故才能保证程序的稳定长久性运行。如果项目在完工后出现各种问题自己,那么在进入社会后,不仅会给公司团队带来麻烦和增加不必要的工作,还会导致客户流失,公司对自己的评价下降。

在本次项目中我也暴露了诸多问题。对于Java的编程知识有所欠缺,环境配置和算法上出现诸多问题,时常导致项目运行出错,或者目标的实现有问题。或者实现想法时算法未优化,使得代码冗长,程序运行不顺畅。

参考文献

  1. 杨一帆.服务于MySQL数据库的在线监测系统设计[J].自动化技术与应用,2022,41(10):179-182.
  2. 谢霜.基于Java技术的网络管理体系结构的应用[J].网络安全技术与应用,2022(10):14-15.

[3]王强.基于B/S架构的高校学生信息管理系统设计[J].电子技术与软件工程,2022(17):195-198.

[4]储宝龙.基于B/S结构的中职学校学生管理信息系统的设计[J].现代信息科技,2022,6(16):36-38+42.

[5]郑戟明,董云朝,柳青.MySQL数据库数据导入导出方法的探讨[J].电脑知识与技术,2022,18(22):24-25.

[6]杨迎.Java技术在嵌入式系统中的作用探讨[J].无线互联科技,2022,19(14):96-98.

[7]徐晓.基于Java技术的微信公众号自定义菜单的研究[J].电脑知识与技术,2022,18(21):111-112.DOI:10.14004/j.cnki.ckt.2022.1249.

[8]王莉莉.基于Web的学生信息管理系统设计与实现[J].信息记录材料,2022,23(07):154-158.

[9]童浩卓.基于Spring Cloud框架的分布式学生信息管理系统设计[J].信息技术与信息化,2022(04):69-72.

[10]Yang Mingfeng,Wang Jianying. The Security of Student Information Management System Based upon Blockchain[J]. Journal of Electrical and Computer Engineering,2022,2022.

[11]夏寅,吴郑红,陈群,金薇婕.上海市基础教育学生信息管理系统建设及应用实践[J].教育传播与技术,2022(02):74-78.

[12]金翠荣.学生信息管理系统开发与设计[J].电脑编程技巧与维护,2022(03):65-67.DOI:10.16184/j.cnki.comprg.2022.03.029.

[13]金晶. 一种基于计算机的学生信息管理系统[P]. 辽宁省:CN215117566U,2021-12-10.

[14]Feng Shuo,Zhan Ling,Zhao Hong. Construction and Realization of University Student Information Management System Based on Big Data Technology[J]. Journal of Physics: Conference Series,2021,1992(4).

[15]Yin XueHong. Construction of Student Information Management System Based on Data Mining and Clustering Algorithm[J]. COMPLEXITY,2021,2021.

[16]江金娜. 高校成人教育学生信息管理系统的分析与设计[D].广东工业大学,2019.DOI:10.27029/d.cnki.ggdgu.2019.000729.

[17]左丹. 高校学生信息管理系统需求分析和评价体系设计[C]//.人文学术:过程与方法.,2016:116-122.

致谢

至此论文结束,感谢您的阅读。在此我要特别的感谢我的导师,虽然我在实习期间很忙,论文撰写的时候经常是停停改改,但是我的导师依旧十分的负责,时不时的询问我的任务进展情况,跟进我的论文进度,在指导老师的帮助下,我逐步完成了自己的论文和程序,从导师身上也学习到很多知识和经验,这些知识和经验令我受益匪浅。同时我也从导师身上看到了自己的不足,不论是在技术层面上还是在对待工作的态度上,导师如同明镜一般照出了我的缺点我的不足。此外,我还要感谢在我实习期间在论文和程序上帮助过我的同学和社会人士,此前我对于SSM框架方面的一些知识还不了解,是他们在我编写程序过程中给了我很多的启发和感想,也帮助了我对于程序的调试和检测。没有他们我是不能顺利完成本次毕业设计的。至此,我的毕业设计就花上了一个圆满的句号了。

请关注点赞+私信博主,免费领取项目源码
 

Supongo que te gusta

Origin blog.csdn.net/ID3461074420/article/details/132686568
Recomendado
Clasificación