Recommended topics for computer graduation projects, SSM online course system 29230 (free source code database), tens of thousands of practical tutorials for step-by-step instruction on JAVA, PHP, node.js, C++, python, data visualization, etc.

SSM online course system

Summary

This paper mainly discusses how to use the SSM framework to develop an online course system. Work at each stage will be carried out in strict accordance with the software development process, using B/S architecture Java technology and object-oriented programming ideas for project development. In the introduction, the current background of the online course system and the purpose of system development will be discussed. Subsequent chapters will strictly follow the software development process to analyze and design the system at each stage.

The main users of the online course system are divided into administrators, teacher users and student users. The functions include: personal information, announcement management (carousel chart, announcement message), user management (administrator, teacher, student), information management ( Communication forum, forum classification, test exercises), course application, learning resources, material library, teaching courses, notepad, student files, student results, student works, homework information, homework correction, evaluation information, teacher community, help consultation and other functions .

The use of this system can realize the informatization of online course management, facilitate administrators and teacher users to conduct more convenient and faster management, and improve the learning efficiency of student users and the teaching management efficiency of teachers.

Keywords: online course system, SSM , Mysql 

SSM Network Course System

ABSTRACT

This paper mainly discusses how to develop a network course system using the SSM framework, strictly following the software development process for each stage of work, using B/S architecture Java technology and object-oriented programming ideas for project development. In the introduction, the current background of the online course system and the purpose of system development will be discussed. Subsequent chapters will strictly follow the software development process to analyze and design the system at each stage.

The main users of the online course system are divided into administrators, teacher users, and student users. The implementation functions include: personal information, announcement management (broadcast images, announcement messages), user management (administrators, teachers, students), information management (communication forums, forum classification, testing exercises), course applications, learning resources, material libraries, teaching courses, notebooks, student files, student grades, and student works, Functions such as homework information, homework correction, evaluation information, teacher community, and help consultation.

The use of this system can achieve the informatization of online course management, which can facilitate administrators and teacher users to manage more conveniently and quickly. It can improve the learning efficiency of student users and the teaching management efficiency of teachers.

Key words: online course system, SSM, MySQL

Table of contents

Summary

ABSTRACT

Chapter 1 Introduction

1.1 Background and significance

1.2 Development status

1.3 Contents of the study

Chapter 2 Related Technologies

2.1 Development technology

2.2 Introduction to SSM framework

2.3 MVVM pattern

2.4 B/S structure

2.5 MySQL database

2.6 Vue.js main functions

Chapter 3 System Analysis

3.1 Requirements analysis

3.2 System feasibility analysis

3.2.1 Technical feasibility

3.2.2 Economic feasibility

3.2.3 Operational feasibility

3.3 Project design goals and principles

3.4 System process analysis

3.4.1 Operation process

3.4.2 Add information process

3.4.3 Deletion of information process

Chapter 4 System Design

4.1 System architecture

4.2 Development process design

4.3 Database design principles

4.4 Data sheet

Chapter 5 System Detailed Design

5.1 Student function module

5.2 Teacher function module

5.5 Administrator function module

Chapter 6 System Testing

6.1 Purpose of system testing

6.2 System testing method

6.3 Functional testing

in conclusion

Thanks

references

Chapter 1 Introduction

1.1 Background and significance

Online teaching is different from the traditional learning methods in the past. It can meet students' personalized learning needs and provide students with a more free learning space. Students can learn according to the way they choose, continuously improve learning efficiency, and turn passive learning into active learning. accept. Especially in special times, online teaching plays an important role. Through online teaching, we provide students with rich learning resources and an information environment that cannot be matched by books. Since knowledge itself needs to be updated in real time, the knowledge of those who master it also needs to be updated in real time, making learning a continuous activity throughout life. In today's society, in order to adapt to the operation requirements of the market economy, people must adapt to the requirements of socialization of resources, marketization of allocation and value-of-use. "Innovative talents are capital" has become a basic concept. New knowledge and new technologies are very important in today's society. The diffusion speed in the environment is very fast, and rapid diffusion will inevitably lead to accelerated requirements for updating knowledge and technology, which in turn will prompt the creation of new things. Due to the accelerated update speed of knowledge and the shortened half-life, it is necessary to constantly supplement oneself with new knowledge and accept new information in order to keep up with the rapid development of society. Western scholars believe that modern education must train people's creativity. Able to adapt to the rapidly changing work environment, universities and educational institutions will provide flexible and diverse courses based on social needs, student requirements and local actual conditions. The online course system realizes this requirement.

1.2 Development status

Although our country now strongly supports the construction of online teaching, objectively speaking, the construction of online teaching in our country is still in its initial stage. It still lacks some theoretical guidance and unified deployment issues, resulting in the current situation of being comprehensive but not precise. There is still a big gap between my country's online teaching construction and foreign countries.

The state has invested huge amounts of money in the construction of information environment and online teaching in colleges and universities, and has achieved remarkable results. Existing online teaching and other digital learning resources, as well as the achievements of information environment construction in colleges and universities, provide a good material foundation for the research on this topic. However, the current sharing and application of excellent teaching resources is not sufficient, and the role of online teaching resources in improving teaching quality and school running efficiency is still far from people's expectations. Online teaching shared services and sustainable development are not only an important part of resource construction in the process of educational informatization, but their co-construction and sharing model can provide information for the development of national informatization, the construction of a lifelong education system based on the informatization environment, and the construction of a learning society. refer to.

1.3 Contents of the study

