Design and implementation of second-hand book trading platform based on java project ssm (thesis + programming source code + database file)

1 Introduction 4
1.1 Project development background 4
1.2 Project development significance 5
1.3 Main content of the project 5
2 Related technology introduction and system environment development conditions 6
2.1 Related technology introduction 6
2.2 System environment development conditions 7
3 System requirements analysis and design 7
3.1 Feasibility Performance analysis 7
3.2 Requirements analysis 8
3.2.1 Overall system overview 8
3.2.2 Functional requirements 9
3.2.3 Non-functional requirements 9
3.2.4 Flow chart design 10
3.2.5 System ER diagram design 12
3.3 Database design 12
3.3. 1 Principles of database design 12
3.3.2 Design of database tables 12
4 System function module realization 16
4.1 Front page function realization 17
4.1.1 Home page module realization 17
4.1.2 Detailed page module realization 18
4.1.3 Release idle module realization 20
4.2 Back-end page function realization 21
4.2.1 The realization of the login page 21
4.2.2 The realization of the user management page 22
4.2.3 The realization of the product management page 24
4.2.4 The realization of the order list management page 25
4.3 The log function module 26
4.4 Installation and deployment 27
5 System Test 28
5.1 The purpose and significance of system debugging 28
5.2 Functional test cases 28
6 Summary 29
References: 30
Acknowledgements 31 Abstract: There are many things in university life that can be used for the second time, such as books tired of teaching materials, postgraduate entrance examination materials, of course not Fewer students also seem to buy cheaper, and many things cannot be properly handled. In recent years, with the development of the Internet, buying what you need through the Internet has become a trend for modern people. Based on the second-hand book trading platform of Benbenjia, just this kind of shopping opportunity has been created. This article mainly explains and introduces the realization process and design method of this program, and elaborates the design concept, database design and functional module design in detail. Use related technologies to realize functions such as login, registration, view published products, and view purchase orders. In the development process of the project, the database table building and bottom layer building issues were fully considered in detail.
This system mainly adopts the springboot development framework system. The technologies used are mysql database, mybatis driver framework and tomcat server deployment. The integrated development tools used are mainly IDEA and jdk1.8.
Keywords: second-hand book trading platform management; springboot; commodity; mysql

Abstract: at present, in college life, there are many things that can be used for the second time (such as: bed sheet, quilt cover, basketball, football and other ball games, guitar and other second-hand musical instruments, as well as teaching materials, postgraduate entrance examination materials). Of course, many students also like to buy cheaper, a lot of things can not get the correct disposal. In recent years, with the development of the Internet, it has become a trend for modern people to buy what they need through the Internet. Based on the second-hand trading platform of Benben home, it just creates such an opportunity for shopping. This paper mainly explains and introduces the implementation process and design method of this program, and expounds the design concept, database design and function module design in detail.Use related technology to achieve login, registration, view issued goods, view purchase orders and other functions. In the development process of the project, the table building and bottom building of the database are considered in detail.
This system mainly adopts spring boot development framework. The technologies used include MySQL database, mybatis driver framework and Tomcat server deployment. The integrated development tools used are mainly idea and JDK1.8.

Key words: second hand trading platform management; springboot; Commodities; mysql

1 Introduction
1.1 Background of the project development
accompanied by progress of the times, the trend of the Internet is growing, the development of technology used books articles with more value, can be used repeatedly. There are many platforms that sell second-hand book items, and competition among platforms is also fierce. However, it is not that difficult to develop on a university campus. Now, through observation, basically no university has an on-campus second-hand book trading platform, so I think there is still a lot of room for development. The quality of life has improved, and the pursuit of students has been further improved. Many things are easily discarded. This is a very bad waste. We must resolutely change this situation.
In the past, second-hand book trading markets, such as the flea market that was often opened, were actually very inconvenient. Restricted by many conditions, such as the weather, if the weather is bad, then the conventional trading market will not be able to develop. If there are students who have urgent needs at this time, it is very inconvenient. Moreover, for example, it is not allowed to gather crowds during the epidemic, which is a very inconvenient problem.
College students have many common consumption habits, which are often influenced by the people around them. Most of the things they trade are very useful and practical (such as: bed sheets, quilts, basketball and football balls, guitars and other second-hand books and instruments, as well as teaching materials, postgraduate entrance examination materials , Computers, mobile phones, pots), many commodities students consider it is the best to buy second-hand books, because they are cheap and practical. New products often fail to achieve the best economic benefits. After buying it for a while, you can consider selling it to other people, which will generate a lot of product flow. For graduates, this demand for selling is more frequent. Many things are inconvenient to carry when leaving the campus. They are either thrown away as garbage, or they have to be considered for transfer to other people. A lot of things cannot be arranged quickly. Then this second-hand book trading platform is a very good choice.
1.2 Significance of project development
At present, college students’ online transactions are mostly through a series of large e-commerce platforms such as Taobao, JD.com, and Suning. Of course, there are also second-hand book platforms similar to Xianyu APP. Although the aforementioned e-commerce platforms are excellent, they have their functions. Without pertinence, people can't understand the details of many things well, can't easily query the information of things, and it is impossible to meet people's shopping needs. Based on this second-hand book trading platform, it provides a good, convenient and safe trading environment for the professional platform, and fully realizes and satisfies the various needs of some people.
1.3 The main content of the project The main content of
this article is to research and analyze the software's characteristics and requirements: firstly, it introduces the background of the project's development and the significance of the research; secondly, it introduces the theoretical knowledge and development of related technologies used in the project development process The introduction of the environment; the third is the necessary analysis of the system development, which provides the corresponding theoretical basis for the system design. The fourth is to realize the main links and prerequisites of the system development. The main modules of the project system are analyzed and designed in detail to lay the foundation for the subsequent concrete realization. The fifth is to briefly introduce the test cases, so that after successfully completing the development of the program, through these tests, we can quickly and effectively find out the shortcomings of the system and modify and improve them in time.

