Design and implementation of performance analysis system under online and offline teaching modes
Summary
In the era of big data, data is growing explosively. In order to cater to the trend of the information age and the requirements of information security, using the Internet to serve other industries and promote production has become an irresistible trend. Under the requirements of the school's student performance analysis, an integrated structure of the performance analysis system under the online and offline teaching mode was developed. The complex system was split up to achieve rapid response to changes in demand and ensure system stability. Ensure the sustainable and large-scale development of the platform.
The technologies involved in the front-end interface of this system mainly include Java, HTML, JQUERY, etc. Through these technologies, the beautiful and dynamic effects of the front-end page can be achieved to make it conform to the aesthetics of the general public. The main technologies used in the backend mainly include the Java programming language. Mysql database, Java and AJAX asynchronous interaction, the performance analysis system in the online and offline teaching mode based on the AJAX asynchronous mode solves the waste of manpower, material resources and time and the limitation of communication depth caused by the traditional management method, which makes communication The process is faster, more accurate and more convenient, while completing the basic functions of the score analysis system in online and offline teaching modes: system homepage, personnel management (administrators, student users, teacher users) module management (course information, daily scores, final scores , comprehensive scores, class scores, score analysis).
Keywords: student performance analysis; monolithic structure; Java programming language; Mysql database
Design and Implementation of Performance Analysis System in Online and Offline Teaching Mode
Abstract
In the era of big data, data is growing explosively. In order to meet the trend of the information age and the requirements of information security, using the Internet to serve other industries and promote production has become an irresistible trend. In response to the requirements of school student performance analysis, develop a holistic structure of online and offline teaching mode performance analysis system, which can split complex systems, achieve rapid response to changes in demand, ensure system stability, and ensure the requirements of sustainable and standardized development of the platform.
The front-end interface of this system mainly involves technologies such as Java, HTML, and JQUERY. Through these technologies, the beauty and dynamic effects of the front-end page can be achieved to meet the aesthetic views of the general public. The main technologies used in the background include Java programming language, MySQL database, Java and AJAX asynchronous interaction. According to the AJAX asynchronous mode of online and offline teaching, the performance analysis system solves the human resources The depletion of material resources and time, as well as the limitation of the depth of communication, make the communication process faster, more accurate, and more convenient. At the same time, it completes the basic functions of the performance analysis system under the online and offline teaching mode: the system homepage, personnel management (administrator, student user, teacher user) module management (course information, daily performance, final performance, comprehensive performance, class performance, and performance analysis).
Key words: student performance analysis; Integral structure; Java programming language; MySQL database
Table of contents
1.1 Research background and significance
Chapter 2 Introduction to Development Tools and Related Technologies
2.1 Development technical description
3.3 System business process analysis
4.1 System architecture design
4.2 System functional structure
4.4.2 Logical structure design
4.4.3 Database connection design
Chapter 5 System Implementation
5.1 Implementation of login module
5.2 Implementation of school subsystem module
5.2.2 Student Management Module
5.2.3 Student performance management module
5.3 Implementation of the administrator subsystem module
5.3.1 System user management module
5.3.2 Score summary management module
5.3.3 Score summary analysis module
6.2.2 Course Information Management Test
6.2.3 Student-administered tests
With the rapid development of modern computer science and the application and promotion of information and communication technology, the teaching management models of various schools are undergoing tremendous changes. The education and practice of informatization and digitalization of school teaching management work are also receiving more and more attention. Students' course selection work is closely related to students' academic studies and teachers' teaching work, and is also an important part of information management in colleges and universities. The purpose of school-wide elective courses is to expand students' knowledge, strengthen students' quality education, and cultivate compound senior talents, which is of irreplaceable importance.
Today's society has increasingly higher requirements for education level and teaching management software and hardware, which puts forward more requirements for a school to have a complete set of teaching management software. To realize this function, school administrators are required to be equipped with an efficient education management network system so that they can implement a good set of complete management within the school and respond to the needs of teachers and students as quickly as possible, providing them with timely services. Provide services and provide them with an efficient and convenient environment. The performance analysis system under the online and offline teaching mode is an important application system in the campus network. It has greatly improved the basic environment of school teaching, scientific research and management, and reflects the modernization level of school management to a certain extent.
In our country, the performance analysis system under the online and offline teaching models of various schools is not a new topic, but there are still many places that do not have advanced equipment to develop such systems. For example, in poor mountainous areas, their current education model still remains In this state of manual work, if we want to develop the education industry to be more precise, better, and prioritized, we must use advanced technology to reduce costs. Therefore, it is inevitable for machines to replace humans. Only by scientifically using modern technology, corresponding artificial and The cost will be reduced. While these foreign technologies are already quite mature, our country's network technology has just begun, which makes our country's technology lag behind. Now more and more people are beginning to develop some systems to enable our country's technology to make breakthroughs. Therefore, it can be seen that with the rapid development of education in our country, the application of information technology will become more extensive and in-depth. However, compared with developed countries, the application level of information technology in my country's education industry is still very low. It is only in big cities. Computers are used for large-scale operations only in colleges and universities that developed earlier and are larger in scale.
Based on the information data obtained from market research, combined with domestic and foreign cutting-edge research, and using relevant system development and design methods, we finally designed a performance analysis system under the online and offline teaching mode.
This article has seven chapters in total, as shown below.
The first chapter outlines the research purpose and significance of the performance analysis system under online and offline teaching modes; it concisely summarizes the research status and future research trends in the field of warehousing at home and abroad, and finally gives the structure of the paper.
Chapter 2 provides a brief overview of the development techniques and tools used in this article.
Chapter 3 briefly conducts demand analysis and feasibility analysis on each business process of the system.
Chapter 4 designs the performance analysis system under online and offline teaching modes.
Chapter 5 implements the performance analysis system in online and offline teaching modes, posts screenshots of relevant pages, and describes in language the operating methods for implementing specific functions.
Chapter 6 uses test cases to test some main functional modules of the performance analysis system under online and offline teaching modes, and finally obtains the test results.
Chapter 7 summarizes the full text and makes an outlook for future research.
The front-end part of this system is developed based on the MVVM model, using the B/S mode, and the back-end part is developed based on the Java springboot framework.
Front-end part: The front-end framework uses the popular progressive JavaScript framework Vue.js. Use Vue-Router and Vuex to realize dynamic routing and global state management, Ajax to realize front-end and back-end communication, Element UI component library to quickly prototype the page, and the project front-end to achieve responsiveness through grid layout, which can be adapted to PC, tablet, mobile phone, etc. Perfect layout display for different screen sizes.
Back-end part: Use springboot as the development framework, and integrate MyBatis, Redis and other related technologies.
Now the Mysql database can support many users on the network, and can also adapt to the deployment or configuration of customer servers and servers. Our servers and clients here are actually a software concept, and the computer hardware we use is also There is no one-to-one correspondence with them.
Mysql is a very popular relational database management system. It has always been the leader. It is not only very powerful, but also very convenient to use. Mysql's cross-platform capabilities are also very good. Software developers like it very much. of these powerful advantages. Different from other relational databases, it has its own set of solutions for database management. Database management is achieved by setting corresponding permissions and roles for users. It can be seen that Mysql is a database management software suitable for high throughput, high reliability and high efficiency.
Advantage 1: Mysql sets different permissions for users with different identities to complete different business logic, which makes Mysql far beyond other relational databases in terms of security and integrity.
Advantage 2: Mysql can also support data types such as animations, graphics and sounds, which shows that Mysql can also support multiple data types.
Advantage three: Mysql can also be developed on multiple platforms, and multiple programming languages for software development can operate the Mysql database.
Tomcat is a free server. The usage scenario is more suitable when the number of visits is relatively small. This means that when Tomcat is installed on the computer, the access request of the front-end HTML page can be parsed through it. In fact, Tomcat is an extension of Apache, but it operates relatively independently from Apache. Therefore, it can be regarded as running as a relatively independent process from Apache.
Tomcat was originally developed and applied by Davidson of Sun Company. Through his efforts, it has been continuously turned into an open source server. It was also handed over to the Apache Software Foundation by Sun. The ever-evolving tomcat server has undergone a lot of reconstruction and combing in the latest version, making it more convenient to use. The Tomcat load balancing algorithm is an open source software implementation. There is no need to add additional hardware investment, and it is very convenient to implement. It is especially suitable for the expansion of general small business website servers now and in the future. Judging from current practice, it can be used as a reference for similar applications.
-
- Java description
Java is a platform computer language technology, which mainly includes two parts: JAVA Virtual Machine (Java Virtual Machine, JVM) and JAVA API (Application Program Interface, application interface programming).
I personally have a deep understanding of the two languages: C language is more of a creation tool, while Java is more of a usage tool. We know that many of the underlying implementations of Java are actually implemented in C language, so we can see this even more. In the process of using Java, we need to be able to use API documentation, which can be regarded as Java usage instructions. The object-oriented characteristics of Java allow it to have many encapsulated objects. When using it, we only need to know the behavior of the object (which is also the method of object encapsulation). Here we must pay attention to whether the method is a static method or a regular method, because when calling, there is a gap Very big. In the future, there will definitely be a programming language that is more user-friendly and easier to develop than Java, but it will definitely not be completely different from the Java language. As the saying goes, "You can use a stone from another mountain to attack a jade." Learning Java well can also make it easier for us to learn better. other languages.
System feasibility analysis is essential in the process of software development. Feasibility research is to evaluate whether the problem can be solved and to solve it in the least time and at the least cost. In order to achieve the above goals, it is also necessary to consider the advantages and disadvantages of the methods to solve these problems, and also consider the economic benefits brought by the development of these system scales. Here we can conduct feasibility studies on our system based on technical feasibility, operational feasibility, and economic feasibility. The feasibility analysis of the performance analysis system under the online and offline teaching mode is as follows:
The performance analysis system under the online and offline teaching mode uses the Java programming language combined with Java and SERVLET. The database part uses the currently popular Mysql database. All data resources in the performance analysis system under the online and offline teaching mode are stored In the Mysql database, this system uses AJAX asynchronous operations in many places. AJAX technology can partially refresh the data specified by the user, which not only reduces the server's parsing of the page but also greatly increases the user experience. The environment configuration of this system is also relatively simple, because the Myeclipse editor is used, and Myeclipse has its own Tomcat server and JDK environment, so we do not need to reconfigure it.
This system uses Java and Mysql to support transaction and data logic and uses H5 to display the front-end page.
Different components in HTML web pages are identified in the form of tags. The following is the basic composition layout of HTML:
Figure 3-1 Basic structure diagram of HTML
The performance analysis system under the online and offline teaching mode runs in the environment of Java and Mysql, and the cost of the system is mainly distributed in the development and maintenance of the software. But if the system is put online and put into use, it will not only facilitate people, but also save users' time and energy. It will also greatly facilitate operators and reduce their work intensity. The performance analysis system under the online and offline teaching mode is actually not too complicated. The economic expenditure during development is not large, and the time used in developing the system is not much. The advantages in terms of time and economic benefits far exceed The cost of maintenance and management makes it feasible and appropriate to develop this system.
This system is a performance analysis system in online and offline teaching modes based on browsers and servers. After the system is developed, users only need to enter the correct URL address in the browser to access it. The front page of this system is simple and clear, and can be operated without operating guidance. Whether it is the system administrator or the school user, all operations on the page are completed in the browser, so as long as the computer is connected to the Internet In this case, it can be operated by opening the browser. Moreover, there is no need to perform relevant environment configuration before use, so the system is convenient, simple, and easy to use, so the system is easy and operable.
According to the user's needs for the system, the system is required to be simple to operate and able to manage information accurately and completely. After analyzing the needs of the performance analysis system under the online and offline teaching mode, the entire system is mainly divided into two parts: administrators and users, and teachers. The branch functions under each module are different. The function is explained as follows:
Administrator module: Home page, personnel management (administrators, student users, teacher users) module management (course information, daily grades, final grades, comprehensive grades, class grades, grade analysis).
Student user module: Home page, module management (course information, usual grades, final grades, comprehensive grades, grade analysis).
Teacher module: Home page, personnel management (student users) module management (course information, daily grades, final grades, comprehensive grades, class grades, grade analysis).
The system use case diagram is shown below.
Figure 3-1 System use case diagram
Based on the use case diagram, describe some important use cases.
The login use case description is shown in the following table.
Table 3-1 Login use case description
Use case name |
Log in |
participants |
user |
describe |
User fills in username and password to log in to the system |
Preconditions |
User already exists |
postcondition |
Username and password are correct |
event stream |
(1) The user enters the username and password on the login page (2) The system detects the username and password entered by the user (3) Display successful login and return to the main page |
Additional information |
(a) The system checks that the password is incorrect and returns to the login page. |
Personal information management use case descriptions are shown in the following table.
Table 3-1 Personal information management use case description
Use case name |
Manage personal information |
participants |
user |
describe |
Users view and modify personal information |
Preconditions |
User is logged in |
postcondition |
none |
event stream |
(1) Users view personal information (2) Users modify personal information |
Additional information |
(a) Users can change passwords (b) Users can modify contact information |
The student grade entry use case description is shown in the following table.
Table 3-1 Student score entry use case description
Use case name |
Student score entry |
participants |
School |
describe |
The school performs student score entry operations |
Preconditions |
The school has logged in |
postcondition |
The student exists and can be entered into grades |
event stream |
(1) Click on the student whose grades you want to enter on the student page (2) Fill in student scores |
Additional information |
(a) The data in the student score entry form cannot be empty. |
The use case description of grade summary analysis is shown in the following table.
Table 3-1 Use case description of score summary analysis
Use case name |
Score summary analysis |
participants |
administrator |
describe |
The administrator performs performance summary analysis operations |
Preconditions |
Administrator is logged in |
postcondition |
The score summary exists and can be analyzed |
event stream |
(1) Click on the score summary to be analyzed on the score summary page (2) Fill in the performance summary analysis data |
Additional information |
(a) The data in the performance summary analysis form cannot be empty. |
The student use case description is shown in the table below.
Table 3-1 Student use case description
Use case name |
student management |
participants |
user |
describe |
Provides users with functions such as adding, modifying, deleting, and checking |
Preconditions |
|
postcondition |
none |
event stream |
(1) Users view and modify students (2)User adds students (3) User deletes students |
Additional information |
(a) If the newly added students do not meet the requirements, the addition will fail. (b) If the modified student does not meet the requirements, the modification will fail. |
The grade summary use case description is shown in the following table.
Table 3-1 Score summary use case description
Use case name |
Score summary management |
participants |
administrator |
describe |
Administrators provide functions such as adding, modifying, deleting, and reviewing |
Preconditions |
|
postcondition |
none |
event stream |
(1) Administrators view summary of modified results (2)Administrator adds score summary (3) The administrator deletes the score summary |
Additional information |
(a) If the newly added score summary does not meet the requirements, the addition will fail. (b) If the modified score summary does not meet the requirements, the modification will fail. |
The business process of the performance analysis system under the online and offline teaching mode is shown in the figure below.
Figure 3-3 System business flow chart
The administrator has the highest authority. After adding, deleting, and modifying various information, the content of the backend database will be updated. Users can log in to carry out homepage, personnel management (administrators, student users, teacher users) module management (course information, daily Instruction actions such as grades, final grades, comprehensive grades, class grades, grade analysis) will also update background data.
Different from the program flow chart that emphasizes control logic, it is more concerned with the specific flow of data in the entire system and the entire objective process of data processing, and is a description of data specifications. Because of this, system data flow diagram is very popular as an extremely important description tool in system structured analysis methods.
The top-level data flow of the performance analysis system in online and offline teaching modes is shown in the figure below.
Figure 3-4 System top-level data flow diagram
The top-level data flow of the system: the external entity is the user, the first process is login verification, the user information table returns the password verification, whether it is correct, if it is correct, log in to the system, if it is wrong, feedback information will be given. After logging in to the system, according to the function selection of different users, Read and write the database.
The underlying data flow of the system is shown in the figure below.
Figure 3-5 System underlying data flow diagram
The underlying data flow of the system: external entities are administrators, student users , and teacher users . Data flows from administrators, student users , and teacher users respectively flow to the system data process. Data tables provide data support to complete logical operations.
Since this system operates the database frequently in terms of logical transaction processing, the system does not use native JDBC when connecting to the database at the bottom layer. Instead, it encapsulates JDBC. After encapsulation, it is equivalent to a tool DBUTIL for connecting to the database. When used like this It will be more convenient and encapsulation in this way can also reduce the redundancy of code in the system. When we need to connect and use the database, we only need to call a method in this tool. Moreover, through encapsulation, the operations on the database can be made independent. When different types of databases need to be connected, only modifications are needed to achieve the purpose.
The DAO layer does not originally have this class. It is just a model concept in the MVC structure in Java, mainly some methods in it, and these methods are used to access the database. When we develop software in the DAO layer, we usually put the interface and the implementation class of the interface. We call it an interface to standardize the implementation class. The implementation class is mainly used to manipulate the database.
MVC is a key model for system development. M is the Model model. It is the core of the operation of key programs within the system and mainly performs various operations on the database. View View is V, also called a view. Its main function is to display some data. Controller Controller is a C implementation that reads data from the view layer of the View and then controls the user's input.
The system architecture is shown in the figure below.
图4-1系统架构图
进入系统后首先要进行登录,验证你的身份,赋予你不同的权限。当你成功登录后,页面会有多个板块,分别是首页、人员管理(管理员、学生用户、教师用户)模块管理(课程信息、平时成绩、最终成绩、综合成绩、班级成绩、成绩分析)。里面界面简单易懂,根据标示可以直接进行方便快捷的操作。
系统功能结构图如下所示。
图4-2系统功能结构图
管理员账户的基本信息管理。主要提供管理员账户的基本信息录入、删除、维护和查询等功能,包括:
管理员录入管理员账户基本信息;
管理员更新、增加及删除管理员账户基本信息;
用户根据管理员账户 ID 查询基本信息;
系统管理员更改个人密码;
学生成绩的基本信息管理。主要是提供学生成绩的基本信息录入、维护和查询功能,包括:
教师录入学生成绩基本信息;
教师更新、增加及删除学生成绩基本信息;
教师根据学生成绩 ID 查询学生成绩基本信息;
成绩汇总分析的基本信息管理。主要是提供成绩汇总分析的基本信息录入、维护和查询功能,包括:
管理员录入成绩汇总分析基本信息;
管理员更新、增加及删除成绩汇总分析基本信息;
管理员根据成绩汇总分析 ID 查询成绩汇总分析基本信息;
学生的基本信息管理。主要提供学生的基本信息录入、删除、维护和查询功能, 包括:
教师录入学生信息;
教师更新、增加学生基本信息;
教师根据学生 ID 查询学生基本信息;
成绩汇总的基本信息管理。主要提供成绩汇总的基本信息录入、删除、维护和查询功能, 包括:
管理员录入成绩汇总信息;
管理员更新、增加成绩汇总基本信息;
管理员根据成绩汇总ID 查询成绩汇总基本信息;
一个好的系统它的后台数据库一定要考虑的全面,这和我们建造房子一个概念,房子不是随心所欲建起来的,一切都是在合理设计的基础是实现的,地基打牢固了房子才能建的更高。数据库如果设计的很合理,而且每个方面都能考虑到了那么这个系统才能不会出现大的问题。
本系统在数据库中存放了多张表,分别是管理员表、学校表、学生表、成绩表、成绩汇总表、成绩分析表。
系统的主要实体间关系E-R图如下图所示。
图4-7系统E-R图
此环节把概念转变成数据。由于整个数据库所处理的信息过多,就只展示几个表。
表access_token (登陆访问时长)
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
token_id |
int |
10 |
0 |
N |
Y |
临时访问牌ID |
|
2 |
token |
varchar |
64 |
0 |
Y |
N |
临时访问牌 |
|
3 |
info |
text |
65535 |
0 |
Y |
N |
||
4 |
maxage |
int |
10 |
0 |
N |
N |
2 |
最大寿命:默认2小时 |
5 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
6 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
7 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户编号: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
auth_id |
int |
10 |
0 |
N |
Y |
授权ID: |
|
2 |
user_group |
varchar |
64 |
0 |
Y |
N |
用户组: |
|
3 |
mod_name |
varchar |
64 |
0 |
Y |
N |
模块名: |
|
4 |
table_name |
varchar |
64 |
0 |
Y |
N |
表名: |
|
5 |
page_title |
varchar |
255 |
0 |
Y |
N |
页面标题: |
|
6 |
path |
varchar |
255 |
0 |
Y |
N |
路由路径: |
|
7 |
position |
varchar |
32 |
0 |
Y |
N |
位置: |
|
8 |
mode |
varchar |
32 |
0 |
N |
N |
_blank |
跳转方式: |
9 |
add |
tinyint |
3 |
0 |
N |
N |
1 |
是否可增加: |
10 |
del |
tinyint |
3 |
0 |
N |
N |
1 |
是否可删除: |
11 |
set |
tinyint |
3 |
0 |
N |
N |
1 |
是否可修改: |
12 |
get |
tinyint |
3 |
0 |
N |
N |
1 |
是否可查看: |
13 |
field_add |
text |
65535 |
0 |
Y |
N |
添加字段: |
|
14 |
field_set |
text |
65535 |
0 |
Y |
N |
修改字段: |
|
15 |
field_get |
text |
65535 |
0 |
Y |
N |
查询字段: |
|
16 |
table_nav_name |
varchar |
500 |
0 |
Y |
N |
跨表导航名称: |
|
17 |
table_nav |
varchar |
500 |
0 |
Y |
N |
跨表导航: |
|
18 |
option |
text |
65535 |
0 |
Y |
N |
配置: |
|
19 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
20 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
表average_score_of_exam_class (考试课平时成绩)
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
average_score_of_exam_class_id |
int |
10 |
0 |
N |
Y |
考试课平时成绩ID |
|
2 |
teacher |
int |
10 |
0 |
Y |
N |
0 |
任课教师 |
3 |
academic_year_semester |
varchar |
64 |
0 |
Y |
N |
学年学期 |
|
4 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
5 |
course_category |
varchar |
64 |
0 |
Y |
N |
课程类别 |
|
6 |
credit |
varchar |
64 |
0 |
Y |
N |
学分 |
|
7 |
class_name |
varchar |
64 |
0 |
Y |
N |
班级名称 |
|
8 |
serial_number |
varchar |
64 |
0 |
N |
N |
序号 |
|
9 |
student |
int |
10 |
0 |
Y |
N |
0 |
学生 |
10 |
student_no |
varchar |
64 |
0 |
Y |
N |
学生学号 |
|
11 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
12 |
peacetime_performance |
varchar |
64 |
0 |
Y |
N |
平时成绩 |
|
13 |
proportion_in_peacetime |
varchar |
64 |
0 |
Y |
N |
平时占比 |
|
14 |
report_results |
varchar |
64 |
0 |
Y |
N |
汇报成绩 |
|
15 |
reporting_percentage |
varchar |
64 |
0 |
Y |
N |
汇报占比 |
|
16 |
design_score |
varchar |
64 |
0 |
Y |
N |
设计成绩 |
|
17 |
design_proportion |
varchar |
64 |
0 |
Y |
N |
设计占比 |
|
18 |
periodic_achievements |
varchar |
64 |
0 |
Y |
N |
阶段性成绩 |
|
19 |
periodic_proportion |
varchar |
64 |
0 |
Y |
N |
阶段性占比 |
|
20 |
final_peacetime_performance |
varchar |
64 |
0 |
Y |
N |
最终平时成绩 |
|
21 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
22 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
23 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
class_grade_id |
int |
10 |
0 |
N |
Y |
班级成绩ID |
|
2 |
teacher |
int |
10 |
0 |
Y |
N |
0 |
任课教师 |
3 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
4 |
class_name |
varchar |
64 |
0 |
Y |
N |
班级名称 |
|
5 |
total_class_size |
varchar |
64 |
0 |
Y |
N |
班级总人数 |
|
6 |
grade_segmentation |
varchar |
64 |
0 |
Y |
N |
成绩分段 |
|
7 |
number_of_segments |
int |
10 |
0 |
Y |
N |
0 |
分段人数 |
8 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
9 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
course_information_id |
int |
10 |
0 |
N |
Y |
课程信息ID |
|
2 |
course_no |
varchar |
64 |
0 |
Y |
N |
课程编号 |
|
3 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
4 |
cover |
varchar |
255 |
0 |
Y |
N |
封面 |
|
5 |
teacher |
int |
10 |
0 |
Y |
N |
0 |
任课教师 |
6 |
student |
int |
10 |
0 |
Y |
N |
0 |
学生 |
7 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
8 |
class_time |
varchar |
64 |
0 |
Y |
N |
上课时间 |
|
9 |
course_location |
varchar |
64 |
0 |
Y |
N |
上课地点 |
|
10 |
course_content |
text |
65535 |
0 |
Y |
N |
课程内容 |
|
11 |
course_requirements |
text |
65535 |
0 |
Y |
N |
课程要求 |
|
12 |
course_tasks |
text |
65535 |
0 |
Y |
N |
课程任务 |
|
13 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
14 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
15 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表final_score_of_examination_class (考查课最终成绩)
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
final_score_of_examination_class_id |
int |
10 |
0 |
N |
Y |
考查课最终成绩ID |
|
2 |
teacher |
int |
10 |
0 |
Y |
N |
0 |
任课教师 |
3 |
academic_year_semester |
varchar |
64 |
0 |
Y |
N |
学年学期 |
|
4 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
5 |
course_category |
varchar |
64 |
0 |
Y |
N |
课程类别 |
|
6 |
credit |
varchar |
64 |
0 |
Y |
N |
学分 |
|
7 |
class_name |
varchar |
64 |
0 |
Y |
N |
班级名称 |
|
8 |
student |
int |
10 |
0 |
Y |
N |
0 |
学生 |
9 |
student_id |
varchar |
64 |
0 |
Y |
N |
学生学号 |
|
10 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
11 |
attendance_score |
varchar |
64 |
0 |
Y |
N |
考勤成绩 |
|
12 |
attendance_ratio |
varchar |
64 |
0 |
Y |
N |
考勤占比 |
|
13 |
design_score |
varchar |
64 |
0 |
Y |
N |
设计成绩 |
|
14 |
design_proportion |
varchar |
64 |
0 |
Y |
N |
设计占比 |
|
15 |
report_results |
varchar |
64 |
0 |
Y |
N |
汇报成绩 |
|
16 |
reporting_percentage |
varchar |
64 |
0 |
Y |
N |
汇报占比 |
|
17 |
discussion_results |
varchar |
64 |
0 |
Y |
N |
讨论成绩 |
|
18 |
proportion_of_discussion |
varchar |
64 |
0 |
Y |
N |
讨论占比 |
|
19 |
assignments |
varchar |
64 |
0 |
Y |
N |
作业成绩 |
|
20 |
job_proportion |
varchar |
64 |
0 |
Y |
N |
作业占比 |
|
21 |
periodic_achievements |
varchar |
64 |
0 |
Y |
N |
阶段性成绩 |
|
22 |
periodic_proportion |
varchar |
64 |
0 |
Y |
N |
阶段性占比 |
|
23 |
final_score |
varchar |
64 |
0 |
Y |
N |
最终成绩 |
|
24 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
25 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
26 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
表final_score_of_exam_class (考试课最终成绩)
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
final_score_of_exam_class_id |
int |
10 |
0 |
N |
Y |
考试课最终成绩ID |
|
2 |
teacher |
int |
10 |
0 |
Y |
N |
0 |
任课教师 |
3 |
academic_year_semester |
varchar |
64 |
0 |
Y |
N |
学年学期 |
|
4 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
5 |
course_category |
varchar |
64 |
0 |
Y |
N |
课程类别 |
|
6 |
credit |
varchar |
64 |
0 |
Y |
N |
学分 |
|
7 |
class_name |
varchar |
64 |
0 |
Y |
N |
班级名称 |
|
8 |
student |
int |
10 |
0 |
Y |
N |
0 |
学生 |
9 |
student_no |
varchar |
64 |
0 |
Y |
N |
学生学号 |
|
10 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
11 |
peacetime_performance |
varchar |
64 |
0 |
Y |
N |
平时成绩 |
|
12 |
proportion_in_peacetime |
varchar |
64 |
0 |
Y |
N |
平时占比 |
|
13 |
final_exam |
varchar |
64 |
0 |
Y |
N |
期末成绩 |
|
14 |
percentage_at_the_end_of_the_period |
varchar |
64 |
0 |
Y |
N |
期末占比 |
|
15 |
comprehensive_score |
varchar |
64 |
0 |
Y |
N |
综合成绩 |
|
16 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
17 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
18 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
hits_id |
int |
10 |
0 |
N |
Y |
点赞ID: |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
点赞人: |
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
performance_analysis_id |
int |
10 |
0 |
N |
Y |
成绩分析ID |
|
2 |
teacher |
int |
10 |
0 |
Y |
N |
0 |
任课教师 |
3 |
assessment_items |
varchar |
64 |
0 |
Y |
N |
考核项目 |
|
4 |
result_of_examination |
varchar |
64 |
0 |
Y |
N |
考核成绩 |
|
5 |
student_no |
int |
10 |
0 |
Y |
N |
0 |
学生学号 |
6 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
7 |
class_ranking |
varchar |
64 |
0 |
Y |
N |
班级排名 |
|
8 |
performance_analysis |
text |
65535 |
0 |
Y |
N |
成绩分析 |
|
9 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
10 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
11 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
student_users_id |
int |
10 |
0 |
N |
Y |
学生用户ID |
|
2 |
student_no |
varchar |
64 |
0 |
N |
N |
学生学号 |
|
3 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
4 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通过 |
审核状态 |
5 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
6 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
7 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
teacher_user_id |
int |
10 |
0 |
N |
Y |
教师用户ID |
|
2 |
teacher_no |
varchar |
64 |
0 |
N |
N |
教师工号 |
|
3 |
teacher_name |
varchar |
64 |
0 |
Y |
N |
教师姓名 |
|
4 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通过 |
审核状态 |
5 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
6 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
7 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
upload_id |
int |
10 |
0 |
N |
Y |
上传ID |
|
2 |
name |
varchar |
64 |
0 |
Y |
N |
文件名 |
|
3 |
path |
varchar |
255 |
0 |
Y |
N |
访问路径 |
|
4 |
file |
varchar |
255 |
0 |
Y |
N |
文件路径 |
|
5 |
display |
varchar |
255 |
0 |
Y |
N |
显示顺序 |
|
6 |
father_id |
int |
10 |
0 |
Y |
N |
0 |
父级ID |
7 |
dir |
varchar |
255 |
0 |
Y |
N |
文件夹 |
|
8 |
type |
varchar |
32 |
0 |
Y |
N |
文件类型 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
user_id |
mediumint |
8 |
0 |
N |
Y |
用户ID:[0,8388607]用户获取其他与用户相关的数据 |
|
2 |
state |
smallint |
5 |
0 |
N |
N |
1 |
账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 |
user_group |
varchar |
32 |
0 |
Y |
N |
所在用户组:[0,32767]决定用户身份和权限 |
|
4 |
login_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
上次登录时间: |
5 |
phone |
varchar |
11 |
0 |
Y |
N |
手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 |
|
6 |
phone_state |
smallint |
5 |
0 |
N |
N |
0 |
手机认证:[0,1](0未认证|1审核中|2已认证) |
7 |
username |
varchar |
16 |
0 |
N |
N |
用户名:[0,16]用户登录时所用的账户名称 |
|
8 |
nickname |
varchar |
16 |
0 |
Y |
N |
昵称:[0,16] |
|
9 |
password |
varchar |
64 |
0 |
N |
N |
密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 |
|
10 |
|
varchar |
64 |
0 |
Y |
N |
邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 |
|
11 |
email_state |
smallint |
5 |
0 |
N |
N |
0 |
邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 |
avatar |
varchar |
255 |
0 |
Y |
N |
头像地址:[0,255] |
|
13 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
group_id |
mediumint |
8 |
0 |
N |
Y |
用户组ID:[0,8388607] |
|
2 |
display |
smallint |
5 |
0 |
N |
N |
100 |
显示顺序:[0,1000] |
3 |
name |
varchar |
16 |
0 |
N |
N |
名称:[0,16] |
|
4 |
description |
varchar |
255 |
0 |
Y |
N |
描述:[0,255]描述该用户组的特点或权限范围 |
|
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
来源表: |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
来源字段: |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
来源ID: |
8 |
register |
smallint |
5 |
0 |
Y |
N |
0 |
注册位置: |
9 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
-
-
- 数据库连接设计
-
该系统的数据库连接方法采用的是C3P0数据连接池的方法,C3P0是开源的JDBC连接池,jdbcURL是所创建的数据库,driverClass连接数据库驱动,user为用户名,password为用户密码,acquireIncrement当连接池中的连接耗尽的时候C3P0一次同时获取的连接数,initialPoolSize初始化连接池中的连接数,minPoolSize和maxPoolSize分别是连接池中保留的最小和最大的连接数。C3P0的特点在于有自动回收空闲连接的功能。
数据库连接池配置代码如下所示。
port: 5000
servlet:
context-path: /api
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/CS725260_20211101091736?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
jackson:
property-naming-strategy: CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES
default-property-inclusion: ALWAYS
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
- 系统实现
- 登录模块的实现
该登录模块利用js进行设计,JavaScript函数CheckSubmit()对输入框是否为空进行验证,使用js的技术结合Mysql 2012数据库的查询语句进行登录信息的验证。首先从文本框中分别获得账号user_name和密码user_pw,使用Sql语句“select * from t_user where user_name=‘”+user_name+“’ and user_pw=‘”+user_pw+“’”将查询结果赋给rs结果集,若rs.next()返回值为空,表示数据库找不到该用户数据,若rs.next()返回值不为空,则显示登录成功,进入主界面。
用户登录流程图如下所示。
图5-1用户登录流程
用户登录流程:用户只有输入正确的用户名和密码才会成功进入系统,用户输入用户名密码后点击登录按钮,系统会进行校验该用户名是否存在,如果用户名与密码不匹配或者用户名不存在,则返回主界面。
系统登录界面如下图所示。
图5-2系统登录界面
登录功能的逻辑代码如下所示。
* 登录
* @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;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.select(map, new HashMap<>()).getResultList();
}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.select(groupMap, new HashMap<>()).getResultList();
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();
String res = String.valueOf(service.runCountSql(sql).getSingleResult());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
-
- 学校子系统模块的实现
- 用户首页模块
- 学校子系统模块的实现
在浏览器的地址栏里输入http://localhost:8080/index.Java 地址,就可以跳转到线上线下教学模式下成绩分析系统的首页,首页是由4个页面组成的,包括top、left、down和center等页面,这里也是浏览者访问系统的入口,通过@ include引入。
首页载入流程图如下所示。
图5-3首页载入流程
首页载入流程:系统先连接数据库,显示界面参数初始化,读取数据库的数据表,读取html显示模板,对数据按添加时间排序,按照模板设计位置显示数据,刷新显示界面,断开数据库连接。
首页如下图所示。
图5-4首页界面
其中载入首页的主要代码如下。
@RequestMapping(value = {"/sum_group", "/sum"})
public Map<String, Object> sum(HttpServletRequest request) {
Query count = service.sum(service.readQuery(request), service.readConfig(request));
return success(count.getResultList());
}
学校提交学生后后台会自动生成学生列表。从session中取出该用户信息,前台发起请求,将对应的学校信息、xueshengpId参数信息从前台传递XueshengController类里,匹配到create()方法,create()方法调用XueshengServiceImpl类的createXuesheng()方法获取数据,调用本类的getCartXueshengItem()方法得到学生列表。
学生录入界面如下所示。
图5-5学生录入界面
-
-
- 学生成绩管理模块
-
学校录入学生后,学生在系统前台显示,学校浏览学生信息,包括学号、学生姓名、性别、身份证、电话、年级、照片、学校编号、学校名称、城市,选择相应的学生录入成绩,通过id传参,找到该学生,在add.Java提交成绩表单,生成成绩记录。
学生成绩录入流程如下图所示。
图5-6学生成绩录入流程
学生成绩录入界面如下图所示。
图5-7学生成绩录入界面
学生成绩的主要逻辑代码:
@RequestMapping(value = {"/count_group", "/count"})
public Map<String, Object> count(HttpServletRequest request) {
Query count = service.count(service.readQuery(request), service.readConfig(request));
return success(count.getResultList());
}
-
- 管理员子系统模块的实现
- 系统用户管理模块
- 管理员子系统模块的实现
管理员对系统用户的管理,在yhzhgl.Java实现管理员用户的管理,包括录入、删除、修改,修改密码通过SESSION获取用户名,然后输入新密码,提交到mod.Java中,使用sql命令更新密码。
管理员用户管理的界面如下图所示。
图5-8管理员用户管理界面
登录密码修改界面如下图所示。
图5-9登录密码修改界面
登录密码修改的逻辑代码如下。
* 修改密码
* @param data
* @param request
* @return
*/
@PostMapping("change_password")
public Map<String, Object> change_password(@RequestBody Map<String, String> data, HttpServletRequest request){
// 根据Token获取UserId
String token = request.getHeader("x-auth-token");
Integer userId = tokenGetUserId(token);
// 根据UserId和旧密码获取用户
Map<String, String> query = new HashMap<>();
String o_password = data.get("o_password");
query.put("user_id" ,String.valueOf(userId));
query.put("password" ,service.encryption(o_password));
Query ret = service.count(query, service.readConfig(request));
List list = ret.getResultList();
Object s = list.get(0);
int count = Integer.parseInt(list.get(0).toString());
if(count > 0){
// 修改密码
Map<String,Object> form = new HashMap<>();
form.put("password",service.encryption(data.get("password")));
service.update(query,service.readConfig(request),form);
return success(1);
}
return error(10000,"密码修改失败!");
}
-
-
- 成绩汇总管理模块
-
成绩汇总管理包括新增成绩汇总、删除成绩汇总、修改成绩汇总、查询成绩汇总等,以成绩汇总新增为例,在视图层请求成绩汇总信息新增,反馈后,调用业务逻辑层,通过业务逻辑层的接口调用底层的数据逻辑层完成数据库联动操作。
成绩汇总管理的流程如所示。
图5-10成绩汇总管理流程
成绩汇总添加的界面如所示。
图5-11成绩汇总添加界面
成绩汇总管理的界面如所示。
图5-12成绩汇总管理界面
成绩汇总信息添加的逻辑代码如下。
public Map<String, Object> getList(HttpServletRequest request) {
Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));
return success(map);
}
管理员发布成绩汇总后,成绩汇总在系统前台显示,浏览成绩汇总信息,包括活动类型、城市、年级、平均分,选择相应的成绩汇总分析,通过id传参,找到该成绩汇总,在chengjihuizongfenxi_add.Java提交分析表单,生成分析记录。
成绩汇总分析流程如下图所示。
图5-13成绩汇总分析流程
成绩汇总分析界面如下图所示。
图5-14成绩汇总分析界面
成绩汇总分析的主要逻辑代码:
@RequestMapping(value = {"/count_group", "/count"})
public Map<String, Object> count(HttpServletRequest request) {
Query count = service.count(service.readQuery(request), service.readConfig(request));
return success(count.getResultList());
}
在这个产品被投入使用前,首先需要进行试用,这是重要的环节。考虑到某个部分的开发没有缺陷情况下,把各种模块拼接,也有一定概率就存在矛盾。这就好比每个人都很独特,但聚在一起就显得杂乱无章,需要保证有默契的配合。对于测试,要看它的各项内容是否契合的原则。若与最初定下的标准有一定程度上的出入,那么就需要做出一些调整,让最终的大方向朝着目标前进。
登录测试用例如下表所示。
表6-1登录测试用例
输入 |
输出 |
|
用户名 |
密码 |
|
空 |
空 |
用户名和密码不能为空 |
Kkk |
aaa |
用户名长度不允许,请重新输入! |
2109402315 |
123456 |
用户名出错,请重新输入! |
sssss |
123456 |
用户名出错,请重新输入! |
-
-
- 课程信息管理测试
-
课程信息测试用例如下表所示。
表6-4添加课程信息测试用例
输入 |
输出 |
|||
标题 |
类别 |
内容 |
备注 |
|
空 |
空 |
空 |
空 |
添加失败 |
课程信息1 |
A |
1 |
添加成功 |
|
空 |
A |
1 |
添加失败,标题不能为空 |
|
课程信息2 |
空 |
1 |
添加失败,请选择类别 |
-
-
- 学生管理测试
-
学生测试用例如下表所示。
表6-4添加学生测试用例
输入 |
输出 |
|||
学号 |
姓名 |
性别 |
学校 |
|
空 |
空 |
空 |
空 |
添加失败 |
Js12345 |
学生1 |
男 |
清华小学 |
添加成功 |
空 |
学生1 |
男 |
清华小学 |
添加失败,学号不能为空 |
Js12345 |
学生1 |
男 |
空 |
添加失败,学校不能为空 |
-
-
- 学生成绩测试
-
学生成绩测试用例如下表所示。
表6-5学生成绩测试用例
输入 |
输出 |
|||
学号 |
学校 |
城市 |
成绩 |
|
空 |
空 |
空 |
空 |
添加失败 |
Js12345 |
清华小学 |
上海 |
80 |
添加成功 |
Js12345 |
清华小学 |
空 |
80 |
添加失败,城市不能为空 |
Js12345 |
清华小学 |
空 |
空 |
添加失败,成绩不能为空 |
经过测试,得到测试结果如下表所示。
表6-6测试结果
序号 |
测试项目 |
内容和目的 |
测试结果 |
|
用户登录 |
输入正确用户名与密码 |
可以登录 |
输入错误用户名与密码 |
提示错误的信息 |
||
|
学生管理 (添加,修改,删除) |
输入正确信息 |
成功完成 |
输入错误信息 |
操作失败 |
||
|
修改登录密码 |
修改新的密码 |
成功完成 |
|
学校管理 (添加,修改,删除) |
输入正确信息 |
成功完成 |
输入错误信息 |
操作失败 |
||
|
成绩管理 (添加,修改,删除) |
输入正确信息 |
成功完成 |
输入错误信息 |
操作失败 |
||
|
成绩汇总管理 (添加,修改,删除) |
输入正确信息 |
成功完成 |
输入错误信息 |
操作失败 |
||
|
成绩分析管理 (添加,修改,删除) |
输入正确信息 |
成功完成 |
输入错误信息 |
操作失败 |
本次毕业论文的主要是利用Javaweb+Mysql开发一个安全可靠,操作简易,同时具备业务可扩展的线上线下教学模式下成绩分析系统。本文详细的论述了线上线下教学模式下成绩分析系统的设计和开发,本系统的所有事务逻辑都是按照系统的需求分析进行设计的,系统有学校用户和系统管理员两种角色,本系统多处采用了AJAX的异步交互技术,同时它也叫异步交互技术,利用它我们可以让网页的局部进行数据刷新操作,AJAX和传统的数据更新技术大大增加了客户的体验程度,由于是对局部进行操作那么就减少了一些繁琐而又不必要的操作,减轻了服务器对页面解析的负担。
与其他系统相比,本系统有自身的优点,
例如:
(1)创新性强;
(2)业务逻辑性强,安全性高,在一些重要的功能模块需要通过审查之后才可使用;
(3)移植性高,在所有window平台都可使用。
当然也还有很多需要进一步改进的地方:
(1)系统大多数页面都是全局刷新,缺乏局部刷新,这将增加服务器的压力,如果有大量用户在同一时间段操作同一个功能模块,可能会导致查询缓慢;
(2)页面没有经过专业的UI设计,美观程度不及其他市场其他网站系统,有待改善。
参考文献
[1]余鹏翔,石军锋.基于SpringBoot框架的群养母猪饲喂站管理系统设计与试验[J].中国农机化学报,2023,44(03):149-155+241.DOI:10.13733/j.jcam.issn.2095-5553.2023.03.021.
[2]Pratap Singh Surya,Singh Jagbir,Pal Anuj. Application on Soil Bearing Capacity by Using SPT Values[J]. IOP Conference Series: Earth and Environmental Science,2023,1110(1).
[3]Maruti Endang Sri,Yulianto Bambang,Suhartono Suhartono,Yohanes Budinuryanta,Cahyono Bambang Eko Hari. Scale development as a measuring tool of critical Javanese language’ awareness for pre-service Javanese teachers[J]. Cogent Arts & Humanities,2022,9(1).
[4]仲浩.基于云平台的成绩管理系统的设计与实现[J].电子制作,2022,30(23):54-56+46.DOI:10.16589/j.cnki.cn11-3571/tn.2022.23.005.
[5]朱志慧,蔡洁.基于SpringBoot+Vue+Uni-app框架的校园失物招领系统[J].电子技术与软件工程,2022(17):62-65.
[6]施展,朱彦.基于Vue与SpringBoot框架的学生成绩分析和弱项辅助系统设计[J].信息技术与信息化,2022(08):127-131.
[7]宋旸.使用Java语言开发Web应用软件的知识探讨[J].中国设备工程,2022(14):121-123.
[8]张海越,范曦.浅析Java语言中线程的生命周期及实现方式[J].大众科技,2022,24(07):18-20+28.
[9]陈新府豪. 基于SpringBoot和Vue框架的创新方法推理系统的设计与实现[D].浙江理工大学,2022.DOI:10.27786/d.cnki.gzjlg.2022.000649.
[10]王曼维,杨荻,李岩,及松洁.基于SpringBoot框架的智慧医疗问诊系统设计与实现[J].中国医学装备,2022,19(03):133-136.
[11]熊柏祥.基于Springboot和Vue框架的考试资源服务平台的设计与实现[J].信息与电脑(理论版),2022,34(01):97-99+103.
[12]袁妍,李为洁.高校研究生成绩管理系统的档案数字化管理[J].文化产业,2021(32):50-52.
[13]李燕.基于B/S架构的体育竞赛成绩管理系统设计[J].微型电脑应用,2021,37(11):47-49+60.
[14]单树倩,任佳勋.基于SpringBoot和Vue框架的数据库原理网站设计与实现[J].电脑知识与技术,2021,17(30):40-41+50.DOI:10.14004/j.cnki.ckt.2021.2868.
[15]喻佳,吴丹新.基于SpringBoot的Web快速开发框架[J].电脑编程技巧与维护,2021(09):31-33.DOI:10.16184/j.cnki.comprg.2021.09.013.
[16]刘艺.Excel在无纸化考试成绩检索中的应用[J].科学技术创新,2021(12):116-117.
[17]陈平.大学物理实验成绩管理系统的设计与实现[J].科技与创新,2021(08):121-122.DOI:10.15913/j.cnki.kjycx.2021.08.047.
[18]Siyi Liu. Explore Java Language and Android Mobile Software Development[J]. International Journal of Frontiers in Engineering Technology,2021,3.0(2.0).
[19]王花. 基于语音交互的成绩管理系统设计与实现[D].重庆邮电大学,2021.DOI:10.27675/d.cnki.gcydx.2021.000516.
[20]Kevin Kline. The Java Language Extension for SQL Server Is Now Open Source[J]. Database Trends and Applications,2020,34(4).
致谢
经过几个月时间的努力终于完成了这篇文章,在文章的写作与研究的过程中遇到了很多困难,都在同学和老师的帮助下解决了。尤其非常感谢我最敬爱的老师,他对我进行了无私的指导和帮助,不厌其烦的帮助进行文章的修改。老师严谨的治学态度、渊博的学术知识、诲人不倦的敬业精神以及宽容的待人风范使我获益颇丰。此外,在校图书馆查找资料的时候,图书馆的老师也给我提供了很多方面的支持与帮助。在此,向帮助和指导过我的老师表示最衷心的感谢!感谢这篇文章所涉及到的各位学者。本文引用了数位学者的文献,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇文章的写作。感谢我的同学、朋友以及所在单位的同事,在我写文章的过程中给与了我很多素材和帮助,还在文章的撰写和排版过程中提供热情的帮助。同时,感谢我的室友对我的热心指导和帮助,经常有不懂之处都是大家在帮助我,才使得我比较顺利的完成了这篇文章。由于我水平有限,所写文章难免有不足之处,恳请各位老师和学友批评和指正!
请关注点赞+私信博主,免费领取项目源码