springboot+mysql children's vaccine reservation system-computer graduation project source code 12222

Summary

With the development of society, all walks of life in society are taking advantage of the information age. The advantages and popularity of computers have necessitated the development of various information systems.

Children's vaccine appointment management, the main modules include viewing home page, site management (carousel chart, bulletin board) user management (administrator, system user) content management (information list, category list) and more management (appointment order, vaccine information, Appointment cancellation, vaccine purchase, vaccine return) and other functions. Administrators in the system are mainly responsible for storing and managing various types of information safely and effectively. They can also manage, update and maintain the system, and have corresponding operating permissions for the backend.

In order to realize various functions of children's vaccine appointment management, we need the strong support of the background database. A large amount of data such as the administrator's verification of registration information, the collected user information, and the associated information derived from the analysis are all managed by the database management system. In this article, the database server uses Mysql as the backend database, which closely connects the Web and the database. 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.

The development of this system makes it more convenient and faster to obtain children's vaccine reservation management information, and also makes children's vaccine reservation management information more systematic and orderly. The system interface is friendly and easy to operate.

Keywords : children’s vaccine appointment management; springboot; Mysql

Spring foo children's vaccine reservation system

Abstract

With the development of society, all walks of life are taking advantage of the information age. The advantages and popularity of computers make it necessary to develop various information systems.

The main modules of children's vaccine appointment management include viewing the home page, site management (broadcast map, bulletin board), user management (administrator, system user), content management (information list, classified list), more management (appointment order, vaccine information, cancellation of appointment, vaccine purchase, vaccine return), etc. The administrator in the system is mainly to store and manage all kinds of information safely and effectively, and can also manage, update and maintain the system, and have corresponding operation permissions for the background.

In order to realize various functions of children's vaccine appointment management, it needs strong support from the background database. The administrator verifies the registration information, collects the user information, and analyzes the associated information and other large amounts of data that are managed by the database management system. In this paper, MySQL is used as the background database on the database server side, making the Web and database closely linked. In the design process, it fully guarantees the good readability, practicability, extensibility, universality, convenience for later maintenance, convenient operation and simple page of the system code.

The development of this system makes it more convenient and efficient to obtain children's vaccine appointment management information, and also makes children's vaccine appointment management information more systematic and orderly. The system interface is friendly and easy to operate.

Key words: children's vaccine reservation management; springboot; Mysql

Table of contents

Summary

1 System Overview

1.1 Overview

1.2 Significance of the topic

1.3 Main content

2 System development environment

2.1 Spring Boot framework

2.2 Introduction to JAVA

2.3 Implementation method of accessing database

2.4 Two connection methods of the system to the MySQL database

2.5 MySql database

2.6 Vue.js main functions

3 Requirements analysis

3.1 Technical Feasibility: Technical Background     

3.2 Economic feasibility

3.3 Operational feasibility: 

3.4 System design rules

3.5 System process and logic

4 System outline design

4.1 Overview

4.2 System structure

4.3 Database design

4.3.1 Database entities

4.3.2 Database design table

4.4 Data sheet

5 System detailed design

5.1 Administrator function module

5.2 User function module

6 system test

6.1 Purpose of system testing

6.2 System testing method

6.3 Testing process

6.4 Test results

in conclusion

Acknowledgments

references

1 System Overview

1.1 Overview

With the rapid development of society, the impact of computers is comprehensive and profound. With the continuous improvement of people's living standards, people's requirements for the management of children's vaccine reservation information in daily life are also constantly increasing, and the number of people who need children's vaccine reservations is constantly increasing, making the development of children's vaccine reservation management a necessary and urgent matter. Children's vaccine reservation management mainly uses computers to manage the information required for children's vaccine reservation management to increase user choices. It also facilitates timely query and modification of user information and timely understanding of user information. Children's vaccine appointment management brings more convenience to users. The system cooperates with the database management system software to meet the needs of users.

1.2 Significance of the topic