2 Introduction of related technologies and system environment development conditions
2.1 Introduction of related technologies
The system is accessed in a browser-based manner, using springboot integrated rapid development framework, the front-end uses vue mode, based on es5 syntax, and the development tool IntelliJ IDEA 2020.1.1 x64, because This development tool has a built-in Tomcat service operation mechanism, so there is no need to download the Tomcat server separately.
As an object-oriented development language, Java not only absorbs the various advantages of many languages, but also its entire ecology is the best openness among all languages. In learning, you can find many similar functional codes for later Refer to learning, like the current asp.net development language to a large extent imitates the thinking of java. If you learn java programming and master another language, you will learn very quickly because of its simplicity and structure-oriented It reduces the complexity of code management, makes the programming process clearer, and the logic decoupling is more hierarchical.
As a project version management software, Maven can better manage the use of jar packages. There was no Maven management tool before, and many versions of jar packages need to be downloaded online. Sometimes the incompatibility between versions affects the use of the system. Play, sometimes different bugs appear, after using the Mavern project, this difficult problem can be eliminated very well.
MySQL is an open source relational database. Because it is open source, there is no copyright dispute. Now many companies are using MySQL as database storage. Not only its storage rate is relatively fast, but it can also be used for secondary development. Customize a database that is more suitable for the company.
The bottom layer of Vue's syntax implements the principle of two-way data binding. When re-detailing or releasing the project, there is no need to restart the project. The implementation of the code function module can be reflected on the browser to achieve fast response. Some compilable languages ​​need to load a lot of plug-ins before they can be started.
Spring encapsulates a lot of java class library files. During the development process, you don’t need to write too many complicated class files. You only need to quote the spring framework to complete the needs of rapid development. Therefore, the logic code of Java programming becomes more complicated. Clear, the decoupling between the various layers is also relatively strong, the reusability has also been well played, making the development difficulty easier and easier, its main two features are dependency injection, interface-oriented thinking; (AOP) Aspects of thinking;
IntelliJ IDE and eclipse comparison, these two are Java programming language development tools, and the difference, IDEA and third-party plug-in market access more, development efficiency and intelligent prompts are smarter than eclipse, in terms of environment IDEA is also faster in configuration generation, and the interface design is also relatively clean and simple.

2.2 System environment development conditions
The system adopts the B/S architecture, the front-end framework is developed with WeChat developer tools, and the back-end data is realized using MYSQL
serial number. Software environment version remarks
1 windows operating system 10
2 database MYSQL 8.0
3 programming development tool software IDEA 2020.2

3 System requirements analysis and design
As the software development process in the early stage, the project needs to be analyzed. First of all, we must understand what the business does and what functions it implements, and subdivide the use background of each functional module in the functional module. In this way, in software development, the defects of the architecture design will not reproduce the underlying data structure of the secondary design. In addition, there are some non-functional special details, such as database performance, security considerations, and network speed reflection time. They are all used as constraints for demand analysis, and they are also targets that need to be analyzed at runtime after the project is developed.

3.1 Feasibility analysis The feasibility analysis of
the system is essential in the process of system development. The feasibility study is to evaluate whether the problem can be solved and to solve it with the least time and the least cost. In order to achieve the above goals, the advantages and disadvantages of the methods to solve these problems must be considered, and the economic benefits brought by the development of these systems must also be considered. Here we can use technical feasibility, operational feasibility, and economic feasibility to conduct a feasibility study of our system.