At present, many people still use traditional paper tools as the main tool for information management, and the application of network technology only plays a supporting role. In terms of awareness of network tools, more traditional office software is still the main tool used by people, while the relatively comprehensive and professional online course system is still not fully used due to various problems. This topic is designed to achieve personal information, announcement management (carousel pictures, announcement messages), user management (administrators, teachers, students), information management (communication forums, forum classifications, test exercises) through tag classification management and other methods. ), course application, learning resources, material library, teaching courses, notepad, student files, student results, student works, homework information, homework correction, evaluation information, teacher community, help consultation and other system functions,In order to achieve the goal of improving students' learning efficiency and teachers' teaching efficiency .

Chapter 2 Related Technologies

2.1 Development Technology

The front-end part of this system is developed based on the MVVM model, using B/S mode, and the back-end part is developed based on Java's SSM 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 SSM as the development framework, and integrate MyBatis, Redis and other related technologies.

2.2 Introduction to SSM framework

The SSM (Spring+SpringMVC+MyBatis) framework set is integrated by the two open source frameworks Spring and MyBatis (SpringMVC is part of Spring). It is often used as a framework for web projects with relatively simple data sources.

1.6.1 Spring

Spring is like a big factory that assembles beans in the entire project. In the configuration file, you can specify the use of specific parameters to call the constructor method of the entity class to instantiate the object. It can also be called the glue in the project.

The core idea of ​​Spring is IoC (Inversion of Control), which means that programmers no longer need to explicitly `new` an object, but let the Spring framework do it all for you.

1.6.2 SpringMVC

SpringMVC intercepts user requests in the project. Its core Servlet, DispatcherServlet, assumes the responsibility of intermediary or front desk, and matches user requests through HandlerMapping to the Controller. The Controller is the specific operation performed in response to the request. SpringMVC is equivalent to struts in the SSH framework.

1.6.3 Mybot

Mybatis is an encapsulation of jdbc, which makes the underlying operations of the database transparent. The operations of mybatis are centered around a sqlSessionFactory instance. Mybatis is associated to the Mapper file of each entity class through the configuration file. The Mapper file is configured with the SQL statement mapping required for each class to the database. Every time you interact with the database, get a sqlSession through sqlSessionFactory, and then execute the sql command.

The page sends a request to the controller, the controller calls the business layer processing logic, the logic layer sends a request to the persistence layer, the persistence layer interacts with the database, and then returns the result to the business layer, the business layer sends the processing logic to the controller, and the controller then Call the view to display the data.

2.3 MVVM pattern

MVVM is the abbreviation of Model-View-ViewModel. It is essentially an improved version of MVC. MVVM abstracts the state and behavior of the View, allowing us to separate the view UI and business logic. Of course, ViewModel has already done these things for us. It can take out the data of the Model and help handle the business logic involved in the View due to the need to display content. Microsoft's WPF brings new technical experiences, such as Silverlight, audio , video , 3D , animation ..., which results in the software UI layer being more detailed and customizable. At the same time, at the technical level, WPF also brings new features such as Binding, Dependency Property, Routed Events, Command, DataTemplate, ControlTemplate and so on. The origin of the MVVM (Model-View-ViewModel) framework is a new architectural framework that evolved from the application method of combining the MVP (Model-View-Presenter) pattern with WPF . It is based on the original MVP framework and incorporates the new features of WPF to cope with the increasingly complex needs of users.

2.4 B/S structure

B/S (Browser/Server) is a more trouble-free architecture than its predecessor. It uses Web server to complete data transmission and exchange. You only need to download the browser as the client, and then the work will be "downsized", and there is no need to consider the problem of constantly installing software [9].

2. 5 MySQL database

The language of Mysql is unstructured and users can work on the data. MySQL has attracted much attention because of its speed, reliability and adaptability. Most people agree that MySQL is the best choice for managing content without transactional processing. And because Mysql's language and structure are relatively simple, but its functions and amount of stored information are very powerful, it has been widely used.

The role of Mysql database in the programming process is very extensive, bringing convenience to users for data query. The application of Mysql database is highly flexible and powerful, so only a small piece of code is needed to implement a certain function, unlike other programs that require writing large pieces of code. Generally speaking, the language of Mysql database is relatively simpler.

Data process analysis is primarily a repository of data storage, which is performed on a computer rather than a real-life repository. Data is stored in a fixed format, not in an unordered manner. The definition is: it has a fixed format for a long time and can be stored in a shared computer memory. Database management mainly includes data storage, modification and addition, and the establishment of data tables. In order to ensure the normal operation of system data, some capable processors can manage it without requiring professional people to handle it. The establishment of the data table can adjust the data in the data table, recombine and reconstruct the data to ensure the security of the data. Due to the powerful functions of the database, the development of this system mainly uses Mysql for data management.

2.6 Vue.js main functions

Vue.js is a progressive framework for building user interfaces. Unlike other heavyweight frameworks, Vue adopts a bottom-up incremental development design. Vue's core library only focuses on the view layer, and is very easy to learn and integrate with other libraries or existing projects. Vue, on the other hand, is fully capable of driving complex single-page applications developed using single-file components and libraries supported by the Vue ecosystem.

The goal of Vue.js is to implement responsive data binding and composed view components through the simplest possible API.

Vue.js itself is not a full-featured framework - it only focuses on the view layer. Therefore it is very easy to learn and very easy to integrate with other libraries or existing projects. On the other hand, Vue.js can also power complex single-page applications when used with related tools and supporting libraries.

Chapter 3 System Analysis

3.1 Requirements analysis

The online course system is mainly to achieve the goals of improving student learning efficiency and teacher teaching efficiency, better storing all data information and providing fast and convenient retrieval functions. Each module of the system is determined through a reasonable analysis of many of today's developed systems. Considering the user's operability, following the principles of system optimization developed, after comprehensive investigation and research.

Before any project is developed and researched, it is necessary to conduct a careful analysis of the needs of the R&D system itself. Market research cannot be ignored. The functional needs of users must be determined from actual scenarios to clarify goals and develop the entire system. There is a more accurate positioning. In this chapter, it is necessary to analyze the system's performance analysis, business process analysis, and data. The overall interface of the online course system is simple and has complete functions.

