当前位置:网站首页>Ssm+jsp realizes the warehouse management system, and the interface is called an elegant interface
Ssm+jsp realizes the warehouse management system, and the interface is called an elegant interface
2022-07-07 04:18:00 【Programmer Xiao Wang Java】
Programmer Xiao Wang's blog : Programmer Xiao Wang's blog
Welcome to thumb up Collection Leaving a message.
If there are editorial errors, contact the author , If you have a better article, please share it with me , I will take the essence and discard the dross
java The learning route of self-study :java The learning route of self-study
One 、 Preface
Today I would like to share with you a suitable for college students to learn SSM+jsp Realize warehouse management system !
Use Spring+SpringMVC+Mybatis+maven+tomcat Realize warehouse management system , The interface is very beautiful !
With the development of computers , In life, only relying on manual management of a large number of goods in the mall will waste most of human and material resources , It will also cause higher human errors , Therefore, it is necessary to develop an inventory management system in shopping malls to greatly reduce mistakes and unnecessary waste . Realize digital information management , Improve management efficiency , Reduce operating costs . Using the store inventory management system can improve the operation of the store , Improve overall efficiency
Warehouses are widely used in real life , Various shopping malls 、 Supermarkets should use warehouses to store materials , Pharmacy 、 Hospitals should use warehouses to store drugs , Enterprises 、 Factories should use warehouses to store raw materials 、 Produce finished products , Therefore, warehouse management has become a very important work . Manual warehouse management is time-consuming and laborious , And it's easy to cause chaos , In serious cases, it will affect the mall 、 The normal operation of the enterprise , Cause bad consequences . With the development of computer technology , How fast , Efficient , Convenient warehouse management has received high attention . This system simulates warehouse management , The system is mainly aimed at the management of daily inventory information , Including material management 、 Warehouse management 、 Warehousing operation 、 Warehousing inquiry statistics 、 Delivery operation 、 Issue query statistics 、 Inventory query statistics and other processing . Users can use the corresponding modules , Query the basic information and inventory quantity of items in the warehouse , The administrator can easily manage the warehouse through simple operations , Query relevant information , And can carry out warehousing and outbound operations . Through the design and implementation of warehouse management system , So that we can consolidate and deepen our understanding of the basic theory and knowledge of database , Further master the basic idea and method of software design using database , It improves the ability of using database theory to solve practical problems , Exercise the practical ability 、 Innovation ability , Cultivate research 、 Consult the technical literature 、 Information 、 Manuals and the ability to write documents .
- Using technology
Two 、 Database design
Database selection is mysql8
1、 Database diagram

