(Source code attached) Springboot Pet Hospital Appointment Registration System Computer Completed 13031

Summary

Nowadays in China, with the gradual improvement of people's quality of life and the increasing consumption power of the people, various domestic animals have gradually become more and more intimate life partners of human beings. Moreover, today's social competition is extremely fierce, and people's life pace is becoming more and more rapid and tense. Lively and cute little pets can just eliminate the inner loneliness of people who are in a tense life pace, and relieve the pressure caused by work. , Add fun to life. However, advantages often come with disadvantages, and problems such as stray pets and pet infectious diseases also grow. Therefore, a platform is needed that can not only meet the needs of pet lovers, but also help solve the problems caused by raising pets. Balance the pros and cons.

This pet hospital appointment registration system allows pet lovers to know the hospital number source information anytime and anywhere. Registered users can also easily make reservations for pet medical services and other services. It is very convenient to use; administrator users can also easily manage the website. Various content on the website, the customization function is very powerful.

This article uses springboot as the development technology to implement a pet hospital appointment registration system . The main users of the pet hospital appointment registration system are divided into administrators, pet doctors, and pet owners ; the main functions include: homepage, system users (administrators, pet doctors, pet owners), module management (pet information, doctor information, appointment Registration, diagnostic report, daily health, pet log, number source management), personal center and other functions. Through the design of these functional modules, the entire pet hospital appointment registration system process is basically realized .

Specifically in the system design, the springboot structure is adopted , and the Mysql database is used in the background . It is a very excellent pet hospital appointment registration system .

Keywords: pet hospital appointment registration system;springboottechnology;Mysqldatabase


Abstract

Nowadays in China, with the gradual improvement of people's quality of life and the increasing consumption capacity of the people, various domesticated small animals have gradually become increasingly intimate life companions for humans. Moreover, with the increasingly fierce competition in today's society, people's pace of life is becoming increasingly rapid and tense, and lively and cute little pets can just eliminate inner loneliness for people in a tense pace of life, relieve the pressure brought by work, and add fun to life. But the advantages often come with the disadvantages, and problems such as stray pets and pet infectious diseases also grow insidiously. Therefore, it is necessary to have a platform that can not only meet the needs of pet enthusiasts, but also be conducive to solving the problems caused by pet rearing, in order to balance the benefits and drawbacks.

This pet hospital appointment and registration system allows pet enthusiasts to access hospital account information anytime and anywhere. Registered users can also conveniently make appointments for pet medical and other services, making it very convenient to use; Administrator users can also easily manage various contents on the website, and the customization function is very powerful.

This article uses spring boot as the development technology to implement a pet hospital appointment and registration system. The main users of the pet hospital appointment and registration system are administrators, pet doctors, and pet owners; The main functions include: homepage, system users (administrators, pet doctors, pet owners), module management (pet information, doctor information, appointment registration, diagnostic reports, daily health, pet logs, account source management), personal center, and other functions. Through the design of these functional modules, the entire process of the pet hospital appointment and registration system has been basically implemented.

Specifically, in terms of system design, it adopts the structure of spring boot and uses MySQL database in the backend, making it an excellent pet hospital appointment and registration system.

Key words: Pet hospital appointment and registration system; Springboot technology; MySQL database

Table of contents

Summary

Abstract

1 Overview

1.1 Background and significance of the topic

1.2 Research status at home and abroad

1.3 Research content

2 System development environment

2.1 Development technology

2.2 Introduction to spring boot framework

2.3 Mysql description

2.4 Working principle of B/S system

2.5 Introduction to MVVM pattern

2.6 Java description

3 System analysis

3.1 Feasibility analysis

3.2 System process analysis

3.3 System use case analysis

4 System design

4.1 System Overview

4.2 System structure design

4.3 Database design

5 systems detailed design

5.1 Registration module

5.2 Login/logout module

5.3 Profile module

5.4 Pet information module

5.5 Appointment registration module

5.6 Password modification module

5.7Doctor Management Module

5.8 source management module

5.9 Daily health management module

Chapter 6 System Testing

6.1 Test Overview

6.2 Testing process

6.3 Test results

in conclusion

Thanks

Finally, I would like to express my heartfelt thanks to all the teachers who read and reviewed this paper!

references

1 Overview

1.1 Background and significance of the topic

At present, many pet hospital appointment registration systems generally adopt purely manual management. The disadvantage of this method is that the people involved in management have different cultural levels and different handwriting, which will cause inconvenience in communicating information to each other. Moreover, paper information transmission media has a great weakness in that it is easily damaged, causing information loss. In the current information age, any pet hospital needs a practical pet hospital appointment registration system to standardize the management of pet hospital information. This will greatly improve the management level of pet hospitals, optimize resources, and maximize benefits.

Some pet hospital appointment registration system management software now uses a variety of technologies, but most pet hospital appointment registration systems are mainly used in key departments of large pet hospitals. As for small pet hospitals, not many use the pet hospital appointment registration system to manage daily business. In view of the huge and basic needs of pet hospital appointment registration system software, a good pet hospital appointment registration system software must be fully functional, easy to operate, and display a simple and clear operation interface to users. While improving the functions, the flexibility and security of the system must be taken into consideration.