The feasibility of requirements is the analysis and discussion of what requirements a developed system can achieve. Whether the developed system or website meets the previous requirements. Only in pre-assessment of system development can requirements be completed before system development and implementation. During the development and application of the system, detailed descriptions of technical feasibility, operational feasibility, economic feasibility and legal feasibility proved that these points are feasible.

Analysis of the functions to be achieved by the system. For the convenient management of the current network, the system should realize that users can directly view all data information on the platform, and can add, delete or modify online course system information online according to needs, which can save time and There is no need to waste time in the traditional way and it is difficult to meet the various needs of users. Therefore, the development of online course systems can not only meet the needs of users, but also reduce the original unnecessary workload and greatly improve the work efficiency of administrators.

3.2 System feasibility analysis

3.2.1Technical feasibility     

This system is developed in the Windows operating system, and the current performance of the PC is already capable of serving as a web server for ordinary websites. The technology used in system development is also owned by itself, and it is also one of the widely used technologies today.

The development environment and configuration of the system can be installed by yourself. The system uses SSM development tools and the relatively mature Mysql database to interact with the system's front-end and back-end data. The database is modified and maintained according to technical language and combined with needs, which can make the website The operation is more stable and secure, thereby completing the development of the website.

(1) Hardware feasibility analysis

The design of system management and information analysis does not have any rigid requirements for the computer used. As long as the computer can be used normally for code writing and page design, it is feasible. The main requirements are for the server. The server to be uploaded after the platform is built is If there are certain requirements, the server must be chosen with relatively high security, and then opening the website must be smooth and cannot be paused for too long; it must be cost-effective and secure.

(2) Software feasibility analysis

The entire system is developed using cloud computing. The advantages of cloud computing are the scalability of traffic and intelligent adjustment based on traffic, ensuring system security and timely backup of data information.

Therefore, we conducted a feasibility study from two aspects and it can be seen that there is no problem in the development of the system.

3.2.2 Economic feasibility

The market research and other related management systems conducted before the development of the online course system are free of charge. They are all through the developers' own efforts. All the work is done by themselves. When encountering problems that are difficult to solve by themselves, , most of the relevant information is solved with the help of classmates and instructors, so the development of online course systems is completely economically feasible without any expenses.

Using relatively mature technology, the system is developed based on SSM and uses Mysql database. Therefore, the system does not require high human and financial resources to develop and is economically feasible.

3.2.3 Operational feasibility 

Operability mainly refers to the user experience after the design of the online course system is completed, and the administrator can manage relevant data information at any time through the system, and it can be simple and clear for the three roles of administrator, student user, and teacher user. Enter your own system interface, and you can operate the function modules simply and clearly through the interface navigation menu, which is convenient for user information operation needs and administrators to manage data information. For system operations, no professional is required to directly operate the function modules. management, so the operability of the system is entirely possible. The operation process of this system also uses the interface window to log in, so as long as the operator knows simple computer operations, it is completely fine.

3.3 Project design goals and principles

1. Basic requirements for online course systems

(1) Functional requirements: Can manage personal information, announcement management (carousel images, announcement messages), user management (administrators, teachers, students), information management (communication forum, forum classification, test exercises), course application, learning Resources, material library, teaching courses, notepads, student files, student results, student works, homework information, homework correction, evaluation information, teacher community, help consultation and other functional modules.

(2) Performance: It can be used on different operating systems without errors, so that different types of users can perform expected operations without errors and conveniently after logging into the corresponding interface.

(3) Security and confidentiality requirements: Users must pass the administrator's review before they can enter the system.

(4) Environmental requirements: Supports the use of multiple operating systems such as Windows series and Vista systems.

2. Development goals

The main development goals of the online course system are as follows:

(1) Realize the systematization, standardization and automation of management system information relationships;

(2) Reduce the workload of maintenance personnel and enable users to control and manage information;

(3) Convenient to query information and manage information, etc.;

(4) Through network operation, improve the efficiency of problem solving and operation of students' work;

(5) Considering the diversity of users, the interface and operation are required to be simple and easy to understand.

3. Design principles

This system uses SSM technology and Mysql database development to fully ensure system stability and integrity.

The design ideas for the design and implementation of the online course system are as follows:

  1. The operation is simple and convenient, the system interface is safe and good, the page layout is simple and clear, and it is convenient to query information related to the online repair management of smart university office equipment.

2. Instant visibility: Query and processing of online course system information will be immediately available, thus realizing the system function of “instant release and immediate effect”.

3. Complete functions: can manage personal information, announcement management (carousel pictures, announcement messages), user management (administrators, teachers, students), information management (communication forum, forum classification, test exercises), course application, Modification and maintenance operations of learning resources, material library, teaching courses, notepads, student files, student results, student works, homework information, homework corrections, evaluation information, teacher community, help consultation and other modules.

3.4 System process analysis

3.4.1 Operation process

System login flow chart, as shown in the figure:

Figure 3-1 Login flow chart

3.4.2 Add information process

Add an information flow diagram, as shown in the figure:

Figure 3-2 Add information flow chart

3.4.3 Deletion of information process

Delete information flow chart, as shown in the figure:

Figure 3-3 Deletion information flow chart

Chapter 4 System Design

4. 1 System architecture

The structure of the online course system is shown in Figure 4-1:

Figure 4-1 System structure

Login system structure diagram, as shown in Figure 4-2:

Figure 4-2 Login structure diagram

The system functional structure diagram is shown in Figure 4-3.

Figure 4-3 System functional structure diagram

4. 2 Development process design

