Summary
With the rapid development of science and technology, all walks of life are striving to integrate with modern advanced technology and improve their own advantages through scientific and technological means; of course, the Huagu flower science popularization system cannot be excluded. As network technology continues to mature, it has led to the Huagu flower science popularization system. The flower science popularization system has completely changed the traditional management methods in the past. It not only makes management more difficult, but also improves the flexibility of management. This personalized platform pays special attention to interaction coordination and management, stimulating the creativity and initiative of managers, which is very beneficial to the Huagu flower science popularization system.
The database used in this system is Mysql. The front-end part is developed based on MVVM mode and B/S mode. The back-end part is developed based on Java's springboot framework. During the design process, the system code was fully guaranteed to have good readability, practicality, easy scalability, versatility, easy later maintenance, easy operation, and simple page.
Keywords: Huagu flower science system Mysql springboot framework
Abstract
With the rapid development of science and technology, all walks of life are trying to integrate with modern advanced technology and improve their advantages through scientific and technological means; Of course, the popular science system of Huagu flowers cannot be excluded. With the continuous maturity of network technology, it has driven the popular science system of Huagu flowers. It has completely changed the traditional management mode in the past, not only making the management difficult, but also improving the flexibility of management. This personalized platform pays special attention to the interaction and coordination of management, which stimulates the creativity and initiative of the management staff, and is very beneficial to the flower and flower science popularization system.
The database used in this system is MySQL. The front-end part is developed based on MVVM mode, using B/S mode, and the back-end part is developed based on Java's spring boot framework. In the design process, the system code is fully guaranteed to be readable, practical, extensible, universal, easy to maintain, easy to operate and concise.
Keyword: Myql springboot framework of Flower Valley popular science system
Table of contents
1.1 Background and significance
1.2 Overview of research at home and abroad
Chapter 2 Research on Key Technologies
2.5 Introduction to spring boot framework
3.2 System feasibility analysis
3.3 System function analysis and description
3.4 System UML use case analysis
3.5.3 Deletion of information process
4.2 Database design principles
Chapter 5 System Implementation
5.1 Administrator function module
5.2 Front desk function module
5.3 User background function module
Chapter One Introduction
1.1 Background and significance
System management will also be carried out through computers for overall intelligent operation. The Huagu flower science system involves a lot of management and data storage, which brings huge challenges to the work of managers. Faced with a large amount of information, Traditional management systems collect detailed information through notes. Later, computers appeared, and paper-based information was transferred to the computer through computer input software. This method is more traditional, and it is more troublesome to collect statistical information. It is also affected by time and space, so the Huagu Flower Science Popularization System was developed for this purpose; it provides users with a convenient management platform for administrators to view and maintain, and can edit and maintain device information content according to needs; for users In other words, Huagu flower and plant information can be viewed at any time. Administrators can obtain system data information without leaving home, and it can also save users a lot of time. Therefore, the development of Huagu flower science popularization system has brought great benefits to managers. It is convenient and also convenient for administrators to process user information.
This paper's Huagu flower science popularization system mainly involves programs, databases and computer technology. Covering a wide range of knowledge can greatly improve the work efficiency of system personnel.
1.2 Overview of research at home and abroad
With the continuous development of the domestic economic situation, China's Internet has entered a rare period of peak development, which has caused Chinese and foreign capitalists to turn to the Internet market. However, the unreasonable structure, shortage of personnel and the increase in market management needs in many management fields have made more people aware of Internet management.
In today's highly developed information, information management reform has become a more extensive and comprehensive trend. "Huagu Flower Science Popularization System" is based on Mysql database and implemented on the basis of springboot framework design. In order to ensure the sustainable development of China's economy, the information age is increasingly updated, and the service industry is still booming. At the same time, with the rapid development of the information society, various management systems are faced with more and more data that need to be processed. How to enable managers to query, store, manage and share effective data in the vast data ocean in a convenient and fast way? Information has important practical significance for our study, work and life. Therefore, academic circles at home and abroad have conducted in-depth and extensive research on this, and a new research field-Huagu Flower Science Popularization System was born.
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 relatively comprehensive and professional information management software is still not understood or recognized by most people. This topic aims to realize the various functions of the Huagu flower science popularization system through label classification management and other methods, so as to achieve the management of the Huagu flower science popularization system.
The detailed introduction will be elaborated in the following six chapters:
Chapter 1, Introduction, introduces the background and significance of the research topic selection, the research status, and briefly introduces the chapter content of this article.
Chapter 2: Introduce technical knowledge, develop by introducing key technologies, and introduce intuitively expressed technical knowledge into the system.
Chapter 3 focuses on the analysis of the system. Starting from the strong supply and demand market of the system, the feasibility of system development, system processes, and system performance and functions are discussed.
Chapter 4 introduces the detailed design plan of the system, including system structure design and database design.
Chapter 5, the implementation of system design, demonstrates the structure of the system through a detailed description of the system functional design.
Chapter 6: Overall test of the system to determine whether the system can be run online.
Chapter 2 Research on Key Technologies
2.1 Development technology
The front-end framework of this system 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, and Element UI component library to quickly prototype the page. Back-end part: Use springboot as the development framework, and integrate MyBatis, Redis and other related technologies.
2.2 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 increasingly complex changes in customer needs.
2.3 MySQL database
The advancement of science and technology has brought many conveniences to daily life: classroom projectors use virtual imaging technology, and digital cameras use photoelectric detection technology. For example, the records of supermarket goods entering and leaving the warehouse require an information warehouse. This information warehouse is the database, and this time the Huagu flower science popularization system also needs the support of this technology.
The software MySQL is used because it can accept access from multiple users, and Archive etc. exist in it. It will first classify the data and then save it in tables respectively. Such special operations will improve the speed of the data management system itself and allow the database to be used flexibly. MySQL's code is public and allows others to compile and upgrade it again. This feature can reduce user costs and form a good website system when paired with appropriate software. Although it has shortcomings, in all aspects, it is the mainstream application object 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 your work will be "slimmed down" without having to consider the issue of constantly installing software.
2.5 Introduction to spring boot framework
The Spring framework is an open source application framework on the Java platform that provides a container with control inversion characteristics. Although the Spring framework itself has no restrictions on the programming model, its frequent use in Java applications made it so popular that it was later used as a supplement or even a substitute for the EJB (Enterprise JavaBeans) model. The Spring framework provides a series of solutions for development, such as utilizing the core features of inversion of control and implementing inversion of control through dependency injection to implement containerization of the managed object life cycle, using aspect-oriented programming for declarative transaction management, and integration A variety of persistence technologies manage data access, provide a large number of excellent web frameworks to facilitate development, and so on. The Spring framework has the Inversion of Control (IOC) feature. IOC is designed to facilitate project maintenance and testing. It provides a method for unified configuration and management of Java objects through Java's reflection mechanism. The Spring framework uses containers to manage the life cycle of objects. The container can configure objects by scanning XML files or specific Java annotations on classes. Developers can obtain objects through dependency lookup or dependency injection. The Spring framework has an aspect-oriented programming (AOP) framework. The Spring AOP framework is based on the proxy mode and is configurable at runtime; the AOP framework mainly modularizes cross-concerns between modules. The AOP framework of the Spring framework only provides basic AOP features. Although it cannot be compared with the AspectJ framework, it can also meet basic needs through integration with AspectJ. Transaction management, remote access and other functions under the Spring framework can be realized by using Spring AOP technology. Spring's transaction management framework brings an abstraction mechanism to the Java platform that enables local and global transactions, as well as nested transactions, to work with savepoints and in almost any environment on the Java platform. Spring integrates a variety of transaction templates. The system can configure transactions through transaction templates, XML or Java annotations, and the transaction framework integrates functions such as messaging and caching. Spring's data access framework solves common difficulties developers encounter when using databases in their applications. It not only provides support for all popular data access frameworks such as Java: JDBC, iBATS/MyBATIs, Hibernate, Java Data Objects (JDO), ApacheOJB and ApacheCayne, but can also be used with Spring's transaction management to provide data access. Flexible abstraction. The Spring framework did not initially intend to build its own Web MVC framework . During the development process, its developers believed that the separation between the presentation layer and the request processing layer of the existing StrutsWeb framework, as well as between the request processing layer and the model, was not enough, so they created SpringMVC.
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 System design goals
The Huagu flower science system is mainly for the convenience of users to view Huagu flower and plant information, etc., and also to better allow administrators to better store all data information and provide quick and convenient retrieval functions. Each module of the system is passed through many today's The developed system makes a reasonable analysis to determine the operability considering the user, follows the principles of system optimization developed, and undergoes comprehensive investigation and research.
Analysis of the functions to be achieved by the system. For the convenient management of the current network, the system should enable users to directly view the website homepage, communication forums, questionnaires, announcements, flower culture, flower encyclopedia, flower cultivation, flower mall, etc. on the platform homepage. , according to your own needs, you can view Huagu flower information or Huagu flower products, etc. This can not only save users' time, but also eliminate the need to query in the traditional way. Due to the time constraints of many users, it is difficult to meet the user's various needs. kind of demand. Therefore, the development of the Huagu flower science system can not only meet the needs of users, but also improve the work efficiency of administrators and reduce the original unnecessary workload.
3.2 System feasibility analysis
The development environment and configuration of the system can be installed by yourself. The system uses spring boot development tools and the relatively mature Mysql database to interact with relevant data between system users and administrators. The database is modified according to technical language and needs. Maintenance can make the system operation more stable and safe, thereby completing the development of the system.
(1) Hardware feasibility analysis
The design of Huagu Flower Science Popularization System 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 and the uploading of the platform after completion. The server has certain requirements. The server must be chosen with relatively high security, and then opening the system 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 the security of the system and the 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.3 System function analysis and description
Users who use Huagu Flower Science Popularization System are divided into two permission sub-modules: administrator and user.
The main functions that administrators can use include: homepage, carousel, announcement messages, resource management (flower culture, cultural classification, questionnaire answers) communication management (communication forum, forum classification) system user (administrator, ordinary user) module Management (flower encyclopedia, flower cultivation, flower mall, order information, flower classification) user permissions are front-end and back-end, which can realize website homepage, communication forum, questionnaire answers, announcement messages, flower culture, flower encyclopedia, flower cultivation, and flower mall.
3.4 System UML use case analysis
3.4.1 Administrator use case
After logging in, the administrator can manage the system homepage, carousel pictures, announcement messages, resource management (flower culture, cultural classification, questionnaire answers) communication management (communication forum, forum classification) system user (administrator, ordinary user) module management (flower Encyclopedia, flower cultivation, flower mall, order information, flower classification), etc. are managed. The use case of administrator users is shown in Figure 3-1.
Figure 3-1 Administrator use case diagram
3.4.2 User use cases
Users are divided into front-end and back-end functions. The front-end and back-end can realize functions such as website home page, communication forum, questionnaire answers, announcement messages, flower culture, flower encyclopedia, flower cultivation, flower mall, etc.; back-end functions are divided into: home page, order information. For example, as shown in Figure 3-2.
Figure 3-2 User use case diagram
3.5 System process analysis
3.5.1 Add information process
Add information, the numbering system uses the automatic numbering mode, there is no user to fill in, the user adds information and enters the information, the system will automatically confirm the information and data, the successful verification is that the valid information is added to the database, if the information is invalid, re-enter the information. The process of adding information is shown in Figure 3-3.
Figure 3-3 Add information flow chart
3.5.2 Operation process
If a user wants to enter the system, he must first enter the system login interface, enter the correct user name and password, and select the login type to log in. The system will check the login information, and if the information is correct, then enter the corresponding function interface, and it will prompt that the information is incorrect and the login failed. The system operation process is shown in Figure 3-4.
Figure 3-4 Operation flow chart
3.5.3 Deletion of information process
The user selects the information to be deleted and clicks the Delete button. The system prompts whether to delete the information. If the user wants to delete the information, the system will delete the information. System database delete information. The flow chart of deleting information is shown in Figure 3-5.
Figure 3-5 Deletion information flow chart
Chapter 4 System Design
4. 1 System architecture
The structure of the Huagu flower science popularization system development system is shown in Figure 4-1:
Figure 4-1 System structure
Modules include system homepage, carousel pictures, announcement messages, resource management (flower culture, cultural classification, questionnaire answers) communication management (communication forum, forum classification) system users (administrators, ordinary users) module management (flower encyclopedia, flower cultivation) , flower mall, order information, flower classification), etc. to perform corresponding operations.
Login system structure diagram, as shown in Figure 4-2:
Figure 4-2 Login structure diagram
These functions can fully meet the needs of the Huagu flower science system. This system has relatively comprehensive functions. The system function structure is shown in Figure 4-3.
Figure 4-3 System functional structure diagram
4.2 Database design principles
The applications of each database are separated from each other. When running into a certain program, it will communicate with the client through its own related protocols. Then this system will connect these data. When we choose which segment, we will briefly describe how the database is created. When you click the Finish button, the name of the data source will automatically pop up in the dialog box. Just click Next and directly enter the corresponding authentication and login password.
The data flow of Huagu Flower Science Popularization System:
Figure 4-4 System data flow chart
The management entity ER diagram is shown in Figure 4-5.
Figure 4-5 Management ER diagram
4.3 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 article (article: article for content management system)
serial number |
name |
type of data |
length |
Decimal places |
Allow null values |
primary key |
default value |
illustrate |
1 |
article_id |
mediumint |
8 |
0 |
N |
Y |
Article id: [0,8388607] |
|
2 |
title |
varchar |
125 |
0 |
N |
Y |
Title: [0,125] is used in the title tag of articles and html |
|
3 |
type |
varchar |
64 |
0 |
N |
N |
0 |
Article classification: [0,1000] is used to search for articles of the specified type |
4 |
hits |
int |
10 |
0 |
N |
N |
0 |
Number of clicks: [0,1000000000] Number of people who visited this article |
5 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
Number of likes |
6 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Creation time: |
7 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Update time: |
8 |
source |
varchar |
255 |
0 |
Y |
N |
Source: [0,255] Source of article |
|
9 |
url |
varchar |
255 |
0 |
Y |
N |
Source address: [0,255] used to jump to the website where the article was published |
|
10 |
tag |
varchar |
255 |
0 |
Y |
N |
Tag: [0,255] is used to mark the relevant content of the article. Multiple tags are separated by spaces. |
|
11 |
content |
longtext |
2147483647 |
0 |
Y |
N |
Text: the main content of the article |
|
12 |
img |
varchar |
255 |
0 |
Y |
N |
cover picture |
|
13 |
description |
text |
65535 |
0 |
Y |
N |
Article description |
Table article_type (article 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 |
display |
smallint |
5 |
0 |
N |
N |
100 |
Display order: [0,1000] determines the order in which categories are displayed. |
3 |
name |
varchar |
16 |
0 |
N |
N |
Category name: [2,16] |
|
4 |
father_id |
smallint |
5 |
0 |
N |
N |
0 |
Parent category ID: [0,32767] |
5 |
description |
varchar |
255 |
0 |
Y |
N |
Description: [0,255] describes the role of this classification |
|
6 |
icon |
text |
65535 |
0 |
Y |
N |
Category icon: |
|
7 |
url |
varchar |
255 |
0 |
Y |
N |
External link address: [0,255] If this category jumps to other websites, set it on the URL |
|
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 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: |
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: |
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: |
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 flowers_and_plants (Flower Mall)
serial number |
name |
type of data |
length |
Decimal places |
Allow null values |
primary key |
default value |
illustrate |
1 |
flowers_and_plants_id |
int |
10 |
0 |
N |
Y |
Flower Mall ID |
|
2 |
flower_name |
varchar |
64 |
0 |
Y |
N |
flower name |
|
3 |
flower_classification |
varchar |
64 |
0 |
Y |
N |
Flower classification |
|
4 |
flower_price |
varchar |
64 |
0 |
Y |
N |
flower price |
|
5 |
purchase_instructions |
text |
65535 |
0 |
Y |
N |
Purchase Notes |
|
6 |
flower_pictures |
varchar |
255 |
0 |
Y |
N |
flower pictures |
|
7 |
introduction_to_flowers |
longtext |
2147483647 |
0 |
Y |
N |
Introduction to flowers |
|
8 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
Number of likes |
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 flower_classification (Flower Classification)
serial number |
name |
type of data |
length |
Decimal places |
Allow null values |
primary key |
default value |
illustrate |
1 |
flower_classification_id |
int |
10 |
0 |
N |
Y |
Flower classification ID |
|
2 |
flower_classification |
varchar |
64 |
0 |
Y |
N |
Flower classification |
|
3 |
recommend |
int |
10 |
0 |
N |
N |
0 |
Intelligent Recommendation |
4 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
creation time |
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Update time |
Table flower_collection (Flower Collection)
serial number |
name |
type of data |
length |
Decimal places |
Allow null values |
primary key |
default value |
illustrate |
1 |
flower_collection_id |
int |
10 |
0 |
N |
Y |
Flower ID |
|
2 |
flower_name |
varchar |
64 |
0 |
Y |
N |
flower name |
|
3 |
flower_classification |
varchar |
64 |
0 |
Y |
N |
Flower classification |
|
4 |
flower_label |
varchar |
64 |
0 |
Y |
N |
floral label |
|
5 |
flower_description |
text |
65535 |
0 |
Y |
N |
flower description |
|
6 |
flower_pictures |
varchar |
255 |
0 |
Y |
N |
flower pictures |
|
7 |
introduction_to_flowers |
longtext |
2147483647 |
0 |
Y |
N |
Introduction to flowers |
|
8 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
Number of likes |
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 flower_culture (flower culture)
serial number |
name |
type of data |
length |
Decimal places |
Allow null values |
primary key |
default value |
illustrate |
1 |
flower_culture_id |
int |
10 |
0 |
N |
Y |
Flower cultivation ID |
|
2 |
flower_name |
varchar |
64 |
0 |
Y |
N |
flower name |
|
3 |
flower_classification |
varchar |
64 |
0 |
Y |
N |
Flower classification |
|
4 |
cultivation_time |
varchar |
64 |
0 |
Y |
N |
Training time |
|
5 |
suitable_for_environment |
varchar |
64 |
0 |
Y |
N |
suitable for environment |
|
6 |
suitable_for_soil |
varchar |
64 |
0 |
Y |
N |
suitable for soil |
|
7 |
culture_temperature |
varchar |
64 |
0 |
Y |
N |
Culture temperature |
|
8 |
matters_needing_attention |
text |
65535 |
0 |
Y |
N |
Precautions |
|
9 |
flower_pictures |
varchar |
255 |
0 |
Y |
N |
flower pictures |
|
10 |
training_details |
longtext |
2147483647 |
0 |
Y |
N |
Training details |
|
11 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
Number of likes |
12 |
recommend |
int |
10 |
0 |
N |
N |
0 |
Intelligent Recommendation |
13 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
creation time |
14 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Update time |
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: |
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 |
Like ID: |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
Liked by: |
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Creation time: |
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Update time: |
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
Source table: |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
Source field: |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
Source ID: |
serial number |
name |
type of data |
length |
Decimal places |
Allow null values |
primary key |
default value |
illustrate |
1 |
notice_id |
mediumint |
8 |
0 |
N |
Y |
Announcement id: |
|
2 |
title |
varchar |
125 |
0 |
N |
N |
title: |
|
3 |
content |
longtext |
2147483647 |
0 |
Y |
N |
text: |
|
4 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Creation time: |
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
Update time: |
Table order_information (order information)
serial number |
name |
type of data |
length |
Decimal places |
Allow null values |
primary key |
default value |
illustrate |
1 |
order_information_id |
int |
10 |
0 |
N |
Y |
Order information ID |
|
2 |
flower_name |
varchar |
64 |
0 |
Y |
N |
flower name |
|
3 |
flower_classification |
varchar |
64 |
0 |
Y |
N |
Flower classification |
|
4 |
flower_price |
varchar |
64 |
0 |
Y |
N |
flower price |
|
5 |
purchase_instructions |
text |
65535 |
0 |
Y |
N |
Purchase Notes |
|
6 |
flower_pictures |
varchar |
255 |
0 |
Y |
N |
flower pictures |
|
7 |
purchase_user |
int |
10 |
0 |
Y |
N |
0 |
Buy users |
8 |
user_name |
varchar |
64 |
0 |
Y |
N |
username |
|
9 |
user_telephone |
varchar |
64 |
0 |
Y |
N |
User phone number |
|
10 |
shipping_address |
varchar |
64 |
0 |
Y |
N |
Shipping address |
|
11 |
purchase_quantity |
int |
10 |
0 |
Y |
N |
0 |
Purchase quantity |
12 |
purchase_amount |
varchar |
64 |
0 |
Y |
N |
purchasing price |
|
13 |
purchase_remarks |
text |
65535 |
0 |
Y |
N |
购买备注 |
|
14 |
pay_state |
varchar |
16 |
0 |
N |
N |
未支付 |
支付状态 |
15 |
pay_type |
varchar |
16 |
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 |
ordinary_users_id |
int |
10 |
0 |
N |
Y |
普通用户ID |
|
2 |
user_name |
varchar |
64 |
0 |
Y |
N |
用户姓名 |
|
3 |
user_gender |
varchar |
64 |
0 |
Y |
N |
用户性别 |
|
4 |
user_age |
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 |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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已取消 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
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 |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
第五章 系统实现
5.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所示。
图5-2管理员系统功能界面图
花卉商城管理,管理员添加花谷商城填写商品名称、商品编号、图片、价格、库存、商品描述提交添加,也可根据需求对已有的商品进行修改删除的功能如图5-3所示:
图5-3花谷商城管理界面图
文化分类管理,在文化分类管理界面类型名称,并可通过文化类型查询,对已有的文化类型进行修改或删除操作,如图5-4所示。
图5-4文化类型管理界面图
订单中心:在系统订单中心页面,对用户提交订单进行编辑或管理。如图5-5所示。
图5-5订单中心界面图
花卉培养管理,管理员添加花卉名称、花卉分类、培养时间、适于环境、适于土壤、培养温度、注意事项提交添加,也可根据需求对已有的花卉培养进行修改删除的功能如图5-6所示:
图5-6花谷培养管理界面图
5.2前台功能模块
用户注册管理:通过用户注册填写注册信息:账号、密码、昵称、姓名、出生年月、邮箱、手机、身份、编号、住址等信息提交注册信息。如图5-7所示。
图5-7用户注册列表界面图
注册代码如下:
/**
* 注册
* @param user
* @return
*/
@PostMapping("register")
public Map<String, Object> signUp(@RequestBody User user) {
// 查询用户
Map<String, String> query = new HashMap<>();
query.put("username",user.getUsername());
List list = service.select(query, new HashMap<>()).getResultList();
if (list.size()>0){
return error(30000, "用户已存在");
}
user.setUserId(null);
user.setPassword(service.encryption(user.getPassword()));
service.save(user);
return success(1);
}
/**
* 用户ID:[0,8388607]用户获取其他与用户相关的数据
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "user_id")
private Integer userId;
/**
* 账户状态:[0,10](1可用|2异常|3已冻结|4已注销)
*/
@Basic
@Column(name = "state")
private Integer state;
/**
* 所在用户组:[0,32767]决定用户身份和权限
*/
@Basic
@Column(name = "user_group")
private String userGroup;
/**
* 上次登录时间:
*/
@Basic
@Column(name = "login_time")
private Timestamp loginTime;
/**
* 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时
*/
@Basic
@Column(name = "phone")
private String phone;
/**
* 手机认证:[0,1](0未认证|1审核中|2已认证)
*/
@Basic
@Column(name = "phone_state")
private Integer phoneState;
/**
* 用户名:[0,16]用户登录时所用的账户名称
*/
@Basic
@Column(name = "username")
private String username;
/**
* 昵称:[0,16]
*/
@Basic
@Column(name = "nickname")
private String nickname;
/**
* 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成
*/
@Basic
@Column(name = "password")
private String password;
/**
* 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时
*/
@Basic
@Column(name = "email")
private String email;
/**
* 邮箱认证:[0,1](0未认证|1审核中|2已认证)
*/
@Basic
@Column(name = "email_state")
private Integer emailState;
/**
* 头像地址:[0,255]
*/
@Basic
@Column(name = "avatar")
private String avatar;
/**
* 创建时间:
*/
@Basic
@Column(name = "create_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Timestamp createTime;
@Basic
@Transient
private String code;
}
前台功能,入户登入系统前台浏览页可查询:首页、交流论坛、问卷答题、公告消息、花卉文化、花卉大全、花卉培养、花卉商城管理等信息。如图5-8所示
图5-8系统前台界面图
5.3用户后台功能模块
用户点击后台进入到系统操作界面,可以浏览首页、订单信息等功能,如图5-9所示。
图5-9用户后台界面图
订单信息管理,在订单信息管理界面可查询花卉名称、花卉分类、花卉价格、购买须知、花卉图片、购买用户、用户姓名、收货地址、购买数量、购买金额等信息查看或支付,对已有的订单信息进行修改或删除操作,如图5-10所示。
图5-10订单信息管理界面图
第六章 系统测试
6.1测试定义及目的
关于系统实现的测试,英文名称是System TEST,简称ST,ST是使用完整其系统的各种功能多次、多案例、多环境测试,这是ST的简单描述。ST可以证明该功能对系统的要求是否得到满足以及是否有效。
对于系统开发的实现,不管开发过程多么努力,在系统运行的时候多少都会出现一些错误信息,所以为了系统的安全性及提高系统的使用率及给用户带来更好的体验,系统在完成之前,一定要进行一遍系统的测试,再完美的程序也会有漏洞,再细心的技术开发员也会有疏忽的时候,所以对于程序的测试是必须要做的一步。通过系统测试找到系统存在的问题,并根据问题的原因进行在线解决问题,如果找不到解决问题的办法可以进行通过咨询指导老师或者通过同学帮忙,一定将问题找出,否则将会出现更多的错误。所以程序出现错误时不可避免,系统测试虽然耗时费力,但是为了确保后期系统的长期使用,必须要进行系统测试,问题解决完成后还要再一步测试,直到没有任何问题后方可进行使用。
6.2性能测试
任何一款程序开发成功后都必须通过软件测试,它是保障软件稳定运行的前提。测试最主要的一步就是性能测试,性能测试内容如下:
(1)对于测试的速度有一定的要求,速度必须快,而且对于测试出来的错误问题一定以最快的速度进行处理解决,并且进行再次测试,保证整个系统运行的安全性。
(2)在系统测试的时候要将测试所用到的测试计划和测试报告保管好,方便后期系统的运行使用后的整体维护操作。
(3)软件测试整个过程中的聚类现象应优先考虑。
(4)对于整体系统测试,不要用自己的思想去认可整个系统,而是从公正的角度的进行对系统进行认可,是否符系统的整合应用。
6.3测试模块
测试系统是最新的Windows 10系统,通过对系统实现的功能模块进行每个功能模块的操作测试,查看每个用户的功能模块所对应的权限信息是否可以操作并且数据信息更新一致。
测试需求 |
测试重点 |
是否达成需求 |
结果 |
用户登录 |
输入账号密码 |
需求达成 |
通过 |
用户注册 |
创建新的账号密码 |
需求达成 |
通过 |
登录失败 |
输入错误账号密码 |
需求达成 |
通过 |
修改信息 |
修改成功 |
需求达成 |
通过 |
添加信息管理 |
增删查改 |
需求达成 |
通过 |
评论管理 |
增删查改 |
需求达成 |
通过 |
回复管理 |
增删查改 |
需求达成 |
通过 |
搜索查询管理 |
增删查改 |
需求达成 |
通过 |
系统测试方面,我们通常运用的是白盒测试以及黑盒测试这两种方法。白盒测试是指在了解系统内部工作流程的前提下,可以根据需求规范验证系统内部操作是否能够正常运行的测试;而黑盒测试指的是,倘若知道了这个系统的全部功能,可以进行测试检测系统中的每一个功能是否满足正常使用。
为了方便用户使用“花谷花卉科普系统”,以及尽可能少的减少系统测试错误的发生,我们对该系统进行了相对应的测试。
对该系统的全部的功能界面进行测试,简单来说,就是我们输入一些数据并且对其进行提交,之后我们查看每个页面的反馈,检测页面的相关功能可不可以完全实现。
6.4测试结果
测试评估的结果是花谷花卉科普系统满足要求中的所有功能,处理大多数错误条件,修复大多数错误并通过测试。花谷花卉科普系统的基本功能都是可行的,不管是系统里面的功能还是界面的设计都是可值得推广宣传的。
总 结
花谷花卉科普系统的整体功能模块的实现,主要是对自己在大学这几年时间所学内容的一个测试,对于系统,主要是通过现在智能化的花谷花卉科普系统进行开始系统的实现,管理员根据问题信息进行科研成果信息及留言信息管理等操作,并且可以根据需求进行数据信息的增加修改删除等操作,完美的解决了当下花谷花卉科普系统中所遇到的问题。
After a semester of implementation of the graduation project, it is nearing completion. So far, when I look back on the system development day throughout the semester, I have gained a lot. The main task of the graduation project is to establish an intelligent Huagu Flower Science Popularization System information system. It mainly uses the development tools of spring boot and Mysql database to perform corresponding operations on each functional module of the system. Finally, the system debugging results show that the system Basically can meet the functional requirements.
The development of the Huagu Flower Science Popularization System has been of great help in improving my university studies. It enables me to learn the technical aspects of computer knowledge and the communication aspects of interacting with people. It makes me realize that no matter what we do, we need to persevere and work hard. Only by trying and persisting in doing it, we Only then can you succeed and get the joy of success. If you don’t try and just think, you won’t even have a chance of success. Only by doing the actual operation will you get closer and closer to success. As the road moves forward, the future will The road is beautiful.
The implementation of the Huagu flower science popularization system is the first time I have completed the design of a management system. During the design process of the project, I overcame various difficulties, and in the face of these difficulties, I actively faced them, found ways to solve the problems, and better mastered the theoretical knowledge and hands-on practical ability, from the development of the system By the time the design was completed, I had completed a more comprehensive, complete, and secure platform management system, which also gave me a great sense of accomplishment and made me more confident in my future life.
Time flies like an arrow, and the sun is like a boat. The immediate end of my graduation thesis also means that my four-year college life is coming to an end. Thesis writing is tedious and challenging. The guidance of the instructor, the support and encouragement of students and parents are the reasons why I persisted in completing the thesis. First of all, I would like to thank my supervisor for providing valuable opinions on the beginning, first draft, and design of the thesis. Without the teacher’s hard work and strict requirements, I would not have been able to successfully complete my thesis. Here, I would also like to thank my mother and father. I want to say many words of gratitude to you. I want to repay you through my learning achievements. I wish you health and happiness forever! Finally, I would like to thank all the teachers, classmates and friends who have helped me and spent many happy and unforgettable days. I wish you happiness forever.
Four years is hardly a short time in my long journey of life, but these short four years are the most sincere youth; the purest years; and the most beautiful university life. I will remember every bit of college and every lovely person in college.
[1] Zhou Xuping, Tang Luyan, Xia Hongxia, Peng Tao, Deng Xinyan, Hou Mengdan, Zhu Di, Xie Rulian, Wang Bin, Guo Ying. Characteristics of flower and plant flora in the Flower Valley in Liupanshui Niangniangshan National Wetland Park [J/OL]. Journal of Tropical and Subtropical Botany :1-15[2021-12-12]
[2] Tang Luyan, Li Fei, Xia Hongxia, Zhou Xuping, Wang Jian, Peng Tao. Diversity of epiphytic mosses in Liping Taiping Mountain Nature Reserve [J]. Biological Resources, 2021, 43(05): 461-466. DOI:10.14188/j.ajsh.2021.05.005.
[3] Li Yuqi, Wang Xiurong. Research on the structure of flower and plant community in Huagu, Guiyang Mountain Park and its relationship with the environment [J]. Guangdong Garden, 2021, 43(05): 91-96.
[4] Zhang Lina, Li Tianping. Huagu Flowers: "Little Forest" in the Rainforest [J]. Forest and Humanity, 2021(10):60-61.
[5] Bai Xiaoshan, Tong Wei, Wang Jianyi, Bu Zhaojun, Liu Wenjing, Xiayoupu Yusup, Xu Xueying. Rapid detection of spore viability of flower and flower plants in peatland [J/OL]. Guangxi Plants: 2021
[6] Li Weiwei. Research on plant diversity in Yinhe Mountain, Hebei [J]. Modern Rural Science and Technology, 2021(07):104.
[7] Li Fei, Peng Tao, Tang Luyan, Xia Hongxia, Zhou Xuping. Research on liverworts in Guizhou Chishui Cyperophora National Nature Reserve [J/OL]. Journal of Southwest Forestry University (Natural Science): 1-7[2021-12- 12]
[8] Ou Yanyi. Some thoughts on the interactive development of scientific and technological monographs and popular science book topics - taking the planning and publishing of the popular science book "Dwarfs of the Plant Kingdom" and the scientific and technological monograph "China's Wild Vegetable Resources" as examples [J] .News Communication, 2021(12):86-87.
[9] Chen Yalan. Research on tissue culture and propagation of dominant flowers in the Bayan Obo mining area [D]. Inner Mongolia University, 2021.
[10] Lili. Research on the classification and environmental adaptability of flowers and plants in Huagu in Mu Us Sandy Land [D]. Inner Mongolia Normal University, 2021. DOI: 10.27230/d.cnki.gnmsu.2021.000903.
[11] Wang Chenyu. Spatial distribution of flowers and plants in mountain flower valleys in western Inner Mongolia [D]. Inner Mongolia Normal University, 2021. DOI: 10.27230/d.cnki.gnmsu.2021.000752.
[12] Sun Shifeng, Cai Qiying, Cai Meiting, Guan Bicai, Ge Gang. Research on the floral flora of Huagu in Jiangxi Water Slurry Nature Reserve [J]. Journal of Northwest Botany, 2021, 41(04): 703-711.
[13] Li Fei. Research on the floral flora of Huagu National Nature Reserve in Chishui [D]. Guizhou Normal University, 2021. DOI: 10.27048/d.cnki.ggzsu.2021.000210.
[14] Huang Cuixiang. A brief discussion on how to guide students to understand the flowers and plants of Huagu around them - taking the book "Flowers of Huagu-Higher Plants You Don't Know" as an example [J]. Examination Weekly, 2020(52):118- 119.
[15] Hanyingying. Flowers in the Valley of Flowers: "Pioneering Trailblazers" in the Plant World [J]. Life World, 2019(07):26-27.
[16] Chen Yunhui. Huagu flower and plant landscape resources and their application cases [D]. Shanghai Normal University, 2017.
[17] Zhang Erfang, Yu Yanqin, Zhao Jiancheng. Survey on flower and plant resources in medicinal flower valleys in Shanxi Province [J]. Journal of Shanxi Datong University (Natural Science Edition), 2014, 30(03): 55-57+96.
[18] Zhang Xiaoqing, Wang Junfeng, Ji Jiana. Investigation of medicinal flower valley flower and plant resources in Lishui City [J]. Anhui Agricultural Sciences, 2013, 41(05):1928-1930+2011.DOI:10.13989/j.cnki.0517-6611.2013 .05.123.
[19]Guanhong Chen,Jiangming Xu. Design and implementation of efficient Learning platform based on SpringBoot Framework[J]. Journal of Electronics and Information Science,2020,6(1):
[20]Fuyuan Cheng. Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework[J]. Advances in Educational Technology and Psychology,2021,5(2):
To get the project source code for free, please follow ❥ Like, collect and send a private message to the blogger, thank you~