The advantages of the pet hospital appointment registration system are mainly reflected in three aspects:

(1) The pet hospital appointment registration system is paperless, environmentally friendly and convenient. The traditional pet hospital appointment registration system is manually recorded and archived by employees. This traditional paper pet hospital appointment registration system management will consume a lot of physical strength, and secondly, it will also require a lot of energy. The paperless pet hospital appointment registration system only requires a click of the mouse in front of the computer, which consumes almost no physical energy, and is better than the traditional pet hospital appointment registration system in terms of environmental protection, efficiency, and targeted daily business management . Much more scientific.

(2) Scientific management, safe and reliable. The traditional pet hospital appointment registration system management method often causes information to be lost or defaced due to various reasons, which brings great inconvenience to the pet hospital appointment registration system and daily business. As for the pet hospital appointment registration system , as long as the system database is well protected, the above problems can be easily solved.

(3) Simplify work and promote comprehensive development in other aspects. Due to the intervention of the pet hospital appointment registration system , doctors can free up more time to provide more targeted and personalized medical services, so that each patient has the opportunity to enjoy more services.

1.2 Research status at home and abroad

With the development of the economy, people's living standards continue to progress and improve, and more and more families are starting to keep pets. At the same time, pet hygiene, epidemic prevention, diagnosis and treatment have also received more and more attention from people, and derived from this The emerging pet hospitals are also developing more and more rapidly.

Pet hospitals have already formed part of the national economy as an industry in developed countries in Europe and the United States. Due to the high degree of informatization in developed countries in Europe and the United States, information technology and various research results have been applied to all walks of life earlier, and pet hospitals have long been realized in management . information construction.

At present, informatization has become the theme of global development. The demand for information in countries around the world is growing rapidly. Information products and information services are widely used in various countries, regions, enterprises, units, families, and individuals.

As early as the 1980s, developed countries had already begun information construction work. At present, developed countries in Europe and the United States have already established pet electronic files for pets, which play an important management role in pet epidemic prevention, hygiene, safety, etc. At the same time, various new technologies are continuously used in the daily management of pet hospitals. Pet hospitals are in Management has already achieved standardization and standardization.

Compared with developed countries in Europe and the United States, China's informatization construction started in the early 1990s. The degree of informatization is still at a low level, and the development is very uneven. The informatization construction of most pet hospitals is still centered on pricing and charging . The management system lacks the information management of other businesses, resulting in a lot of work still being done manually, which has caused many problems for the current information management of pet hospitals.

With the continuous improvement of the application of information technology in the pet hospital industry in China, the more developed cities on the southeast coast have realized the informatization of pet hospital management, but it is not completely universal. Most underdeveloped areas, especially small community pet hospitals , Still in the traditional management style.

Although there is still a big gap with developed countries in Europe and the United States, in the "Twelfth Five-Year Plan", China has proposed the ~3521 Project of information construction, and the information construction of China's pet hospitals has ushered in a good opportunity for development .

The continuous informatization construction of pet hospitals is of great significance to the development of the pet medical and health industry. It can not only improve the service quality of pet hospitals, but also facilitate the management of pet hospitals. More importantly, it can ensure pet epidemic prevention, hygiene and safety. of great significance.

1.3 Research content

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 pet adoption management system through label classification management and other methods, so as to achieve the management of the pet adoption management 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.

2 System development environment

2.1  Development technology

The front-end part of this system is developed based on the MVVM model, using the B/S mode, and the back-end part is developed based on the Java springboot framework.

Front-end part: The front-end framework uses the popular progressive JavaScript framework Vue.js. Use Vue-Router and Vuex to realize dynamic routing and global state management, Ajax to realize front-end and back-end communication, Element UI component library and Lay UI component library to quickly prototype the page. The project front-end is responsive through grid layout, which can be adapted to PC and tablet. Perfect layout display for different screen sizes such as desktop and mobile phones.

Back-end part: Use springboot as the development framework, and integrate MyBatis, Redis and other related technologies.

2.2 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. Spring framework has 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.3 Mysql description

Now the Mysql database can support many students on the network, and can also adapt to the deployment or configuration of customer servers and servers. Our servers and clients here are actually a software concept, and the computer hardware we use is also There is no one-to-one correspondence with them [3].

Mysql is a very popular relational database management system. It has always been the leader. It is not only very powerful, but also very convenient to use. Mysql's cross-platform capabilities are also very good. Software developers like it very much. of these powerful advantages. Different from other relational databases, it has its own set of solutions for database management. Database management is achieved by setting corresponding permissions and roles for students. It can be seen that Mysql is a database management software suitable for high throughput, high reliability and high efficiency [4].

Advantage 1: Mysql sets different permissions for students with different identities to complete different business logic, which makes Mysql far beyond other relational databases in terms of security and integrity.

Advantage 2: Mysql can also support data types such as animations, graphics and sounds, which shows that Mysql can also support multiple data types.

Advantage three: Mysql can also be developed on multiple platforms, and multiple programming languages ​​for software development can operate the Mysql database.

2.4 Working principle of B/S system

The TB/S architecture adopts the working mode of browser request and server response.