The analysis of system process is to adjust and organize the system design plan by investigating the identification, feasibility, operability, system analysis and processing capabilities of the problems involved in the system to ensure that the system can reach the ideal state. These operations require a series of process tests focusing on registration and login to ensure the integrity of the database, thereby controlling the security of information management involved in the system and ensuring the normal conversion of information input and output. Then, complete the drawing work of the flow chart through practical operations.

The development of the online course system involves analyzing the management module and the database used by the system, writing code, and testing the system, as shown in Figure 4-4.

Figure 4-4 Development system flow chart

4.3 Database design principles

When learning programming, we all know that database design is based on the system functions that need to be designed. We need to establish a database relational model to store data information, so that when we are in the program, there is no need to add data to the program page, thereby improving the system s efficiency. The database stores a lot of information and can be said to be the core and foundation of the information management system. The database also provides the system with operation modules such as adding, deleting, modifying, and checking, so that the system can quickly find the information it wants instead of in the program code. found in. Each part of the information table in the database is accurately combined, arranged and combined into a data table according to certain relationships.

Planning through the functions of the online course system is divided into several entity information. The entity information will be explained through the ER diagram. The main entity diagrams of this system are as follows:

(1)   User information use case diagram, as shown in Figure 4-3:

Figure 4-3 User use case diagram

Figure 4-3 Administrator use case diagram

Figure 4-4 System ER diagram

4. 4 Data sheet

Convert ER diagram of database conceptual design into relational database. In a relational database, data relationships are composed of data tables, but the structure of the table is represented by the fields of the table.

Table access_token (login access duration)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

token_id

int

10

0

N

Y

Temporary access badge ID

2

token

varchar

64

0

Y

N

temporary access badge

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

Maximum lifespan: Default 2 hours

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

7

user_id

int

10

0

N

N

0

user ID:

Table auth (user rights management)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

auth_id

int

10

0

N

Y

Authorization ID:

2

user_group

varchar

64

0

Y

N

user group:

3

mod_name

varchar

64

0

Y

N

Module name:

4

table_name

varchar

64

0

Y

N

Table Name:

5

page_title

varchar

255

0

Y

N

page title:

6

path

varchar

255

0

Y

N

Routing path:

7

position

varchar

32

0

Y

N

Location:

8

mode

varchar

32

0

N

N

_blank

Jump method:

9

add

tinyint

3

0

N

N

1

Is it possible to add:

10

of the

tinyint

3

0

N

N

1

Can it be deleted:

11

set

tinyint

3

0

N

N

1

Whether it can be modified:

12

get

tinyint

3

0

N

N

1

Is it possible to view:

13

field_add

text

65535

0

Y

N

Add fields:

14

field_set

text

65535

0

Y

N

Modify fields:

15

field_get

text

65535

0

Y

N

Query fields:

16

table_nav_name

varchar

500

0

Y

N

Cross-table navigation name:

17

table_nav

varchar

500

0

Y

N

Cross-table navigation:

18

option

text

65535

0

Y

N

Configuration:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

table collect (collection)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

collect_id

int

10

0

N

Y

Collection ID:

2

user_id

int

10

0

N

N

0

Collector ID:

3

source_table

varchar

255

0

Y

N

Source table:

4

source_field

varchar

255

0

Y

N

Source field:

5

source_id

int

10

0

N

N

0

Source ID:

6

title

varchar

255

0

Y

N

title:

7

img

varchar

255

0

Y

N

Cover:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

Table comment (comment)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

comment_id

int

10

0

N

Y

Comment ID:

2

user_id

int

10

0

N

N

0

Commenter ID:

3

reply_to_id

int

10

0

N

N

0

Reply comment ID: empty is 0

4

content

longtext

2147483647

0

Y

N

content:

5

nickname

varchar

255

0

Y

N

Nick name:

6

avatar

varchar

255

0

Y

N