2、 Database management system database table design document
Database name : wms_db
Document version : V1.0.0
A document description : Warehouse management system database table design description
| Table name | explain |
|---|---|
| wms_access_record | Access records |
| wms_action | |
| wms_customer | customer |
| wms_goods | s goods |
| wms_operation_record | The operation record |
| wms_record_in | Log in records |
| wms_record_out | Log out record |
| wms_record_storage | Storage record |
| wms_repo_admin | management |
| wms_respository | Warehouse |
| wms_role_action | |
| wms_roles | |
| wms_supplier | Supplier |
| wms_user | user |
| wms_user_role | User roles |
Table name : wms_access_record
explain :
Data columns :
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain |
|---|---|---|---|---|---|---|---|---|
| 1 | RECORD_ID | int | 10 | 0 | N | Y | ||
| 2 | USER_ID | int | 10 | 0 | N | N | ||
| 3 | USER_NAME | varchar | 50 | 0 | N | N | ||
| 4 | ACCESS_TYPE | varchar | 30 | 0 | N | N | ||
| 5 | ACCESS_TIME | datetime | 19 | 0 | N | N | ||
| 6 | ACCESS_IP | varchar | 45 | 0 | N | N |
Table name : wms_action
explain :
Data columns :
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | ACTION_ID | int | 10 | 0 | N | Y | |||
| 2 | ACTION_NAME | varchar | 30 | 0 | N | N | |||
| 3 | ACTION_DESC | varchar | 30 | 0 | Y | N | |||
| 4 | ACTION_PARAM | varchar | 50 | 0 | N | N |
Table name : wms_customer
# Create a customer information table
create table wms_customer
(
CUSTOMER_ID int not null auto_increment,
CUSTOMER_NAME varchar(30) not null,
CUSTOMER_PERSON varchar(10) not null,
CUSTOMER_TEL varchar(20) not null,
CUSTOMER_EMAIL varchar(20) not null,
CUSTOMER_ADDRESS varchar(30) not null,
primary key(CUSTOMER_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | CUSTOMER_ID | int | 10 | 0 | N | Y | |||
| 2 | CUSTOMER_NAME | varchar | 30 | 0 | N | N | |||
| 3 | CUSTOMER_PERSON | varchar | 10 | 0 | N | N | |||
| 4 | CUSTOMER_TEL | varchar | 20 | 0 | N | N | |||
| 5 | CUSTOMER_EMAIL | varchar | 20 | 0 | N | N | |||
| 6 | CUSTOMER_ADDRESS | varchar | 30 | 0 | N | N |
Table name : wms_goods
# Create a customer information table
create table wms_customer
(
CUSTOMER_ID int not null auto_increment,
CUSTOMER_NAME varchar(30) not null,
CUSTOMER_PERSON varchar(10) not null,
CUSTOMER_TEL varchar(20) not null,
CUSTOMER_EMAIL varchar(20) not null,
CUSTOMER_ADDRESS varchar(30) not null,
primary key(CUSTOMER_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain |
|---|---|---|---|---|---|---|---|---|
| 1 | GOOD_ID | int | 10 | 0 | N | Y | ||
| 2 | GOOD_NAME | varchar | 30 | 0 | N | N | ||
| 3 | GOOD_RYPE | varchar | 20 | 0 | Y | N | ||
| 4 | GOOD_SIZE | varchar | 20 | 0 | Y | N | ||
| 5 | GOOD_VALUE | double | 23 | 0 | N | N |
Table name : wms_operation_record
explain :
Data columns :
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain |
|---|---|---|---|---|---|---|---|---|
| 1 | RECORD_ID | int | 10 | 0 | N | Y | ||
| 2 | USER_ID | int | 10 | 0 | N | N | ||
| 3 | USER_NAME | varchar | 50 | 0 | N | N | ||
| 4 | OPERATION_NAME | varchar | 30 | 0 | N | N | ||
| 5 | OPERATION_TIME | datetime | 19 | 0 | N | N | ||
| 6 | OPERATION_RESULT | varchar | 15 | 0 | N | N |
Table name : wms_record_in
# Create warehousing record table
create table wms_record_in
(
RECORD_ID int not null auto_increment,
RECORD_SUPPLIERID int not null,
RECORD_GOODID int not null,
RECORD_NUMBER int not null,
RECORD_TIME datetime not null,
RECORD_PERSON varchar(10) not null,
RECORD_REPOSITORYID int not null,
primary key(RECORD_ID),
foreign key(RECORD_SUPPLIERID) references wms_supplier(SUPPLIER_ID),
foreign key(RECORD_GOODID) references wms_goods(GOOD_ID),
foreign key(RECORD_REPOSITORYID) references wms_respository(REPO_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | RECORD_ID | int | 10 | 0 | N | Y | |||
| 2 | RECORD_SUPPLIERID | int | 10 | 0 | N | N | |||
| 3 | RECORD_GOODID | int | 10 | 0 | N | N | |||
| 4 | RECORD_NUMBER | int | 10 | 0 | N | N | |||
| 5 | RECORD_TIME | datetime | 19 | 0 | N | N | |||
| 6 | RECORD_PERSON | varchar | 10 | 0 | N | N | |||
| 7 | RECORD_REPOSITORYID | int | 10 | 0 | N | N |
Table name : wms_record_out
# Create a delivery record table
create table wms_record_out
(
RECORD_ID int not null auto_increment,
RECORD_CUSTOMERID int not null,
RECORD_GOODID int not null,
RECORD_NUMBER int not null,
RECORD_TIME datetime not null,
RECORD_PERSON varchar(10) not null,
RECORD_REPOSITORYID int not null,
primary key(RECORD_ID),
foreign key(RECORD_CUSTOMERID) references wms_customer(CUSTOMER_ID),
foreign key(RECORD_GOODID) references wms_goods(GOOD_ID),
foreign key(RECORD_REPOSITORYID) references wms_respository(REPO_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain |
|---|---|---|---|---|---|---|---|---|
| 1 | RECORD_ID | int | 10 | 0 | N | Y | ||
| 2 | RECORD_CUSTOMERID | int | 10 | 0 | N | N | ||
| 3 | RECORD_GOODID | int | 10 | 0 | N | N | ||
| 4 | RECORD_NUMBER | int | 10 | 0 | N | N | ||
| 5 | RECORD_TIME | datetime | 19 | 0 | N | N | ||
| 6 | RECORD_PERSON | varchar | 10 | 0 | N | N | ||
| 7 | RECORD_REPOSITORYID | int | 10 | 0 | N | N |
Table name : wms_record_storage
# Create inventory record table
create table wms_record_storage
(
RECORD_GOODID int not null auto_increment,
RECORD_REPOSITORY int not null,
RECORD_NUMBER int not null,
primary key(RECORD_GOODID, RECORD_REPOSITORY),
foreign key (RECORD_GOODID) references wms_goods(GOOD_ID),
foreign key (RECORD_REPOSITORY) references wms_respository(REPO_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | RECORD_GOODID | int | 10 | 0 | N | Y | |||
| 2 | RECORD_REPOSITORY | int | 10 | 0 | N | Y | |||
| 3 | RECORD_NUMBER | int | 10 | 0 | N | N |
Table name : wms_repo_admin
# Create warehouse administrator information table
create table wms_repo_admin
(
REPO_ADMIN_ID int not null auto_increment,
REPO_ADMIN_NAME varchar(10) not null,
REPO_ADMIN_SEX varchar(10) not null,
REPO_ADMIN_TEL varchar(20) not null,
REPO_ADMIN_ADDRESS varchar(30) not null,
REPO_ADMIN_BIRTH datetime not null,
REPO_ADMIN_REPOID int,
primary key(REPO_ADMIN_ID),
foreign key (REPO_ADMIN_REPOID) references wms_respository(REPO_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain |
|---|---|---|---|---|---|---|---|---|
| 1 | REPO_ADMIN_ID | int | 10 | 0 | N | Y | ||
| 2 | REPO_ADMIN_NAME | varchar | 10 | 0 | N | N | ||
| 3 | REPO_ADMIN_SEX | varchar | 10 | 0 | N | N | ||
| 4 | REPO_ADMIN_TEL | varchar | 20 | 0 | N | N | ||
| 5 | REPO_ADMIN_ADDRESS | varchar | 30 | 0 | N | N | ||
| 6 | REPO_ADMIN_BIRTH | datetime | 19 | 0 | N | N | ||
| 7 | REPO_ADMIN_REPOID | int | 10 | 0 | Y | N |
Table name : wms_respository
# Create warehouse information table
create table wms_respository
(
REPO_ID int not null auto_increment,
REPO_ADDRESS varchar(30) not null,
REPO_STATUS varchar(20) not null,
REPO_AREA varchar(20) not null,
REPO_DESC varchar(50),
primary key(REPO_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain |
|---|---|---|---|---|---|---|---|---|
| 1 | REPO_ID | int | 10 | 0 | N | Y | ||
| 2 | REPO_ADDRESS | varchar | 30 | 0 | N | N | ||
| 3 | REPO_STATUS | varchar | 20 | 0 | N | N | ||
| 4 | REPO_AREA | varchar | 20 | 0 | N | N | ||
| 5 | REPO_DESC | varchar | 50 | 0 | Y | N |
Table name : wms_role_action
establish URL Permissions on the table
create table wms_action
(
ACTION_ID int not null auto_increment,
ACTION_NAME varchar(30) not null,
ACTION_DESC varchar(30),
ACTION_PARAM varchar(50) not null,
primary key(ACTION_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | ACTION_ID | int | 10 | 0 | N | Y | |||
| 2 | ROLE_ID | int | 10 | 0 | N | Y |
Table name : wms_roles
# Create user role table
create table wms_roles
(
ROLE_ID int not null auto_increment,
ROLE_NAME varchar(20) not null,
ROLE_DESC varchar(30),
ROLE_URL_PREFIX varchar(20) not null,
primary key(ROLE_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | ROLE_ID | int | 10 | 0 | N | Y | |||
| 2 | ROLE_NAME | varchar | 20 | 0 | N | N | |||
| 3 | ROLE_DESC | varchar | 30 | 0 | Y | N | |||
| 4 | ROLE_URL_PREFIX | varchar | 20 | 0 | N | N |
Table name : wms_supplier
# Create supplier information table
create table wms_supplier
(
SUPPLIER_ID int not null auto_increment,
SUPPLIER_NAME varchar(30) not null,
SUPPLIER_PERSON varchar(10) not null,
SUPPLIER_TEL varchar(20) not null,
SUPPLIER_EMAIL varchar(20) not null,
SUPPLIER_ADDRESS varchar(30) not null,
primary key(SUPPLIER_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | SUPPLIER_ID | int | 10 | 0 | N | Y | |||
| 2 | SUPPLIER_NAME | varchar | 30 | 0 | N | N | |||
| 3 | SUPPLIER_PERSON | varchar | 10 | 0 | N | N | |||
| 4 | SUPPLIER_TEL | varchar | 20 | 0 | N | N | |||
| 5 | SUPPLIER_EMAIL | varchar | 20 | 0 | N | N | |||
| 6 | SUPPLIER_ADDRESS | varchar | 30 | 0 | N | N |
Table name : wms_user
# Create system user information table
create table wms_user
(
USER_ID int not null auto_increment,
USER_USERNAME varchar(30) not null,
USER_PASSWORD varchar(40) not null,
USER_FIRST_LOGIN int not null,
primary key (USER_ID)
)engine=innodb;
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | USER_ID | int | 10 | 0 | N | Y | |||
| 2 | USER_USERNAME | varchar | 30 | 0 | N | N | |||
| 3 | USER_PASSWORD | varchar | 40 | 0 | N | N | |||
| 4 | USER_FIRST_LOGIN | int | 10 | 0 | N | N |
Table name : wms_user_role
explain :
Data columns :
| Serial number | name | data type | length | Decimal places | Allow null value | Primary key | The default value is | explain |
|---|---|---|---|---|---|---|---|---|
| 1 | ROLE_ID | int | 10 | 0 | N | Y | ||
| 2 | USER_ID | int | 10 | 0 | N | Y |
3、 ... and 、 Project function demonstration
Using technology
- Apache POI
- MyBatis
- Spring Framework
- Spring MVC
- Apache Shiro
- Ehcache
- Apache Commons
- Log4j
- Slf4j
- Jackson
- C3P0
- Junit
- MySQL-Connector
- jQuery
- Bootstrap
1、 Warehouse management function
- System operation authority management . The system provides basic login and logout functions , At the same time, the system contains two roles : Super administrators and ordinary system administrators , Super administrator has the highest operation authority , Ordinary administrators only have the most basic operation permissions , And it can only operate its own assigned warehouse .
request URL authentication . For the system user login after the operation to send a request URL, The background will judge whether it has the request according to the role of the current user URL Authority .
Basic data information management . Yes, including : Cargo information 、 Supplier information 、 Customer information 、 Warehouse information and other basic data information management , The operations provided are : add to 、 Delete 、 modify 、 Conditions of the query 、 Export to Excel From and to Excel Import .
Warehouse Manager Management . For warehouse manager information CRUD operation , Or assign the warehouse to be managed for the designated warehouse administrator . The above warehouse administrator can log in to the system as an ordinary administrator .
Inventory information management . The analysis of inventory information CRUD operation , Import and export operations , At the same time, the query can be based on the warehouse and commodity ID And so on .
Basic warehouse transaction operations . Implement the warehousing and outbound operations of goods .
System log query . Super administrator can query the system log of a user in a specific period of time .
System operation log query . Super administrators can query the operation records of a user's operation on the system in a specific period of time .
Password change .
2、 Login function realization
Database password use MD5 encryption
// User password (wms_user.USER_PASSWORD) Encryption rules
String tempStr = MD5Util.MD5("123456");// Encrypt the password for the first time
String encryptPassword = MD5Util.MD5(tempStr + "1001");// Encrypt the password for the second time
// The encrypted password stored in the database
System.out.println(encryptPassword);

3、 Screenshot of warehouse management system
Demo video :
SSM+jsp Realize warehouse management system
Project screenshots

- The login page

- Warehouse home page

- Inventory query

- Stock in and stock out query records

- In and out warehouse management

- The warehouse keeper added, deleted, modified and checked

- Supplier management

- Customer information management

- Cargo information management

- Warehouse information management

- Change Password

- system log

Four 、 Project source download
Project source code + Download address of database :https://download.csdn.net/download/weixin_44385486/85909953

边栏推荐
- vim —- 自己主动的按钮indent该命令「建议收藏」
- Opencv third party Library
- Ggplot facet detail adjustment summary
- Tflite model transformation and quantification
- [ArcGIS tutorial] thematic map production - population density distribution map - population density analysis
- Simple implementation of AVL tree insertion and verification operations
- The first introduction of the most complete mongodb in history
- Operational amplifier application summary 1
- Continuous learning of Robotics (Automation) - 2022-
- 使用切面实现记录操作日志
猜你喜欢
![[OA] excel document generator: openpyxl module](/img/e3/e6a13a79ad9023cf263d1926a224b5.png)
[OA] excel document generator: openpyxl module

Create commonly used shortcut icons at the top of the ad interface (menu bar)

测试/开发程序员怎么升职?从无到有,从薄变厚.......

力扣------路径总和 III
![[system management] clear the icon cache of deleted programs in the taskbar](/img/cc/7aff85f1a33ef390623652eadb6f03.png)
[system management] clear the icon cache of deleted programs in the taskbar

Food Chem | in depth learning accurately predicts food categories and nutritional components based on ingredient statements

硬件开发笔记(十): 硬件开发基本流程,制作一个USB转RS232的模块(九):创建CH340G/MAX232封装库sop-16并关联原理图元器件

Kotlin Android 环境搭建

Dab-detr: dynamic anchor boxes are better queries for Detr translation
![[knife-4j quickly build swagger]](/img/36/26ffb78e14fca97904d5478583e840.png)
[knife-4j quickly build swagger]
随机推荐
ABAP 動態內錶分組循環
termux设置电脑连接手机。(敲打命令贼快),手机termux端口8022
MySQL data loss, analyze binlog log file
机器人(自动化)课程的持续学习-2022-
web服务性能监控方案
使用 Dumpling 备份 TiDB 集群数据到 GCS
vim —- 自己主动的按钮indent该命令「建议收藏」
史上最全MongoDB之Mongo Shell使用
史上最全MongoDB之安全认证
POJ training plan 2253_ Frogger (shortest /floyd)
Use dumping to back up tidb cluster data to GCS
Antd comment recursive loop comment
力扣------路径总和 III
UltraEdit-32 温馨提示:右协会,取消 bak文件[通俗易懂]
[record of question brushing] 2 Add two numbers
HW notes (II)
Storage of data
史上最全MongoDB之部署篇
学习使用js把两个对象合并成一个对象的方法Object.assign()
AVL树插入操作与验证操作的简单实现