Users can access text, data, pictures, animations, video on demand, sounds and other information generated by Web servers on the Internet through a browser;

Each Web server can be connected to the database server in various ways, and a large amount of data is actually stored in the database server;

Download the program from the Web server to the local for execution. If you encounter instructions related to the database during the download process, the Web server will hand it over to the database server for interpretation and execution, and return it to the Web server, and the Web server will return it to the user. In this structure, many networks are connected together to form a huge network, that is, the global network. Each enterprise can build its own Internet based on this structure.

In the B/S mode, the user requests access through the browser to many servers distributed on the network. The browser's request is processed by the server, and the processing results and corresponding information are returned to the browser. Other data All processing and requests are completed by the Web Server. Through this framework structure and the browser embedded inside the operating system, this structure has become the mainstream structure pattern of today's software applications.

2.5  Introduction to 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.6 Java description

Java is a platform computer language technology that mainly includes two parts: JAVA Virtual Machine (JVM) and JAVA API (Application Program Interface, application interface programming).

I personally have a deep understanding of the two languages: C language is more of a creation tool, while Java is more of a usage tool. We know that many of the underlying implementations of Java are actually implemented in C language, so we can see this even more. In the process of using Java, we need to be able to use API documentation, which can be regarded as Java usage instructions. The object-oriented characteristics of Java allow it to have many encapsulated objects. When using it, we only need to know the behavior of the object (which is also the method of object encapsulation). Here we must pay attention to whether the method is a static method or a regular method, because when calling, there is a gap Very big. In the future, there will definitely be a programming language that is more user-friendly and easier to develop than Java, but it will definitely not be completely different from the Java language. As the saying goes, "You can use a stone from another mountain to attack a jade." Learning Java well can also make it easier for us to learn better. other languages.

3 System analysis

The so-called system analysis means that demand personnel obtain information through communication with users , and then display this information to users and developers in the form of demand specifications. In the long history of the development of software functions, for a long time, especially in the beginning, the importance of requirements analysis was not recognized by people. For example, at that time, the American company IBM developed an information management system for British Telecom. Development started without clarity, and the initial construction period was one year. Due to unclear requirements, the construction period was delayed by more than half a year, causing huge losses. This situation also exists in many of our software companies. They develop while developing, and even without clear communication with users , they directly copy the same type of projects and make changes. As a result, changes are made again when the system is accepted, resulting in a loss of manpower and material resources. A huge waste. The reason for all these consequences is that the demand acquisition is not timely, unclear, and incomplete.

3.1 Feasibility analysis

The main goal of the pet hospital appointment registration system is to realize online related information management services. After determining the goals, we conduct a feasibility analysis on whether the goals of this system can be achieved from the following four aspects.

3.1.1 Technical feasibility

The pet hospital appointment registration system mainly uses Java technology, based on B/S structure and Mysql database. The development of applications requires complete functions, simple use, and the establishment of a database with complete, safe and stable data. The development technology of the pet hospital appointment registration system is highly feasible, and the developers have mastered certain development technologies, so the development of the system is feasible.

3.1.2 Operational feasibility

The login interface of the pet hospital appointment registration system is simple and easy to operate. It uses a common interface window to log in to the interface and perform access operations through a computer. Members can access the system as long as they have used computers. The development of this system uses Java language and is based on B/S structure. These development environments make the system more complete. This system has the characteristics of easy operation, easy management, good interactivity, and is very simple in operation. Therefore this system can be developed.

3.1.3 Economic feasibility

The pet hospital appointment registration system is based on Java mode and uses Mysql database to store data. The required hardware and software environment are easy to purchase on the market. Program development mainly involves the development and maintenance of the management system. Therefore, the program does not require high development manpower and financial resources, and the system is not very complex, the development cycle is short, and it has high economic feasibility.

3.1.4 Legal feasibility

This pet hospital appointment registration system is a self-designed management system and has great practical significance. Because both the software and the database use open source code, the development and design of this system does not have problems such as infringement and is completely legally feasible.

In summary, the pet hospital appointment registration system is technically, economically, operationally and legally feasible, and it is feasible to develop this program.

3.2 System process analysis

3.2.1 System development process

When developing the pet hospital appointment registration system , we first conduct a demand analysis, and then conduct an overall design plan for the system, design system functional modules, database selection, etc. The development process of this system is shown in Figure 3-1.

Figure 3-1 System development flow chart

3.2.2 User login process

In order to ensure the security of the system, if you want to use this system to manage system information, you must first log in to the system. As shown in Figure 3-2.

Figure 3-2 Login flow chart

3.2.3 System operation process

After the user opens and enters the system, the login interface will be displayed first, and the correct user name and password will be entered. The system will automatically detect the information. If the information is correct, the user will enter the system function interface and perform operations. Otherwise, an error will be displayed and the user cannot log in. Operation process As shown in Figure 3-3.

Figure 3-3 System operation flow chart

3.2.4 Add information process

Administrators can add pet information, etc. Users can add information within their own authority. After entering the information, the system will verify the entered information and data. If the information is correct, it will be added to the database. If the information is incorrect, you will be prompted to re-enter the information. The process of adding information is shown in Figure 3-4.