Avatar address: [0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

9

source_table

varchar

255

0

Y

N

Source table:

10

source_field

varchar

255

0

Y

N

Source field:

11

source_id

int

10

0

N

N

0

Source ID:

Table course_application (course application)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

course_application_id

int

10

0

N

Y

Course application ID

2

course_name

varchar

64

0

Y

N

Course Title

3

type

varchar

64

0

Y

N

type

4

class_name

varchar

64

0

Y

N

class name

5

class_hours

varchar

64

0

Y

N

class time

6

total_class_hours

varchar

64

0

Y

N

Total class hours

7

teacher_id

int

10

0

Y

N

0

Teacher number

8

teacher_name

varchar

64

0

Y

N

Teacher name

9

class_hour_plan

varchar

64

0

Y

N

Lesson plan

10

content_introduction

text

65535

0

Y

N

Introduction

11

learning_method

text

65535

0

Y

N

study method

12

assessment_requirements

text

65535

0

Y

N

Assessment requirements

13

performance_evaluation

text

65535

0

Y

N

Performance evaluation

14

examine_state

varchar

16

0

N

N

Not reviewed

Approval Status

15

examine_reply

varchar

16

0

Y

N

moderation reply

16

recommend

int

10

0

N

N

0

Intelligent Recommendation

17

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

creation time

18

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time

Table evaluation_information (evaluation information)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

evaluation_information_id

int

10

0

N

Y

Evaluation information ID

2

student_no

int

10

0

Y

N

0

student number

3

full_name

varchar

64

0

Y

N

Name

4

teacher_no

int

10

0

Y

N

0

Teacher number

5

teacher_name

varchar

64

0

Y

N

Teacher name

6

evaluation_time

date

10

0

Y

N

Evaluation time

7

comprehensive_evaluation

varchar

64

0

Y

N

Overview

8

evaluation_content

text

65535

0

Y

N

comment content

9

recommend

int

10

0

N

N

0

Intelligent Recommendation

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

creation time

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time

Table exam (exam)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

exam_id

mediumint

8

0

N

Y

exam id

2

name

varchar

32

0

N

N

Exam name: [2,32]

3

duration

int

10

0

Y

N

Answer time

4

score

double

9

2

Y

N

total score

5

status

varchar

10

0

Y

N

Status: enabled, disabled

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

Table exam_question (exam question)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

exam_question_id

mediumint

8

0

N

Y

2

type

varchar

20

0

Y

N

type

3

title

varchar

255

0

Y

N

topic

4

question_item

varchar

500

0

Y

N

Options

5

answer

varchar

500

0

Y

N

Reference answer

6

score

double

9

2

Y

N

total score

7

question_order

int

10

0

Y

N

sort

8

exam_id

mediumint

7

0

Y

N

The test paper

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

table forum (forum)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

forum_id

mediumint

8

0

N

Y

Forum id

2

display

smallint

5

0

N

N

100

sort

3

user_id

mediumint

8

0

N

N

0

User ID

4

nickname

varchar

16

0

Y

N

Nickname: [0,16]

5

praise_len

int

10

0

Y

N

0

Number of likes

6

hits

int

10

0

N

N

0

Number of visits

7

title

varchar

125

0

N

N

title

8

keywords

varchar

125

0

Y

N

Key words

9

description

varchar

255

0

Y

N

describe

10

url

varchar

255

0

Y

N

Source address

11

tag

varchar

255

0

Y

N

Label

12

img

text

65535

0

Y

N

cover picture

13

content

longtext

2147483647

0

Y

N

text

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

16

avatar

varchar

255

0

Y

N

Poster's avatar:

17

type

varchar

64

0

N

N

0

Forum classification: [0,1000] is used to search for forum posts of specified types

Table forum_type (forum classification)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

type_id

smallint

5

0

N

Y

Category ID: [0,10000]

2

name

varchar

16

0

N

N

Category name: [2,16]

3

description

varchar

255

0

Y

N

Description: [0,255] describes the role of this classification

4

url

varchar

255

0

Y

N

External link address: [0,255] If this category jumps to other websites, set it on the URL

5

father_id

smallint

5

0

N

N

0

Parent category ID: [0,32767]

6

icon

varchar

255

0

Y

N

Category icon:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

Table help_consultation (help consultation)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

help_consultation_id

int

10

0

N

Y

Help consultation ID

2

title

varchar

64

0

Y

N

title

3

teacher_no

int

10

0

Y

N

0

Teacher number

4

teacher_name

varchar

64

0

Y

N

Teacher name

5

release_time

date

10

0

Y

N

release time

6

detailed_description

text

65535

0

Y

N

Detailed description

7

examine_state

varchar

16

0

N

N

Not reviewed

Approval Status

8

examine_reply

varchar

16

0

Y

N

moderation reply

9

recommend

int

10

0

N

N

0

Intelligent Recommendation

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

creation time

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time

Table hits (user clicks)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

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:

表homework_correction (作业批改)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

homework_correction_id

int

10

0

N

Y

作业批改ID

2

section_number

varchar

64

0

Y

N

章节编号

3

title

varchar

64

0

Y

N

标题

4

chapter_introduction

varchar

64

0

Y

N

章节简介

5

course_type

varchar

64

0

Y

N

课程类型

6

courses

varchar

64

0

Y

N

所属课程

7

teacher_no

int

10

0

Y

N

0

教师编号

8

student_no

int

10

0

Y

N

0

学生编号

9

full_name

varchar

64

0

Y

N

姓名

10

correction_time

date

10

0

Y

N

批改时间

11

correction_details

text

65535

0

Y

N

批改详情

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表job_information (作业信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

job_information_id

int

10

0

N

Y

作业信息ID

2

section_number

varchar

64

0

Y

N

章节编号

3

title

varchar

64

0

Y

N

标题

4

chapter_introduction

varchar

64

0

Y

N

章节简介

5

course_type

varchar

64

0

Y

N

课程类型

6

courses

varchar

64

0

Y

N

所属课程

7

teacher_no

int

10

0

Y

N

0

教师编号

8

student_no

int

10

0

Y

N

0

学生编号

9

full_name

varchar

64

0

Y

N

姓名

10

submission_time

date

10

0

Y

N

提交时间

11

job_attachments

varchar

255

0

Y

N

作业附件

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表learning_resource (学习资源)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

learning_resource_id

int

10

0

N

Y

学习资源ID

2

chapter_name

varchar

64

0

Y

N

章节名称

3

topic_name

varchar

64

0

Y

N

专题名称

4

cover

varchar

255

0

Y

N

封面

5

courses

varchar

64

0

Y

N

所属课程

6

resource_type

varchar

64

0

Y

N

资源类型

7

publisher

int

10

0

Y

N

0

发布人

8

release_time

date

10

0

Y

N

发布时间

9

related_resources

varchar

255

0

Y

N

相关资源

10

content_introduction

text

65535

0

Y

N

内容介绍

11

hits

int

10

0

N

N

0

点击数

12

praise_len

int

10

0

N

N

0

点赞数

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

更新时间

表material_library (素材库)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

material_library_id

int

10

0

N

Y

素材库ID

2

material_name

varchar

64

0

Y

N

素材名称

3

material_type

varchar

64

0

Y

N

素材类型

4

material_function

varchar

64

0

Y

N

素材功能

5

material_upload

varchar

255

0

Y

N

素材上传

6

related_introduction

text

65535

0

Y

N

相关介绍

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notepad (记事本)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notepad_id

int

10

0

N

Y

记事本ID

2

title

varchar

64

0

Y

N

标题

3

student_no

int

10

0

Y

N

0

学生编号

4

full_name

varchar

64

0

Y

N

姓名

5

recording_time

date

10

0

Y

N

记录时间

6

record_content

text

65535

0

Y

N

记录内容

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_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:

8

status

bit

1

0

N

N

1

点赞状态:1为点赞,0已取消

表self_evaluation (自我评价)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

self_evaluation_id

int

10

0

N

Y

自我评价ID

2

student_no

int

10

0

Y

N

0

学生编号

3

full_name

varchar

64

0

Y

N

姓名

4

title

varchar

64

0

Y

N

标题

5

evaluation_time

date

10

0

Y

N

评价时间

6

evaluation_content

text

65535

0

Y

N

评价内容

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

slides_id

int

10

0

N

Y

轮播图ID:

2

title

varchar

64

0

Y

N

标题:

3

content

varchar

255

0

Y

N

内容:

4

url

varchar

255

0

Y

N

链接:

5

img

varchar

255

0

Y

N

轮播图:

6

hits

int

10

0

N

N

0

点击量:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表student (学生)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_id

int

10

0

N

Y

学生ID

2

student_no

varchar

64

0

N

N

学生编号

3

full_name

varchar

64

0

Y

N

姓名

4

gender

varchar

64

0

Y

N

性别

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

recommend

int

10

0

N

N

0

智能推荐

7

user_id

int

10

0

N

N

0

用户ID

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表student_achievements (学生成绩)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_achievements_id

int

10

0

N

Y

学生成绩ID

2

student_no

int

10

0

Y

N

0

学生编号

3

full_name

varchar

64

0

Y

N

姓名

4

teacher_no

int

10

0

Y

N

0

教师编号

5

teacher_name

varchar

64

0

Y

N

教师姓名

6

title

varchar

64

0

Y

N

标题

7

course_name

varchar

64

0

Y

N

课程名称

8

release_time

date

10

0

Y

N

发布时间

9

academic_record

int

10

0

Y

N

0

学习成绩

10

recommend

int

10

0

N

N

0

智能推荐

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表student_files (学生档案)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_files_id

int

10

0

N

Y

学生档案ID

2

student_no

int

10

0

Y

N

0

学生编号

3

full_name

varchar

64

0

Y

N

姓名

4

gender

varchar

64

0

Y

N

性别

5

age

int

10

0

Y

N

0

年龄

6

contact_number

varchar

64

0

Y

N

联系电话

7

residential_address

varchar

64

0

Y

N

居住地址

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

更新时间

表student_works (学生作品)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_works_id

int

10

0

N

Y

学生作品ID

2

name_of_work

varchar

64

0

Y

N

作品名称

3

cover

varchar

255

0

Y

N

封面

4

type_of_work

varchar

64

0

Y

N

作品类型

5

release_time

date

10

0

Y

N

发布时间

6

student_no

int

10

0

Y

N

0

学生编号

7

full_name

varchar

64

0

Y

N

姓名

8

related_works

varchar

255

0

Y

N

相关作品

9

introduction

longtext

2147483647

0

Y

N

作品介绍

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表teacher (教师)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

teacher_id

int

10

0

N

Y

教师ID

2

teacher_no

varchar

64

0

N

N

教师编号

3

teacher_name

varchar

64

0

Y

N

教师姓名

4

gender

varchar

64

0

Y

N

性别

5

examine_state

varchar

16

0

N

N

未审核

审核状态

6

recommend

int

10

0

N

N

0

智能推荐

7

user_id

int

10

0

N

N

0

用户ID

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表teacher_community (教师社区)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

teacher_community_id

int

10

0

N

Y

教师社区ID

2

title

varchar

64

0

Y

N

标题

3

cover

varchar

255

0

Y

N

封面

4

type

varchar

64

0

Y

N

类型

5

teacher_no

int

10

0

Y

N

0

教师编号

6

teacher_name

varchar

64

0

Y

N

教师姓名

7

release_time

date

10

0

Y

N

发布时间

8

content_details

text

65535

0

Y

N

内容详情

9

hits

int

10

0

N

N

0

点击数

10

praise_len

int

10

0

N

N

0

点赞数

11

recommend

int

10

0

N

N

0

智能推荐

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表teaching_activities (教学课程)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

teaching_activities_id

int

10

0

N

Y

教学课程ID

2

section_number

varchar

64

0

Y

N

章节编号

3

title

varchar

64

0

Y

N

标题

4

cover

varchar

255

0

Y

N

封面

5

chapter_introduction

varchar

64

0

Y

N

章节简介

6

course_type

varchar

64

0

Y

N

课程类型

7

courses

varchar

64

0

Y

N

所属课程

8

teacher_no

int

10

0

Y

N

0

教师编号

9

teacher_name

varchar

64

0

Y

N

教师姓名

10

learning_objectives

varchar

64

0

Y

N

学习目标

11

preliminary_knowledge

varchar

64

0

Y

N

预备知识

12

thinking_exercises

varchar

64

0

Y

N

思考练习

13

learning_resource

varchar

255

0

Y

N

学习资源

14

details

longtext

2147483647

0

Y

N

详情介绍

15

hits

int

10

0

N

N

0

点击数

16

praise_len

int

10

0

N

N

0

点赞数

17

recommend

int

10

0

N

N

0

智能推荐

18

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

19

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

email

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

创建时间:

表user_answer (用户答题)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_answer_id

mediumint

8

0

N

Y

2

user_id

mediumint

7

0

N

N

用户ID:[0,8388607]用户获取其他与用户相关的数据

3

exam_id

mediumint

7

0

N

N

0

考试id

4

score

double

9

2

Y

N

0.00

分数

5

answers

text

65535

0

Y

N

答案

6

score_detail

text

65535

0

Y

N

评分详情

7

objective_score

double

9

2

Y

N

0.00

客观题得分

8

subjective_score

double

9

2

Y

N

0.00

主观题得分

9

score_state

tinyint

4

0

Y

N

0

评分状态

10

nickname

varchar

255

0

Y

N

提交人

11

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

  1. 系统详细设计

5.1学生功能模块

学生登录,通过填写账号、密码、完成验证后选择登录即可进入网络课程系统,如下图所示。

图5-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;

        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,"该用户审核未通过");

            }

        }

        //查询用户状态

        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, "账号或密码不正确");

        }

}