With the development of global informatization, people's life pace is getting faster and faster, and people pay more and more attention to the timeliness of information. Traditional media based on traditional propaganda methods have long been unable to meet people's needs for access to information and convenience. Therefore, children's vaccine appointment management has gradually become the focus of people's attention. First of all, in the management of children's vaccine appointments, the real-time and convenient nature of obtaining information online is much higher than that of traditional media. Once the system is online, no matter where in the world the user is, as long as they can connect to the Internet, they can get the information they want as soon as possible.

The application of computer technology in modern management has made computers an important tool for people to apply modern technology. It can effectively solve the problem of convenient and comprehensive acquisition of information and improve efficiency.

1.3 Main content

Children's vaccine appointment management needs to be analyzed from the aspects of functions, data processes, feasibility, operating environment, etc. The database and functions of children's vaccine appointment management were designed in detail. The main interface design and related component design are analyzed, and the specific implementation of children's vaccine appointment management is introduced.

Java technology is used to obtain data from the database and write data to the database, so that the system can directly perform various operations on the database and add dynamic content to the web page, thus realizing various basic functions required for children's vaccine appointment management.

2 System development environment

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.1 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.

2.2 Introduction to JAVA

Java mainly uses CORBA technology and security model to protect data in Internet applications. It also provides full support for EJB (Enterprise JavaBeans), java servlet API, SPRINGBOOT (java server pages), and XML technology. Java is a computer programming language with three main features: encapsulation, inheritance, and polymorphism. It is widely used in enterprise web application development and mobile application development. The difference between the Java language and general compilers and literal translation is that Java first converts the source code into bytecode and then converts it into an executable file for the JVM, which can run on a variety of different JVMs. Therefore, its cross-platform nature is achieved. While this made Java very slow in its early days, it has improved as Java has developed.

2.3 Implementation method of accessing database

(1) First, introduce the basic steps of web database search on the network:

Step 1: Check the consumer’s data,

Step 2: You must establish a connection to the database;

Step 3: Search the database;

Step 4: Structure of data;

Step 5: The user's results are shown.

(2) System until my MYSQL5.0 PHP integrated development environment, such as using WAMP server is turned on, and it is easier to access the database report development environment:

A connection to the MySQL database server Mysql_connect-;

Syntax: resource mysql_connect(host, username, password);

Please select the database: mysql_select_db (the name of the database link identifier);

Close the database: mysql_close();

2.4 Two connection methods of the system to the MySQL database

Active MySQL/MySQL library, or using the ODBC interface, the MySQL database is a two-way link. Permanent and non-permanent connections.

(1) Permanent connection: The biggest advantage of a more permanent connection request is that it can be very effective for the client to stand in close contact, even better when connecting to the MySQL server. The page is drafted every time a child is connected in the process, not just at any time, only during the lifetime of the connection request to the MySQL server, once connected. This sub-process is to establish a separate connection to the server which can be permanent.

(2) Non-permanent connection: it is a short circuit. The submission goes down to the web server, the server handles the request and sends the requested page to the browser you want to send to the client, and then the connection drops. For most websites it is often efficient in relation to the connections used but in most cases it is a full time to avoid any problems and to increase the capacity the server is hosting.

2.5 MySql database

The language of Mysql is unstructured and users can work on the data. Because Mysql's language and structure are relatively simple, but its functions and amount of stored information are powerful, its speed, reliability and adaptability have attracted much attention and have been widely used. The role of Mysql database in the programming process is very extensive, bringing convenience to users for data query. The application characteristics of Mysql database: strong flexibility, powerful functions, and the language is relatively simple. 

Data process analysis is primarily a repository of data storage, which is performed on a computer rather than a real-life repository. Database management mainly includes data storage, modification and addition, and the establishment of data tables. 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.

3 Requirements analysis

3.1 Technical Feasibility: Technical Background     

Children's vaccine appointment management is developed and used in the Windows operating system, and the current performance of PCs can already be used as web servers 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 Java 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 the technical language and combined with the 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, which ensures that data information can be backed up in a timely manner, and the entire system can Safe and effective operation.

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 Economic feasibility