Figure 3-4 Add information flow chart

3.2.5 Modify information flow

Administrators can modify pet information, etc. Users can modify information within their own authority. First, enter the modification information interface and enter the modification information data. The system will judge and verify the data. If the modified information is legal, the modification will be successful and the information will be updated to Database, if the information is illegal, the modification will fail and re-enter. The modified information flow chart is shown in Figure 3-5.

Figure 3-5 Modify information flow chart

3.2.6 Information deletion process

Administrators can delete pet management information and other information. After selecting the information to be deleted, click the delete button, and the system will ask if you are sure. If you click OK, the system will delete the selected information and update it in the database. The information is deleted. The flow chart of deleting information is shown in Figure 3-6.

Figure 3-6 Deletion information flow chart

3.3 System use case analysis

3.3.1 Administrator use case diagram

The core user in the system is the system administrator . After the administrator logs in, he manages the backend system through the administrator. The main functions include: homepage, system users (administrators, pet doctors, pet owners), module management (pet information, doctor information, appointment registration, diagnosis report, daily health, pet log, number source management), personal center and other functions . The administrator use case is shown in Figure 3-7 .

Figure 3-7 Administrator use case diagram

3.3.2 Doctor use case diagram

When a doctor enters the system, he can access the homepage, module management (doctor information, appointment registration, diagnosis report, daily health, pet log), personal center, etc. The user use case is shown in Figure 3-8 .

Figure 3-8 Doctor use case diagram

3.3. 3Pet owner use case diagram

Doctor users can view the home page, module management (pet information, doctor information, appointment registration, diagnosis report, daily health, pet log), personal center, etc. when entering the system. An example of a doctor user is shown in Figure 3-9 .

Figure 3-9 Pet owner user use case diagram

4 System design

4.1 System Overview

After system analysis, system design begins. System design includes overall design and detailed design. The overall design is just a general design. After the overall design, we can divide some things of the system, such as files, documents, data, etc. And through the overall design, we can roughly divide the modules and functions of the program. But it is only a preliminary classification and has no real implementation.

The overall design is just a preliminary design. Moreover, for a project, we can carry out multiple overall designs. Through comparison, including performance comparison, cost comparison, and benefit comparison, we can finally determine an optimal design plan and choose the best one. The overall design can reduce development costs and increase company benefits. From this point of view, the overall design is still very important.

The working principle diagram of the pet hospital appointment registration system is shown in Figure 4-1:

Figure 4-1 System working principle diagram

4.2 System structure design

The system architecture diagram belongs to the system design stage. The system architecture diagram is only a product of this stage. The overall architecture of the system determines the model of the entire system and is the foundation of the system. The overall structural design of the pet hospital appointment registration system is shown in Figure 4-2.

Figure 4-2 System structure diagram

4.3 Database design

Database is the basis of computer information system. At present, the key and core part of the computer system is the database. The quality of database development has a direct impact on the quality and speed of the entire system.

4.3.1 Database design principles

The conceptual structure design of the database adopts the entity-relationship (ER) model design method. The constituent elements of the ER model method are: entities, attributes, and relationships. The ER model is represented by an ER diagram, which reminds the user of things involved in the work environment, and attributes are descriptions of entity characteristics. The database plays a decisive factor in system design. The entity-relationship diagram of these key entities is designed below .

4.3.2 Database entities

Entities in the data model, also called instances, correspond to "events" or "things" that can be distinguished from other objects in the real world. For example, every employee in your company, every piece of furniture in your home.

Figure 4-3 System ER diagram

4.3.3 Database table design

The table information of the database is part of the design. The detailed information of each table in the database is introduced below.

Table access_token (login access duration)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

token_id

int

10

0

N

Y

Temporary access badge ID

2

token

varchar

64

0

Y

N

temporary access badge

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

Maximum lifespan: Default 2 hours

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

7

user_id

int

10

0

N

N

0

user ID:

Table auth (user rights management)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

auth_id

int

10

0

N

Y

Authorization ID:

2

user_group

varchar

64

0

Y

N

user group:

3

mod_name

varchar

64

0

Y

N

Module name:

4

table_name

varchar

64

0

Y

N

Table Name:

5

page_title

varchar

255

0

Y

N

page title:

6

path

varchar

255

0

Y

N

Routing path:

7

position

varchar

32

0

Y

N

Location:

8

mode

varchar

32

0

N

N

_blank

Jump method:

9

add

tinyint

3

0

N

N

1

Is it possible to add:

10

of the

tinyint

3

0

N

N

1

Can it be deleted:

11

set

tinyint

3

0

N

N

1

Whether it can be modified:

12

get

tinyint

3

0

N

N

1

Is it possible to view:

13

field_add

text

65535

0

Y

N

Add fields:

14

field_set

text

65535

0

Y

N

Modify fields:

15

field_get

text

65535

0

Y

N

Query fields:

16

table_nav_name

varchar

500

0

Y

N

Cross-table navigation name:

17

table_nav

varchar

500

0

Y

N

Cross-table navigation:

18

option

text

65535

0

Y

N

Configuration:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Creation time:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

Update time:

Table daily_health (daily health)

serial number

