SpringBoot + Vue develops online learning system

             SpringBoot + Bootstrap + Vue develop online learning system

        The main content of this topic is to develop an online learning platform based on Java EE, using MVC classic development model, Java EE framework SSM (Spring + SpringMVC + Mybatis) and other related technologies to develop website system.

Online Demo    Online Demo

        The development environment used is MyEclipse as the development environment, using Tomcat server as the web application container, and MySQL as the system's database management.

        In the MVC pattern, the application is divided into three parts: a model, a view, and a controller. Among them, the model part contains the business logic and business data of the application; the view part encapsulates the output form of the application, which is commonly called the page or interface; and the controller part is responsible for coordinating the model and the view, based on user requests. Choose which model to call to handle the business, and which view will ultimately answer the user.

       Model layer (Model) mainly completes the logical processing of business and data storage. Including business process, state processing and business rules processing. The business logic receives the request data of the view layer and returns the final processing result. The data model is the data storage of the entity object, which realizes the interaction between the view layer and the model layer. View layer (View) is mainly for user and system interaction, showing the data the user needs, mainly for the interface, including input and output. Generally, it can be implemented with technologies such as JSP, HTML pages, and XML. An application can have many different application views. The MVC mode only collects and processes data on the view and user requests, rather than processing business processes on the view, but the model layer handles these business processes and states. Change.

        The system uses the following core Java EE technology.

        1)Spring

        Spring is an open source framework. Spring is a lightweight Java development framework that emerged in 2003. It is derived from some concepts and prototypes expounded by Rod Johnson in his book Expert One-On-One J2EE Development and Design. It was created to solve the complexity of enterprise application development. Spring uses basic JavaBeans to accomplish things previously only possible with EJBs. However, the use of Spring is not limited to server-side development. From the perspective of simplicity, testability and loose coupling, any Java application can benefit from Spring. In short, Spring is a lightweight container inversion (IoC) and aspect-oriented (AOP) container framework.

        2)Spring MVC

        Spring MVC belongs to the follow-up product of SpringFrameWork and has been integrated in Spring Web Flow. Spring MVC separates the roles of controller, model object, dispatcher, and handler object. This separation makes them easier to customize.

        3)MyBatis

        MyBatis is a Java-based persistence layer framework. The persistence layer framework provided by iBATIS includes SQL Maps and Data Access Objects (DAO) MyBatis, which eliminates the manual setting of almost all JDBC codes and parameters and the retrieval of result sets. MyBatis uses simple XML or annotations for configuration and original mapping, mapping interfaces and Java POJOs (Plain Old Java Objects, ordinary Java objects) to records in the database.

 

      Project operation manual:

Eclipse, MyEclipse, IDEA development tools can be quickly imported and started!

 

 

 

            Thesis chapter structure:

                 

        Selected content:

             The online learning platform is mainly divided into three major functional modules: system administrator module, teacher module and student module. As shown in Figure 2-1.

                                                                                 Figure 2-1 Overview of system functions

       1. Administrator module: Every application system needs such a role, which can ensure that the system can run stably in the dynamic state, manage various configuration attributes of the system, that is, support the highest authority. The specific functions are as follows:

College management: add, delete, query and modify the entity of the college.

Course management: add, delete, query and modify the course entity. The course should belong to the designated college.

Teacher management: Manage teacher information, including adding, deleting, querying, and modifying. At the same time, teacher information can be imported in batches through excel forms.

Student management: Manage student information, including adding, deleting, querying, and modifying. At the same time, student information can be imported in batches through excel forms.

Course material management: manage course videos and documents uploaded by teachers.

Exam management: You can manage the exams issued by teachers.

Forum management: manage the discussion information between teachers and students.

Announcement management: manage the global announcements of the online learning platform. 

3.1.1 System class diagram design

From the demand analysis of the online learning platform, some classes can be roughly analyzed, but the entity classes in the system cannot be fully analyzed. Considering the famous MVC pattern, we need to identify three objects: entity, control and boundary. It is a very good practice to follow the MVC pattern to guide the identification of objects. The result of object recognition is the static model we need, usually represented as a class diagram. This process uses UML modeling technology to describe the class structure in the system.