The market research conducted before the development of children's vaccine appointment management and other management systems related to it are free of charge. All investigations and research are done by the developers themselves, and all work is done by themselves. When encountering problems that are difficult to solve by themselves, most of them solve related problems with the help of their instructors and classmates. Therefore, the development of children's vaccine appointment management is completely economically feasible without any expenses.

Using relatively mature technology, the system is developed based on Java and uses Mysql database. Therefore, the system does not require high development manpower and financial resources and is economically feasible.

3.3 Operational feasibility: 

Operability is mainly about the user experience after the design of children's vaccine appointment management is completed, and the administrator can manage relevant data information at any time through the system, and both administrator and user roles can be entered simply and clearly Go to your own system interface, and you can operate function modules simply and clearly through the interface navigation menu, which facilitates user information operation needs and administrators to manage data information. For the operation of the system, no professional is required to directly operate and manage the functional modules, so the operability of children's vaccine appointment management is completely possible. The operation 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.4 System design rules

This children's vaccine appointment management is developed using Java technology and Mysql database, which fully ensures the stability and integrity of the system.

The design ideas and implementation of children's vaccine appointment management are as follows:

The operation is simple and convenient, and the system interface is safe and good: the simple and clear page layout makes it easy to query relevant information about children's vaccine appointment management.

2. Instant visibility: The processing of children's vaccine appointment management information will be immediately available for query at the corresponding location, thereby realizing the system function of "instant release and immediate effect".

3. Complete functions: can manage home page, site management (carousel chart, bulletin board) user management (administrator, system user) content management (information list, category list) more management (reservation orders, vaccine information, cancellation) Appointment, vaccine purchase, vaccine return) module modification and maintenance operations.

3.5 System process and logic

System business flow chart, as shown in the figure:

Figure 3-1 Login flow chart

Figure 3-2 Add information flow chart

Figure 3-3 Registration information flow chart

4 System outline design

4.1 Overview

Children's vaccine reservation management is based on the Web service model, which is a model structure suitable for the Internet environment. As long as users can connect to the Internet, they can use this system without being restricted by time or location. The working principle diagram of children’s vaccine appointment management is shown in Figure 4-1:

Figure 4-1 System working principle diagram

4.2 System structure

This system architecture website system, the specific functions of this system are as follows:

Figure 4-2 System functional structure diagram

The entire system is composed of multiple functional modules. All functional modules should be listed one by one, and then functional design should be carried out one by one so that each module has a corresponding functional design, and then the overall system design should be carried out. .

System function structure diagram, as shown in Figure 4-3:

Figure 4-3 Administrator function structure diagram

4.3. Database design

4.3.1 Database entities

Administrator information structure diagram, as shown in Figure 4-5:

 Figure 4-5 Administrator information entity structure diagram

User information entity attribute diagram, as shown in Figure 4-6:

Figure 4-6 User information entity attribute diagram

The vaccine information management entity attribute diagram is shown in Figure 4-7.

Figure 4-7 Vaccine information entity attribute diagram

4.3.2 Database design table

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.

cancel_reservation

Field Name

type

length

not null

primary key

Field description

cancel_reservation_id

int

11

yes

primary key

Cancel reservation ID

order_no

varchar

64

no

order number

vaccine_no

varchar

64

no

vaccine number

vaccine_name

varchar

64

no

Vaccine name

vaccine_price

int

11

no

vaccine price

inoculation_unit

varchar

64

no

vaccination unit

company_address

varchar

64

no

Unit address

inoculation_doctor

varchar

64

no

vaccination doctor

inoculation_time

varchar

64

no

Vaccination time

user_no

int

11

no

user ID

user_name

varchar

64

no

username

reason_for_cancellation

varchar

64

no

Reason for Cancellation

examine_state

varchar

16

yes

Approval Status

examine_reply

varchar

16

no

moderation reply

recommend

int

11

yes

Intelligent Recommendation

create_time

datetime

0

yes

creation time

update_time

timestamp

0

yes

Update time

chart

Field Name

type

length

not null

primary key

Field description