name

type of data

length

Decimal places

Allow null values

primary key

default value

illustrate

1

daily_health_id

int

10

0

N

Y

Daily Health ID

2

title_name

varchar

64

0

Y

N

title name

3

content_type

varchar

64

0

Y

N

Content type

4

content_body

longtext

2147483647

0

Y

N

内容正文

5

recommend

int

10

0

N

N

0

智能推荐

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表diagnostic_report (诊断报告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

diagnostic_report_id

int

10

0

N

Y

诊断报告ID

2

doctor_account

int

10

0

Y

N

0

医生账号

3

doctor_no

varchar

64

0

Y

N

医生编号

4

doctors_name

varchar

64

0

Y

N

医生姓名

5

master_account

int

10

0

Y

N

0

主人账号

6

host_name

varchar

64

0

Y

N

主人姓名

7

pet_nickname

varchar

64

0

Y

N

宠物昵称

8

pet_species

varchar

64

0

Y

N

宠物种类

9

pet_age

varchar

64

0

Y

N

宠物年龄

10

diagnosis_date

date

10

0

Y

N

诊断日期

11

diagnostic_instructions

text

65535

0

Y

N

诊断说明

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表doctor_information (医生信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

doctor_information_id

int

10

0

N

Y

医生信息ID

2

doctor_account

int

10

0

Y

N

0

医生账号

3

doctor_no

varchar

64

0

Y

N

医生编号

4

doctors_name

varchar

64

0

Y

N

医生姓名

5

employment_time

varchar

64

0

Y

N

从业时间

6

areas_of_expertise

text

65535

0

Y

N

擅长领域

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表have_an_appointment_with_a_doctor (预约挂号)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

have_an_appointment_with_a_doctor_id

int

10

0

N

Y

预约挂号ID

2

doctor_account

int

10

0

Y

N

0

医生账号

3

doctor_no

varchar

64

0

Y

N

医生编号

4

doctors_name

varchar

64

0

Y

N

医生姓名

5

master_account

int

10

0

Y

N

0

主人账号

6

host_name

varchar

64

0

Y

N

主人姓名

7

pet_nickname

varchar

64

0

Y

N

宠物昵称

8

pet_species

varchar

64

0

Y

N

宠物种类

9

pet_age

varchar

64

0

Y

N

宠物年龄

10

pet_status

text

65535

0

Y

N

宠物状态

11

appointment_date

date

10

0

Y

N

预约日期

12

appointment_number_source

varchar

64

0

Y

N

预约号源

13

examine_state

varchar

16

0

N

N

未审核

审核状态

14

examine_reply

varchar

16

0

Y

N

审核回复

15

recommend

int

10

0

N

N

0

智能推荐

16

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

17

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表paws_claws_pet_vet (宠物医生)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

paws_claws_pet_vet_id

int

10

0

N

Y

宠物医生ID

2

doctor_no

varchar

64

0

N

N

医生编号

3

doctors_name

varchar

64

0

Y

N

医生姓名

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

recommend

int

10

0

N

N

0

智能推荐

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表pet_information (宠物信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

pet_information_id

int

10

0

N

Y

宠物信息ID

2

master_account

int

10

0

Y

N

0

主人账号

3

host_name

varchar

64

0

Y

N

主人姓名

4

pet_nickname

varchar

64

0

Y

N

宠物昵称

5

pet_species

varchar

64

0

Y

N

宠物种类

6

pet_age

varchar

64

0

Y

N

宠物年龄

7

pet_health_history

text

65535

0

Y

N

宠物健康史

8

recommend

int

10

0

N

N

0

智能推荐

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表pet_log (宠物日志)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

pet_log_id

int

10

0

N

Y

宠物日志ID

2

master_account

int

10

0

Y

N

0

主人账号

3

host_name

varchar

64

0

Y

N

主人姓名

4

pet_nickname

varchar

64

0

Y

N

宠物昵称

5

log_title

varchar

64

0

Y

N

日志标题

6

log_body

longtext

2147483647

0

Y

N

日志正文

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表pet_owners (宠物主人)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

pet_owners_id

int

10

0

N

Y

宠物主人ID

2

host_name

varchar

64

0

Y

N

主人姓名

3

host_gender

varchar

64

0

Y

N

主人性别

4

pet_nickname

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

更新时间

表source_management (号源管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

source_management_id

int

10

0

N

Y

号源管理ID

2

source_name

varchar

64

0

Y

N

号源名称

3

recommend

int

10

0

N

N

0

智能推荐

4

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

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

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

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

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

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

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5统详细设计

5.1注册模块

未注册用户在用户注册界面uerRegister.jsp,输入新用户信息,点击注册后,新用户信息由界面传入控制层userAction,调用addUser(user)方法,通过userDAOImp向数据库用户表插入用户信息,由于用户账号是自动生成的,若成功则反馈注册成功,并提示新用户的用户账号;若失败则回到登录界面,并显示登录失败。

注册界面如下所示。

图5-1注册界面

用户注册关键代码如下所示。

/**

     * 注册

     * @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.2登录/注销模块

用户在首页点击登录,进入用户登录界面uerLogin.jsp,输入用户账号和密码,点击登录,用户账号和密码信息由界面传入控制层userAction,调用userLogin(user)方法,通过userDAOImp向数据库用户表搜索该用户账号与密码,将最终结果反馈到前端。若成功则回到首页;用户成功登录,若失败则回到登录界面,并显示登录失败。

用户点击注销,清空浏览器session值,然后返回登录页或者首页。

登录界面如下所示。

图5-2登录界面

登录界面关键代码如下所示。

/**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();

            String res = String.valueOf(service.runCountSql(sql).getSingleResult());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        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.3个人资料模块

登录用户在首页点击进入用户中心userCenter.jsp,再点击修改个人信息按钮进入userChangeInfo.jsp界面,系统根据session中存储的目前登录的用户的账号,向控制层userAction发送请求,搜索当前用户信息,userAction向userDAOImp调用queryByUserId(user),向数据库的用户表搜索当前用户信息并将用户信息以对象的形式层层返回到userChangeInfo.jsp界面,显示出当前用户的个人信息。

若用户要对个人信息进行修改,则通过修改当前信息之后点击确认,向控制层userAction发送更改后的用户信息,调用changeUser(user)方法,通过userDAOImp向数据库用户表更新用户信息,若成功则反馈注册成功,则返回的userChangeInfo.jsp界面被更改成功;若失败则显示修改失败。

5.4宠物信息模块

宠物主人在登录状态下添加宠物信息,从session中取出该用户的信息,点击加入宠物信息后前台发起请求,将对应的宠物shuliang、id参数信息从前台传递GoumaiController类里,匹配到add()方法,add()方法调用GoumaiServiceImpl类的add()方法。

宠物信息界面如下所示。

图5-3宠物信息界面

5.5预约挂号模块

宠物主人在登录状态下可以查看医生信息,在医生信息下方可以进行预约挂号提交操作

预约挂号界面如下所示。

图5-4预约挂号界面

5.6密码修改模块

管理员选择个人中心的修改本人密码。通过密码框输入现密码和2次新密码,如果现密码错误,则提示修改失败。如果2次新密码不一致,则提示修改失败。都没问题的话,系统提示修改成功,并返回登录界面。

系统用户管理界面如下所示。

图5-5系统用户管理界面

5.7医生管理模块

根据需求,需要对医生进行添加、删除或修改详情信息。删除或修改医生时,系统根据医生的状态判定为可删除状态下,才会给出删除和修改链接,点击删除链接按钮时,请求到达后台,还会先查询医生状态再次做出判定能否删除。点击修改链接按钮时,会跳转到修改信息的页面,重新填写好数据后,数据提交到后台会对数据库中相应的记录做出修改。

添加医生时,会给出数据填写的页面,该页面根据填写好的医生编号同样会事先发送Ajax请求查询编号是否已存在,数据填写好之后提交到后台,会调用相关服务在数据库中插入记录。

医生页面设计效果如下图所示。

图5-6生信息界面

5.8号源管理模块

号源功能需要考虑高并发,防止出现重复号源状态显示出错等情况,特对号源这一共享数据增加锁机制。在乐观锁、悲观锁以及线程锁中,综合考虑性能效率和错误的可接受性选择了乐观锁机制。乐观锁的实现方式是使用版本标识来确定读到的数据与提交时的数据是否一致,提交后修改版本标识,不一致时可以采取丢弃和再次尝试的策略。在数据库设计中增加了version字段,每次数据提交时会判断version是否匹配,若不匹配停止本次提交,若匹配则提交成功并增加version的值。

号源功能整体流程:用户浏览诊号源息时,同时会显示号源的状态,系统会在其显示详细信息的页面时便会判断号源的状态,若号源状态为可预约,则会显示号源的链接按钮。在用户点击号源按钮时,会先通过拦截器判断用户是否登录,若未登录,会跳转至登录页面,提示用户先登录,若为登录用户就会跳转至填写号源信息的页面,填写好号源信息之后,点击提交按钮,预约成功之后返回提示信息,告知用户预约成功。

号源流程图如下图所示。

图5-7预约流程图

号源界面如下图所示。

图5-8号源管理界面

5.9日常健康管理模块

根据需求,需要对日常健康信息进行添加、删除或修改详情信息。系统根据日常健康信息的状态判定为可删除状态下,才会给出删除和修改链接,点击删除链接按钮时,请求到达后台,还会先查询病例状态再次做出判定能否删除。点击修改链接按钮时,会跳转到修改信息的页面,重新填写好数据后,数据提交到后台会对数据库中相应的记录做出修改。

添加日常健康信息时,会给出数据填写的页面,该页面根据填写好的病例同样会事先发送Ajax请求查询病例编号是否已存在,数据填写好之后提交到后台,会调用相关服务在数据库中插入记录。

日常健康管理页面设计效果如下图所示。

图5-10日常健康管理界面图

日常健康管理的关键代码如下。

  @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

    public Map<String,Object> readBody(BufferedReader reader){

        BufferedReader br = null;

        StringBuilder sb = new StringBuilder("");

        try{

            br = reader;

            String str;

            while ((str = br.readLine()) != null){

                sb.append(str);

            }

            br.close();

            String json = sb.toString();

            return JSONObject.parseObject(json, Map.class);

        }catch (IOException e){

            e.printStackTrace();

        }finally{

            if (null != br){

                try{

                    br.close();

                }catch (IOException e){

                    e.printStackTrace();

                }

            }

        }

        return null;

}

    public void insert(Map<String,Object> body){

        StringBuffer sql = new StringBuffer("INSERT INTO ");

        sql.append("`").append(table).append("`").append(" (");

        for (Map.Entry<String,Object> entry:body.entrySet()){

            sql.append("`"+humpToLine(entry.getKey())+"`").append(",");

        }

        sql.deleteCharAt(sql.length()-1);

        sql.append(") VALUES (");

        for (Map.Entry<String,Object> entry:body.entrySet()){

            Object value = entry.getValue();

            if (value instanceof String){

                sql.append("'").append(entry.getValue()).append("'").append(",");

            }else {

                sql.append(entry.getValue()).append(",");

            }

        }

        sql.deleteCharAt(sql.length() - 1);

        sql.append(")");

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

        Query query = runCountSql(sql.toString());

        query.executeUpdate();

    }

第6章系统测试

6.1测试概述

软件测试是软件开发完成后必须经过的一道程序,它在软件开发过程中地位十分重要,需要由专业的测试工程师来对软件进行各方面的测试,大到功能模块测试,小到代码的单元测试,这对测试工程师来说需要有足够的耐心和专业的测试方案,软件测试归根结底就是对软件的结构和功能的综合测评,需要做到结构稳定和功能正确,二者兼顾。软件测试也叫寻找系统bug的过程,世界上没有完美无缺、不存在bug的软件,只能将软件的bug降到最低最小,来追求极致。

6.2测试过程

6..2.1登录测试

登录测试是系统最开始就要进行,测试用户能否登录,才能完成后续的功能操作。

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

表6-1登录测试

用例编号

YL001

程序版本

1.00

功能名称

使用者登录测试

编制人

李铁蛋

功能描述

根据用户的登录情况测试

用例目的

测试用户登录情况是否正确

测试项

测试数据

测试结果

预期结果

用户名

为空

请输入用户名

请输入用户名

密码

为空

请输入密码

请输入密码

用户密码组合

用户名:klouse 密码 klouses

用户与密码不匹配

用户与密码不匹配

用户密码组合

用户名 : klouse 密码

klouse

进入系统

正确的用户名和密码

登录系统

6.2.2信息录入测试

管理员在发布信息页面,通过按照预先格式发布信息,如果因为输入时候缺少相关内容,就不能发布成功,且有相应错误提示

信息录入发布测试用例表如下所示。

表6-1信息录入发布测试

用例编号

YL002

程序版本

1.00

功能名称

信息发布测试

编制人

李铁蛋

功能描述

对使用者发布或者录入信息进行测试,判断其功能是否达到预期的要求

用例目的

对系统使用者录入发布信息进行原型测试。

测试项

测试数据

测试结果

预期结果

属性1

为空

请输入属性1对应的数据

请输入属性1对应的数据

属性2

为空

请输入属性2对应的数据

请输入属性2对应的数据

属性3

为空

请输入属性3对应的数据

请输入属性3对应的数据

全部输入

数据均填入

录入发布成功

录入发布成功

6.2.3信息更新测试

管理员在更新信息页面,通过按照预先格式更新信息,如果因为输入时候缺少相关内容或者更新的数据不符合当前规范的话,就不能更新成功,且有相应错误提示

信息更新测试用例表如下所示。

表6-1信息更新测试

用例编号

YL003

程序版本

1.00

功能名称

信息更新测试

编制人

李铁蛋

功能描述

对使用者更新信息进行测试,判断其功能是否达到预期的要求

用例目的

对系统使用者更新信息进行原型测试。

测试项

测试数据

测试结果

预期结果

属性1

编号:321

编号更新成功

编号更新成功

属性2

名称:名称1

名称更新成功

名称更新成功

属性3

内容:内容1234内容

内容更新成功

内容更新成功

全部输入

数据均未更改

更新成功

更新成功

6.2.4信息删除测试

管理员在信息页面,通过点击数据删除按钮来删除该条数据,如果该数据和其他数据有关联,则提示是否确定删除。

信息删除测试用例表如下所示。

表6-1信息删除测试

用例编号

YL004

程序版本

1.00

功能名称

信息删除测试

编制人

李铁蛋

功能描述

对使用者删除信息进行测试,判断其功能是否达到预期的要求

用例目的

对系统使用者删除信息进行原型测试。

测试项

测试数据

测试结果

预期结果

数据1

无任何关联的数据1

数据删除成功

数据删除成功

数据2

和其他数据有关联的数据2

请确认是否删除

请确认是否删除

6.3测试结果

在经过之前的所有的工作之后,通过对软件的测试方法、测试原则还有典型的测试用例进行全面的、深入的介绍。经过对系统的全面测试,系统目前所具有的所有功能均成功的实现并且通过了测试,整个系统实现了基于 Java 开发的期望。

结    论

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

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

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

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

致    谢

大学的学习生活在这个季节将结束,但是在我的生命这仅仅只是一个逗号,我将面对另一个环境开始。通过这次毕业设计的整个开发过程,从需求分析到具体功能实现,再到最终测试和维护的理解有了很大的进步,让我对系统开发有了更深刻的认识,对我个人的实践能力和解决问题的能力,都有了很大的帮助。这是这次毕业设计最大的收获。

首先要感谢我的指导老师,他在论文写作上,给予了我各种无私的帮助,治学严谨,严格要求,使我获得了很大的收获。老师深厚的理论知识和丰富的实践经验,都深深的影响到我,在这方面,我谨表示衷心的感谢。

其次,我还要对所有的老师和同学表示感谢,他们在我学习的过程中,都积极的提供了很多帮助,无论是专业知识,还是实践操作技能,也能够让我在论文写作中,遇到的一些难题迎刃而解。

最后,对阅读和评审本论文的各位老师表示衷心的感谢!

参考文献 

[1]王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.

[2]叶长青.一种基于SpringBoot的影视内容推荐系统的设计与实现[J].电脑知识与技术,2023,19(01):85-87.DOI:10.14004/j.cnki.ckt.2023.0015.

[3]Yu Yang. Design and Implementation of Student Information Management System Based on Springboot[J]. Advances in Computer, Signals and Systems,2022,6(6).

[4]Møller Pål. The Prospective Lynch Syndrome Database: background, design, main results and complete MySQL code[J]. Hereditary Cancer in Clinical Practice,2022,20(1).

[5]Győrödi Cornelia A.,DumşeBurescu Diana V.,Zmaranda Doina R.,Győrödi Robert Ş.. A Comparative Study of MongoDB and Document-Based MySQL for Big Data Application Data Management[J]. Big Data and Cognitive Computing,2022,6(2).

[6]Wu Daiwen. The Application and Management System of Scientific Research Projects Based on PHP and MySQL[J]. Journal of Interconnection Networks,2022,22(Supp02).

[7]邢娜,郑蕾,王莉.医院网站预约挂号系统设计[J].解放军医院管理杂志,2021,28(10):929-930+969.DOI:10.16770/J.cnki.1008-9985.2021.10.012.

[8]万杰.基于微信公众号的医院预约挂号系统开发[J].湖州职业技术学院学报,2021,19(03):76-80.DOI:10.13690/j.cnki.hzyxb.issn.1672-2388.2021.03.19.

[9]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).

[10]白建宇. 基于SpringBoot的大数据日志分析系统的设计与实现[D].首都经济贸易大学,2021.DOI:10.27338/d.cnki.gsjmu.2021.000994.

[11]李娟,彭剑.基于SpringBoot的高校课程知识库的设计与实现[J].电脑知识与技术,2021,17(06):70-71.DOI:10.14004/j.cnki.ckt.2021.0428.

[12]马艳夕.基于SpringBoot与Vue技术的企业电商平台的设计与实现[J].信息与电脑(理论版),2021,33(03):99-100.

[13]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).

[14]张嘉豪,赵亮,翁铭隆,张华俊,李文欣.基于SSM+SpringBoot技术实现服务器监控的研究[J].科学技术创新,2020(33):101-102.

[15]赵富强,严风硕,边岱泉,朱小波.基于Vue和SpringBoot的机场气象信息系统设计与实现[J].现代信息科技,2020,4(21):1-5+9.DOI:10.19850/j.cnki.2096-4706.2020.21.001.

[16]刘嘉琪.宠物医疗发展现状及存在问题与对策[J].中国动物保健,2020,22(10):6+18.

[17]He M,Lv S. Research on Civil Aircraft Structural Strength Material Performance Database Based on SpringBoot[C]//Advanced Science and Industry Research Center.Proceedings of 2020 4th International Conference on Electrical,Automation and Mechanical Engineering(EAME2020).Proceedings of 2020 4th International Conference on Electrical,2020:1062-1067.DOI:10.26914/c.cnkihy.2020.057541.

[18]姚文杰.基于微信公众平台的医院预约挂号系统研究[J].数码世界,2020(04):29.

[19]Yao Zhang Li,Sheng Gao,Jing Pan,Bi Feng Guo,Pei Feng Xie. Research and Application of Template Engine for Web Back-end Based on MyBatis-Plus[J]. Procedia Computer Science,2020,166(C).

[20] Gong Lei. Design and research of hospital appointment registration system based on smart mobile terminals [J]. Computer Programming Skills and Maintenance, 2020(02):48-49+87.DOI:10.16184/j.cnki.comprg.2020.02. 016.

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

[22] Dai Mingfu. Design and implementation of hospital appointment registration management system based on MVC model [D]. Guangxi University, 2019.

[23] Zhang Yuerui. Research on the Development Strategy of Ningbo AX Pet Hospital [D]. Ningbo University, 2019. DOI: 10.27256/d.cnki.gnbou.2019.000171.

[24] Wang Ke. Design and implementation of hospital mobile appointment registration platform based on Android system [D]. Zhengzhou University, 2019.

Please follow and like + privately message the blogger to receive the project source code for free

Guess you like

Origin blog.csdn.net/ID3461074420/article/details/132791303