First identify the physical objects, which are relatively easy to see, such as the roles in the system (administrator, teacher, student). According to the real world, characters should have attributes such as name, gender, phone number, and ID. The system role class diagram is shown in Figure 3-1.                                                                         

        Entity classes such as colleges, courses, and courseware in the online learning platform. The course should belong to a certain college, and the courseware should belong to a certain course, uploaded by the teacher. Courseware can be viewed and downloaded online by the student login platform, where the path field stores the path of the file. The class diagram is shown in Figure 3-2: In addition to the above entity classes, there are some notification classes. The system announcement is visible to all logged-in users. Teachers can publish the questions of the course for students to participate in the discussion. In this way, an entity class of discussions is needed. Some entity objects require a little analysis to obtain them. For example, in an online learning platform, in order to record students ’responses to discussions posted by teachers, an object is needed to specifically record this information (Discuss_post entity). The class diagram is shown in Figure 3-3:

        The online learning platform also has an online test function, where teachers post exams and add test questions while giving correct answers to test questions. After a student logs in to the system, they can complete the test online, and the system automatically scores the student. To complete such a function, the required entity classes are task (exam), task_question (detailed test questions), student_task (student score). The class diagram is shown in Figure 3-4:

               System file introduction

 

 

           Project structure 

            Demonstration of some functions:

                                                                                     Figure 5-12 Exam information list

                                                                                       Figure 5-13 Examination information

Project Development Technical Route 1 Spring+Spring MVC +MyBatis+JSP
Project Development Technology Route 2

Spring+Spring MVC+MyBatis+Vue

          [ Online demo of the systemTest   Reward           need to contact   2027776292   [Online demo]

Function upgrade: mainly to upgrade the JSP version [add retrieval of various modules, course collection and other functions, and some optimizations]                       

Add:
1. Student side and teacher side-course video

. In addition to the file name, course and upload time, add a "post teacher" at 1. Place
a "filter" at the location of toolbar 2. The function
can be filtered according to "Affiliated Course" or "Post Teacher" (two filtering methods, not "AND"), and the result is displayed below.

New functions and effects: Teachers can only see the information published by themselves, no need to filter
 

 

2. Student side and teacher side-course files
. In addition to the file name, course and upload time, add a "post teacher" at 1. Place
a "filter" function at the location of 2. You can filter by "Affiliated Course" or "Publish Teacher" (two filtering methods, not "AND"), the results are shown below.

New functions and effects: Teachers can only see the information published by themselves, no need to filter 

 


3. Student side and teacher side-the topic discussion is the

same as above, and a "screening" function is added in one place. Filter by "Affiliated Course" or "Post Teacher"

New function effect: Teachers can only see the topics posted by themselves, no need to filter
 


4. Student side and teacher side-complete the homework and homework information query as 
 
above, add a "screening" function in one place. Filter by "Affiliated Course" or "Post Teacher"

New function effect: Teachers can only see the topics posted by themselves, no need to filter
 

5. Administrator side:
Add a "screening" function in each of the following places:
student information query ( filter based on "student ID" or "affiliated college")
teacher information query (based on "teacher number" or "affiliated college" Screening)
Course information query ( screening based on "Course Number" or "Affiliated College")
Topic discussion ( screening based on "Affiliated Course" or "Posted Teacher")

Student information query

Teacher Information Query

Course Information Query

Topic discussion

 

6. Student-course management
 
 Add a "My Course" module (in parallel with "View course information") under the "Course management" directory;
 Implementation: Students can query related courses in "View course information", And you can add a course to "My Course";
 Students click "My Course", you can view the course you added, and you can enter the course, watch videos and documents of this course, participate in the discussion and Complete the assignment for this course. (That is, transfer the three modules of "document management", "discussion management", and "homework management" to the corresponding courses in "My Courses."
 For example: a student queries courses in "Query Course Information" And add the course "Java Web Programming" to "My Course", then the student enters the "Java Web Programming" course in "My Course", watch the course video and documents, complete the course Assignments and discussions.

New functions and effects:
 

 

                                            [ Online demo of the systemTest   Reward           need to contact   2027776292

 

Guess you like

Origin www.cnblogs.com/gqzdev/p/12683296.html