chart_id

int

10

yes

primary key

Chat ID

user_id

int

11

yes

User ID

title

varchar

64

no

title

content

longtext

0

yes

content

nickname

varchar

32

yes

Nick name

avatar

varchar

255

no

avatar

create_time

timestamp

0

yes

creation time

update_time

timestamp

0

yes

Update time

reply_id

int

11

yes

Reply ID

reservation_order

Field Name

type

length

not null

primary key

Field description

reservation_order_id

int

11

yes

primary key

Reservation order ID

order_no

varchar

64

no

order number

vaccine_no

varchar

64

no

vaccine number

vaccine_name

varchar

64

no

Vaccine name

vaccine_price

int

11

no

vaccine price

inoculation_unit

varchar

64

no

vaccination unit

company_address

varchar

64

no

Unit address

inoculation_doctor

varchar

64

no

vaccination doctor

inoculation_time

varchar

64

no

Vaccination time

user_no

int

11

no

user ID

user_name

varchar

64

no

username

name_of_vaccinator

varchar

64

no

Name of vaccinator

inoculating_persons_age

varchar

64

no

Age of vaccinated person

inoculation_quantity

int

11

no

Number of vaccinations

contact_number

varchar

16

no

contact number

pay_state

varchar

16

yes

Payment status

pay_type

varchar

16

no

Payment type WeChat, Alipay, online banking

recommend

int

11

yes

Intelligent Recommendation

create_time

datetime

0

yes

creation time

update_time

timestamp

0

yes

Update time

slides

Field Name

type

length

not null

primary key

Field description

slides_id

int

10

yes

primary key

Carousel ID

title

varchar

64

no

title

content

varchar

255

no

content

url

varchar

255

no

Link

img

varchar

255

no

carousel

hits

int

10

yes

Clicks

create_time

timestamp

0

yes

creation time

update_time

timestamp

0

yes

Update time

system_user

Field Name

type

length

not null

primary key

Field description

system_user_id

int

11

yes

primary key

System user ID

user_no

varchar

64

yes

user ID

user_name

varchar

64

no

username

examine_state

varchar

16

yes

Approval Status

recommend

int

11

yes

Intelligent Recommendation

user_id

int

11

yes

User ID

create_time

datetime

0

yes

creation time

update_time

timestamp

0

yes

Update time

upload

Field Name

type

length

not null

primary key

Field description

upload_id

int

11

yes

primary key

Upload ID

name

varchar

64

no

file name

path

varchar

255

no

access path

file

varchar

255

no

file path

display

varchar

255

no

display order

father_id

int

11

no

Parent ID

dir

varchar

255

no

folder

type

varchar

32

no

file type

vaccine_depletion

Field Name

type

length

not null

primary key

Field description

vaccine_depletion_id

int

11

yes

primary key

Vaccine Return ID

vaccine_no

varchar

64

no

vaccine number

vaccine_name

varchar

64

no

Vaccine name

type_of_vaccine

varchar

64

no

Vaccine type

vaccine_details

text

0

no

Vaccine details

reason_for_return

text

0

no

reasons for return

return_quantity

int

11

no

Return quantity

return_time

date

0

退货时间

vaccine_unit_price

int

11

疫苗单价

return_amount

varchar

64

退货金额

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

vaccine_information

字段名称

类型

长度

不是null

主键

字段说明

vaccine_information_id

int

11

主键

疫苗信息ID

vaccine_no

varchar

64

疫苗编号

vaccine_name

varchar

64

疫苗名称

type_of_vaccine

varchar

64

疫苗种类

vaccine_pictures

varchar

255

疫苗图片

vaccine_details

text

0

疫苗详情

inoculated_population

varchar

64

接种人群

vaccine_price

int

11

疫苗价格

vaccine_inventory

int

11

疫苗库存

inoculation_unit

varchar

64

接种单位

company_address

varchar

64

单位地址

unit_details

varchar

64

单位详情

inoculation_doctor

varchar

64

接种医生

doctor_profile

varchar

64

医生简介

inoculation_time