学生登录进入首页后,首先看到首页,交流论坛,测试练习,公告消息,学习资源,教学课程,学生作品,我的(我的账户,我的收藏,个人中心),后台主页,个人资料,记事本,学生档案,我的成绩,作业信息,作业批改,教师评价,自我评价等内容,如下图所示。  

图5-2学生功能界面图

其中载入页面的主要代码如下:

server:

  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

学习资源,学生在此页面可以查看学习资源,包括专题名称,所属课程,资源类型,发布人等信息,可以进行点赞,收藏,评论等操作,如下图所示。

图5-3学习资源列表界面图

图5-4学习资源详情界面图

教学课程,学生在此页面可以查看教学课程,包括专题名称,所属课程,资源类型,发布人等信息,可以进行点赞,收藏,评论,提交作业等操作,如下图所示。

图5-4教学课程列表界面图

图5-5教学课程详情界面图

图5-6作业提交界面图

测试练习,学生在此页面可以查看测试练习试卷,可以进行答题操作,如下图所示。

图5-7测试界面图

我的成绩,在此页面可以查看各个课程的信息,如下图所示。

图5-8成绩查询界面图

我的作品,学生在此页面可以通过输入作品名称,类型,发布时间,学生编号,姓名,上传作品以提交作品,如下图所示。