3.1.1 Technicality: The system designed in this project mainly adopts layui front-end development, the back-end uses java language and springboot integrated development framework, uses mysql database, according to one's own major, combined with online access to case lists and library materials, development and realization There is no big problem.
3.1.2 Economics: To develop a mature software, it takes a long process. Here, the design to the software requirements analysis, planning, development personnel, testing links, and debugging process all require capital and manpower input. And the development of this set of software can be learned through online open source source code and related materials. The hardware and computer use are all used by oneself, so the development cost can be ignored.
3.1.3 Operability: The functions designed by this system mainly include login and registration module, commodity management module, release commodity management module, order management module, comment module. The related knowledge of these functional modules are common functions designed in ordinary times. , It is achievable in operation.

3.2 Demand analysis
By understanding the needs of users, we can know that simple-to-operate systems are more likely to be favored by users, and can manage information accurately and completely. After analyzing the needs of the second-hand book trading platform of Benbenzhijia, it came to the conclusion that the system is mainly divided into two roles: administrator and ordinary user.
The administrator module is mainly used for data update management, and its functions are divided into system user management, user registration management, commodity management, order management, and wallet management.

3.2.1 General overview of
the system The project management system is mainly based on the B/S design model. The functions of the system design include: user management, user registration management, commodity management, and order management. The system structure is shown in Figure 3-1:

Insert picture description here


3.2.2 Functional requirements
This system is designed and completed by using modern computer network technology to integrate traditional information propaganda methods. At the same time, the service was improved, and a second-hand book trading system platform of Benbenjia was initially designed to facilitate related business operations. In order to make the system play a greater role in various management and realize computerized and efficient management, the development target function requirements are now introduced as follows:
(1) Administrator login module The
administrator has the right to manage the system's second-hand book trading platform , But all registration and use of permissions must be authorized by the super administrator. The administrator can manage user management, product management, order management, and wallet management.
(2) Commodity management module Administrators
with certain management authority can view the commodity list, as well as the corresponding commodity addition, deletion, modification, and query operations.
(3) User management module Administrators
with certain management rights can view the data of the user list, as well as the corresponding user addition, deletion, modification, and query operations.
(4) Order management module Administrators
with certain management rights can view the data of the user's order list and modify the user's order status.
3.2.3 Non-functional requirements
The system not only needs to meet functional requirements, but also needs to meet invisible non-functional requirements, such as system compatibility, user interface integrity, and web access fluency. The main points are summarized as follows :
Category requirement description
Compatibility supports multi-browser access.
The interface website is overall beautiful, with coordinated elements.
Security access control is not attacked, preventing SQL injection.

3.2.4 Flow chart design The
working process of the second-hand book management system of Benbenzhijia is: ordinary users can operate personal information, publish products, browse products, purchase and order products by logging in; while administrator users can perform operations on products, users, Manage orders and wallets. The following is the overall flow chart design as shown in Figure 3-2:

Insert picture description here


Login management flow chart: The login management function is the management entrance of the system, and of course it is also the highest level of system protection. If there is no good security prevention and control mechanism, the system will be very vulnerable. Attack; In this regard, the following aspects are mainly considered when designing. The following are as follows: 1. Verify that the user name and password are recorded in the database table; 2. Verify that the user name and password input is legal, especially SQL injection to prevent intrusion into the system and tampering with permissions; 3. When the user logs in to the system, it will be provided for each user A seesionID has an expiration time of 30 minutes. If the user does not use the system for a long time, the system will automatically jump to the login page after 30 minutes. The following is a part of the flow chart design, as follows:

Insert picture description here


3.2.5 System ER diagram design
In the ownership relationships of database tables, ER diagrams are often used to design the relationship between tables.

Insert picture description here


3.3 Database design
3.3.1 Principles of database design
When creating a table, the primary key of the table should be as few as possible. When establishing a foreign key relationship between the table and the table, it should be as few as possible to minimize the complexity of database queries and CRUD operations. Degree; system recovery operation, in the design of the database file, it is considered that if the table is damaged, it can be quickly restored in a short time, reducing the cost. In the process of database system development, the following characteristics generally need to be met: less field redundancy, that is, when designing table fields, try to reduce unnecessary and redundant fields, and when setting table parameter types, reasonably control the length of parameter fields ; Confidentiality and security should be strong, do not set system keywords in the table to prevent SQL injection attacks; the management between tables should be rationalized, try to reduce more than three management table queries, and reduce SQL queries Decrease in system performance.

3.3.2 The design of the database table

Administrator table (admin): administrator number, administrator account number, administrator password, phone number, user role

Design and implementation of second-hand book trading platform based on java project ssm (thesis + program design source code + database file): click the download address """