varchar

64

接种时间

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

vaccine_procurement

字段名称

类型

长度

不是null

主键

字段说明

vaccine_procurement_id

int

11

主键

疫苗采购ID

vaccine_no

varchar

64

疫苗编号

vaccine_name

varchar

64

疫苗名称

type_of_vaccine

varchar

64

疫苗种类

vaccine_details

text

0

疫苗详情

purchase_quantity

int

11

进货数量

purchase_unit_price

int

11

进货单价

total_amount

varchar

64

进货金额

warehousing_time

date

0

进货时间

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

5 系统详细设计   

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管理员功能首页界面图

首页代码如下:

  @RequestMapping("/get_obj")

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

        Query select = service.select(service.readQuery(request), service.readConfig(request));

        List resultList = select.getResultList();

        if (resultList.size() > 0) {

            JSONObject jsonObject = new JSONObject();

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

            return success(jsonObject);

        } else {

            return success(null);

        }

}

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

        StringBuffer sql = new StringBuffer("select ");

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

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

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

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

        }

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

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

        }

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

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

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

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

        }

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

        return runEntitySql(sql.toString());

    }

用户管理,在用户管理页面可以查看等索引、用户账号、密码、用户姓名、性别、年龄、联系电话、电子邮箱、身份证号、家庭住址、个人照片等信息,并可根据需要进行修改或删除等操作,如图5-3所示。

图5-3用户管理界面图

用户管理代码如下:

  @RequestMapping("/get_obj")

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

        Query select = service.select(service.readQuery(request), service.readConfig(request));

        List resultList = select.getResultList();

        if (resultList.size() > 0) {

            JSONObject jsonObject = new JSONObject();

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

            return success(jsonObject);

        } else {

            return success(null);

        }

}

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

        StringBuffer sql = new StringBuffer("select ");

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

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

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

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

        }

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

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

        }

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

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

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

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

        }

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

        return runEntitySql(sql.toString());

    }

疫苗信息,在疫苗信息页面可以查看索引、疫苗编号、疫苗名称、疫苗种类、疫苗详情、接种人群等信息,并可根据需要进行修改或删除等操作,如图5-4所示。

图5-4疫苗信息界面图

疫苗信息代码如下:

  @RequestMapping("/get_list")

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

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

        return success(map);

}

预约订单信息,在预约订单信息页面可以查看索引、用户编号、订单编号、疫苗编号、疫苗名称、疫苗价格、接种单位、接种医生等信息,并可根据需要进行修改或删除等操作,如图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-9所示。

图5-9用户功能界面图

疫苗信息,在疫苗信息页面可以查看疫苗编号、疫苗名称、疫苗图片等信息操作,如图5-10所示。

图5-10疫苗信息界面图

预约订单管理,在预约订单管理页面可以查看索引、疫苗名称、疫苗编号、接种人群、疫苗价格、接种单位、单位地址、接种医生、接种时间等信息,如图5-11所示。

图5-11预约订单界面图

6 系统测试

6.1系统测试的目的 

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

本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。 

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

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

6.2系统测试方法 

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

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

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

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

6.3测试过程

在软件的测试过程中,通常测试人员需要针对不同的功能模块设计多种测试用例。通过测试用例能够及时发现代码业务逻辑上是否与真实的业务逻辑相对应,及时发现代码上或逻辑上的缺陷,以此来来完善系统,提高软件产品的质量,使软件具有良好的用户体验。

注册测试用例表如下所示。

表6-1注册测试用例

测试性能

新用户注册

用例目的

测试系统新用户个人信息注册功能的功能和安全性

前提条件

进入注册页面填写个人信息

输入条件

预期输出

实际情况

各项基本信息输入不完整

不允许注册,无法点击注册按钮

一致

填写已存在的用户名

系统显示出提示信息,要求重新填写

一致

两次密码输入不一致

系统显示出提示信息,要求重新填写

一致

填写的各项信息没有符合提示的长度和字符要求

系统显示出提示信息,要求重新填写

一致

胡乱填写电话号码

收不到验证码