图5-9我的作品上传界面图

5.2教师功能模块

课程申请,教师在此页面可以维护管理课程的信息,包括课程名,类型,班级名称,总课时,课时计划,内容介绍,学习方法,考核要求等信息,并可根据需要进行查询,重置,删除,添加等操作,添加后需要管理员审核,如下图所示。

图5-10课程信息管理界面图

图5-11课程新增界面图

教学课程,教师在此页面可以维护教学课程的信息,包括课章节编号,标题,简介,类型,所属课程,学习目标,预备知识,思考练习等信息,并可根据需要进行查询,重置,删除,添加等操作,如下图所示。

图5-12教学课程管理界面图

图5-13教学课程新增界面图

作业信息,教师在此页面可以查看学生提交的作业的信息,并可根据需要进行查询,重置,删除,批改等操作,如下图所示。

图5-14作业信息管理界面图

图5-15作业批改界面图

测试练习,教师在此页面可以维护管理测试练习信息,并可根据需要进行查询,重置,删除,新增等操作,如下图所示。

图5-16测试练习管理界面图

图5-17试题添加界面图

5.5管理员功能模块

管理员登录进入首页后,首先看到后台主页,个人资料,公告管理(轮播图,公告消息),用户管理(管理员,教师,学生),信息管理(交流论坛,论坛分类,测试练习),课程申请,学习资源,素材库,教学课程,记事本,学生档案,学生成绩,学生作品,作业信息,作业批改,评价信息,教师社区,帮助咨询等内容,如下图所示。

图5-18管理员功能界面图

用户管理,管理员在此页面对学生,教师的信息进行维护管理,并可根据需要进行查询,重置,删除,新增,审核等操作,如下图所示。

图5-19用户管理界面图

图5-20用户审核界面图

6章  系统测试

6.1系统测试的目的

程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。

软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。

网络课程系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在网络课程系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。

6.2系统测试方法

在对网络课程系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让网络课程系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个网络课程系统开发所牵扯的该问题都必须一一解决,提高网络课程系统平台的安全性、稳定性。

白盒测试与黑盒测试是测试中比较常用的两种方法。

①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。

②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。

6.3功能测试

用户登录测试:

模块名称

测试用例

预期结果

实际结果

是否通过

登录模块

用户名:admin   密码:123  

弹出错误提示,提示密码错误

弹出错误提示,提示密码错误

通过

登录模块

用户名:123   

密码:admin   

弹出错误提示,提示用户名错误

弹出错误提示,提示用户名错误

通过

登录模块

用户名:admin   

密码:admin   

管理员登录成功

管理员登录成功

通过

删除分类测试:

模块名称

测试用例

预期结果

实际结果

是否通过

删除分类模块

分类名:最新通知  

删除成功、页面自动跳转

删除成功、页面自动跳转

通过

修改密码测试:

模块名称

测试用例

预期结果

实际结果

是否通过

修改密码模块

原密码:666

新密码:123

确认密码:123  

弹出错误提示,提示原密码错误

弹出错误提示,提示原密码错误

通过

修改密码模块

原密码:admin   新密码:123

确认密码:333  

弹出错误提示,提示确认密码不一致

弹出错误提示,提示确认密码不一致

通过

修改密码模块

原密码:admin   新密码:123

确认密码:123  

密码修改成功

密码修改成功

通过

通过对功能的测试,网络课程系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。

结  论

此时项目已经完成,即使实施的时间不是很长,但是这个过程中需要准备很长的一段时间去对系统设计开发所实际到的技术进行学习。在学习的过程中,我逐渐认识得到了我自身存在的一些不足。对于一些控制是必要的应用技能,能够理解,整个过程中仅仅是一个掌握了常用的性能和控制方法,我觉得挺容易的。从该系统中,系统的分析和设计的调查数据,并且已经经历了几个月,并努力几个月,该系统已经完成。很显然,该系统仍有很多不成熟,在系统设计过程中有许多技术缺陷存在。在设计的过程中也涉及到了很多自己无法解决的问题,主要通过找专业的网站和论坛来解决这些问题,对于圆满完成我的毕业设计,他们也贡献了很大一部分力量。系统的开发环境和配置都是可以自行安装的,系统使用SSM开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。