一致

填写验证码与收到的不一致

系统显示提示信息告知用户验证码错误,不予注册

一致

登录测试用例表如下所示。

表6-2登录测试用例

测试性能

用户或操作员登录系统

用例目的

测试用户或操作员登录系统时功能是否正常

前提条件

进入用户登录页面或操作员登录页面

输入条件

预期输出

实际情况

各项信息不予填写,直接点击登陆按钮

不允许登录,提示填写账号相关信息

一致

填写错误的登录名或密码后点击登录系统

提示用户名或密码错误,要求重新填写进行登录

一致

填写与验证码信息不一致的信息

系统显示出提示信息,表明验证码错误,要求重新填写

一致

6.4 测试结果

经过对一系列测试结果的有效分析,本平台开发系统符合用户的要求和需求。所有的基本功能相对齐全,操作起来简单方便,测试系统性能良好,作为大众化系统使用是比较值得推广宣传的。


结论

本系统通过对java和Mysql数据库的简介,从硬件和软件两反面说明了儿童疫苗预约管理的可行性,本文结论及研究成果如下:实现了java与Mysql相结合构建的儿童疫苗预约管理,网站可以响应式展示。通过本次儿童疫苗预约管理的研究与实现,我感到学海无涯,学习是没有终点的,而且实践出真知,只有多动手才能尽快掌握它,经验对系统的开发非常重要,经验不足,就难免会有许多考虑不周之处。比如要有美观的界面,更完善的功能,才能吸引更多的用户。

由于在此之前对于java知识没有深入了解,所以从一开始就碰到许多困难,例如一开始的页面显示不规范、数据库连接有问题已经无法实现参数的传递等等,不过通过在网上寻找有关资料以及同学的帮助下最后都得到了解决,在此过程中,我不仅学到了很多知识,也提高了自己解决问题的能力,尤其是学会如何从大量的信息中筛选出所需有用的信息,同时我更加深刻的体会到了,虽然书本上的大部分知识都是有价值,正确的,但实际上每个人编程的思路和对数据处理的方法、思想都是不同的,这就要求我们一定要通过实践才能找到解决问题的方案。在此次毕业设计活动中,我不断的提高了自己,也得到了宝贵的经验,我相信这些对我以后的发展都会有很大帮助。

通过这次儿童疫苗预约管理的开发,我参考了很多相关系统的例子,取长补短,吸取了其他系统的长处,逐步对该系统进行了完善,但是该系统还是有很多的不足之处,有待以后进一步学习。

实践证明,儿童疫苗预约管理有着非常好的发展前景,经过测试运行,系统各项功能都十分完善,界面漂亮,使用方便,操作容易,在技术理论上已经成熟。

致 谢

毕业设计结束的同时也意味着四年的大学生活就要结束了。儿童疫苗预约管理的完成以及如何在系统运行过程中实现的更好,这其中付出了很大的努力,这段时光将会终身难忘。 

在毕业设计的这一段时间里,离不开导师的细心指导,还有同学们的热情帮助,有时候几个同学在一起讨论系统中的某个功能模块如何实现,如何实现的更好,或是问题没得到有效的解决,就会没有心思做其他的事情,让我们对学习充满了动力。

在毕业设计即将结束之时,首先要感谢我的指导老师,谢谢您在毕业设计和毕业论文中对我的指导。在您的细心指导下我才能快速的掌握系统的相关功能,在您的大力帮助下我才能将课本上的知识与自己的项目结合,真正的做到学以致用。感谢您经常牺牲自己的休息时间,利用其丰富的教学和项目经验对我进行指导。课堂上,您教会我们如何学习、教会我们新的知识,在课下,您又像朋友一样亲切,教会了我很多道理,让我意识到先做人、后做事。感谢所有教过我的老师,为我倾注了大量的心血,正是你们的谆谆教诲、严谨教学才使我能顺利的完成学业,再此向你们表示深深的感谢。感谢大学里教过我的每一位老师,真心祝福您们。

在这里还得感谢我的战友们,也就是同学们对我的大力支持及帮助。正是因为有你们的不断帮助、鼓励,熬夜通宵,不停的调试、测试程序,给我带来了极大的动力,才能最终完成网站的运行。我们在一起交流、谈论的时光,都将是我们在通往未来道路上的宝贵财富。我要深深地感谢你们!

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

最后,我要向牺牲了休息时间来对本文进行审阅,评议和参与论文答辩的各位老师表示深深的感谢。在此,衷心的谢谢您们!


参考文献

[1]徐佩.新时期计算机软件开发技术的应用及发展趋势[J].农家参谋,2019(08):167.

[2]张帅,崔婀娜,魏立波.互联网+健康在线服务平台的设计与实现[J].科技创新与应用,2019(10):91-92.

[3]谷利国,陈存田,张甲瑞.基于B/S模式的人事教育信息管理系统的分析与设计[J].电脑知识与技术,2019,15(10):58-59.

[4]胥新政,强毅.基于JSP的常用金属材料标准检索平台开发设计[J].制造业自动化,2019,41(03):41-43+69.

[5]王祖维,南淮耀,张英.“互联网+”视域下的高校学生公寓管理系统设计与实现——以沈阳师范大学为例[J].现代商贸工业,2019,40(08):187-188.

[6]廖明华,齐攀.学生职业能力测评管理系统的设计与实现[J].广东交通职业技术学院学报,2019,18(01):48-52.

[7]李冬冬,刘华明,毕学慧,王秀友.旧衣申领系统的设计与实现[J].电脑知识与技术,2019,15(08):47-50.

[8]李庆年.“互联网+”视域下的人才招聘管理系统设计与实现[J].国际公关,2019(03):164-165.

[9]刘婷,彭焕峰,邵淑婷.基于云平台的高校监考管理系统[J].电脑知识与技术,2019,15(07):91-92.

[10]赵丙秀.基于百度AI平台的Web人脸注册和登录系统的实现[J].电脑知识与技术,2019,15(07):114-115.

[11]戴昭颖,尹涛.钢铁行业成本预算系统开发应用实践[J].电子技术与软件工程,2019(04):29-30.

[12]曹灿,刘志刚.基于SSH和Layui的工程科学前沿与实践系统[J].工业控制计算机,2019,32(02):91-92+96.

[13]谢路.基于Web的考务管理系统设计与实现[J].福建电脑,2019,35(01):136-137.

[14]张继东.MySQL数据库基于JSP的访问技术[J/OL].电子技术与软件工程,2017,(15):169(2017-08-03).

[15] Han Sifan. Basic applications of JSP and HTML in Web development [J]. Science and Technology Innovation, 2020(14):71-72.

[16]NastitiAndini,DaehaKim,JongAhnChun.Operationalsoilmoisturemodelingusingamulti-stageapproachbasedonthegeneralizedcomplementaryprinciple[J].AgriculturalWaterManagement,2020,231.

[17] ADTitisari, D. Phillips, IWWarmada, Hartono, A. Idrus.40Ar/39ArgeochronologyofthePongkorlowsulfidationepithermalgoldmineralisation, WestJava, Indonesia[J].OreGeologyReviews,2020,119.

[18]FranciscoOrtin,OscarRodriguez-Prieto,NicolasPascual,MiguelGarcia.HeterogeneoustreestructureclassificationtolabelJavaprogrammersaccordingtotheirexpertiselevel[J].FutureGenerationComputerSystems,2020,105.

[19]SatyaKrismatama,IndahRiyantini,IwangGumilar,LantunParadhitaDewanti.SelectivityofFishingGearforScomberomorusguttatus(Bloch&Schneider,1801)CommoditiesinPangandaranFishingGround,WestJava[J].AsianJournalofFisheriesandAquaticResearch,2020.

[20]ZhongXiangfu,PlaAlbert,RaynerSimon.Jasmine:aJavapipelineforisomiRcharacterizationinmiRNA-Seqdata[J].Bioinformatics,2020

To get 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/vx2_Biye_Design/article/details/133136015