在以后的学习及工作中,我将继续努力学习计算机方面的技术,以期在平台开发中可以更好更快的实现需求功能。


致  谢

网络课程系统的完成,如何实现的更好,其中付出的努力是很大的,这段时光将会终身难忘。

首先要感谢我的指导老师,谢谢您在设计和论文中给我的指导。在您的细心指导下我才能快速的掌握系统的相关功能,在您的大力帮助下我才能将课本上的知识与自己的项目结合,真正的做到学以致用。感谢您经常牺牲自己的休息时间,利用其丰富的教学和项目经验对我进行指导。

感谢所有教过我的老师,为我倾注了大量的心血,正是你们的谆谆教诲、严谨教学才使我能顺利的完成学业,再此向你们表示深深的感谢。

感谢我的同学们,对我的大力支持及帮助,正是你们不断的帮助、鼓励,给我带来了极大的动力,最终系统可以顺利的运行。我们在交流、谈论的这段时间,将是我未来的财富,我要深深地感谢你们。

毕业在即,在今后的工作和生活中,我会铭记师长们的教诲、同学们的帮助,继续不懈努力和追求,来报答所有支持和帮助过我的人。

参考文献

[1]阮眩龙,张汉权,韦贵凡,唐萍,张捷.基于SSM框架的奖学金评定管理系统设计[J].电脑编程技巧与维护,2022(08):106-109.DOI:10.16184/j.cnki.comprg.2022.08.025.

[2]黎洁霞,甘渐宽,王方会,白玉.基于SSM框架的新型可视化食堂管理系统[J].网络安全技术与应用,2022(08):40-41.

[3]Zheng Hongying. A Study on the Design of English Speaking Examination System Based on SSM Framework[J]. Journal of Sensors,2022,2022.

[4]刘源昭,陈伟,曹俊杰,李鹏宇,李英杰,许一靖,孙浩铭.基于SSM架构的图书管理系统[J].山西电子技术,2022(03):61-63+76.

[5]彭婷.基于SSM框架的客户关系管理系统的设计与实现[J].信息与电脑(理论版),2022,34(08):137-139.

[6]陈恒,陈淑丽.基于SSM框架的学生档案管理系统的设计与实现[J].电脑知识与技术,2022,18(10):42-43+47.DOI:10.14004/j.cnki.ckt.2022.0747.

[7]冯子充,秘伟,郭晓利.基于SSM架构的物流公司信息管理系统的设计[J].电脑知识与技术,2022,18(04):24-26.DOI:10.14004/j.cnki.ckt.2022.0253.

[8]朱彬,童颖飞,陈剑,肖苏飞.基于SSM的党建管理系统设计与实现[J].信息与电脑(理论版),2022,34(02):148-151.

[9]李春生,李朝霞,刘涛,胡亚楠.基于SSM的科研室管理系统的研究与设计[J].计算机技术与发展,2021,31(12):148-154.

[10]王宇,夏丽丽,何颖刚.基于SSM框架的高校毕业论文管理系统的设计与实现[J].电子技术与软件工程,2021(22):26-29.

[11]张亚翠. 网课学习资源个性化推荐系统设计与实现[D].首都经济贸易大学,2021.DOI:10.27338/d.cnki.gsjmu.2021.000419.

[12]孙善毅,朱宁.基于SSM框架的学生信息管理系统的开发与应用[J].电子技术与软件工程,2021(04):43-45.

[13]甄真,张秀梅.学生网课学习系统的开发与设计[J].现代信息科技,2020,4(23):8-10+16.DOI:10.19850/j.cnki.2096-4706.2020.23.003.

[14]程瑶.高校计算机网络课程的多重交互共享式微课教学系统研究[J].自动化技术与应用,2020,39(09):167-169.

[15]许乐清.新冠肺炎疫情形势下动态网课系统研究与开发[J].数码世界,2020(06):167.

[16]. Design and Implementation of ERP System Based on SSM Framework[J]. ,2020,440(5).

[17]Hou Y. The design and implementation of the framework for Spring+SpringMVC+MyBatis in the development of Web application[C]//Institute of Management Science and Industrial Engineering.Proceedings of 2019 4th International Industrial Informatics and Computer Engineering Conference(IIICEC 2019).Proceedings of 2019 4th International Industrial Informatics and Computer Engineering Conference(IIICEC 2019),2019:369-374.DOI:10.26914/c.cnkihy.2019.039191.

[18]Ping Wanxin,Chen Yuankun,Hou Xiaoyan. Design of Campus Bicycle Rental Management System Based on SSM Framework[J]. Journal of Physics: Conference Series,2019,1314.

[19]Jihong W,Junmei W,Dongling S. Design and Research of University International Cooperation Office Platform Based on SSM Framework[C]//Jilin Province Science and Technology (S&T) Innovation Center for Physical Simulation and Security of Water Resources and Electric Power Engineering,The Cooperative Innovation Center of Wind Power Equipment and Energy Conversion, Hunan Institute of Engineering,St. John’s University,Hunan Internet of Things Association.Proceedings of 2019 International Conference on Virtual Reality and Intelligent Systems (ICVRIS 2019) Volume I.Proceedings of 2019 International Conference on Virtual Reality and Intelligent Systems (ICVRIS 2019) Volume I,2019:229-232.DOI:10.26914/c.cnkihy.2019.011418.

[20] Gu Ruoyu. Design of re-learning online course system based on UCD [D]. Zhejiang Science and Technology University, 2019.

To receive the project source code for free, please follow● Like, collect and send a private message to the blogger, thank you -

Guess you like

Origin blog.csdn.net/weixin_bysj703/article/details/135110677