springboot簡單實現超市賬單管理系統

超市賬單管理系統

功能模塊:用戶登錄、用戶管理、賬單管理、供應商管理

技術應用:Springboot框架+Mysql5.7+thymeleaf

項目工具:Maven+jdk1.8+GIT

開發工具:IDEA

測試環境:window7+搜狗瀏覽器10.0

一、數據庫表結構設計

需要三張表:用戶表、賬單表、供應商表

創建數據庫

CREATE DATABASE IF NOT EXISTS market;
1、用戶表admin_user
描述 字段 類型 約束
用戶id id int 主鍵自增
用戶名 name varchar
密碼 password varchar
性別 gender int
年齡 age int
編碼 code varchar
手機號 mobile varchar
用戶類型 type int

此處表是先創建的實體類,通過插件生成的sql

建表sql:

CREATE TABLE `admin_user`(
    `id` INT (11) NOT NULL AUTO_INCREMENT COMMENT 'id',
    `name` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'name',
    `password` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'password',
    `gender` INT (11) NOT NULL DEFAULT -1 COMMENT 'gender',
    `age` INT (11) NOT NULL DEFAULT -1 COMMENT 'age',
    `code` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'code',
    `mobile` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'mobile',
    `type` INT (11) NOT NULL DEFAULT -1 COMMENT 'type',
    PRIMARY KEY (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT '`admin_user`';
2、供應商表provider
描述 字段 類型 約束
供應商id id int 主鍵自增
編碼 code varchar
供應商名稱 name varchar
聯繫人 linkman varchar
電話 phone varchar
傳真 fax varchar
創建時間 createDate Date

建表sql:

CREATE TABLE `provider`(
    `id` INT (11) NOT NULL AUTO_INCREMENT COMMENT 'id',
    `code` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'code',
    `name` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'name',
    `linkman` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'linkman',
    `phone` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'phone',
    `fax` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'fax',
    `create_date` DATETIME NOT NULL DEFAULT '1000-01-01 00:00:00' COMMENT 'createDate',
    PRIMARY KEY (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT '`Provider`';
3、賬單表bill
描述 字段 類型 約束
賬單id id int 主鍵自增
商品名稱 goodsName varchar
商品單位 unit varchar
商品數量 amount int
總金額 price int
供應商id providerId int
供應商id名稱 providerName varchar
付款狀態 status int
創建時間 createDate Date

建表sql:

CREATE TABLE `bill`(
    `id` INT (11) NOT NULL AUTO_INCREMENT COMMENT 'id',
    `goods_name` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'goodsName',
    `unit` VARCHAR (50) NOT NULL DEFAULT '' COMMENT 'unit',
    `amount` INT (11) NOT NULL DEFAULT -1 COMMENT 'amount',
    `price` INT (11) NOT NULL DEFAULT -1 COMMENT 'price',
    `provider_id` INT (11) NOT NULL DEFAULT -1 COMMENT 'providerId',
    `status` INT (11) NOT NULL DEFAULT -1 COMMENT 'status',
    `create_date` DATETIME NOT NULL DEFAULT '1000-01-01 00:00:00' COMMENT 'createDate',
    PRIMARY KEY (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT '`bill`';

二、項目準備

1、創建一個maven工程
2、引入jar包
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.booy.springboot</groupId>
    <artifactId>market</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>

    <!--引入springboot父版本-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.2.RELEASE</version>
        <relativePath/>
    </parent>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <!--整合springMVC及相關配置文件-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--mybatis包-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.1</version>
        </dependency>
        <!-- mysql驅動包 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.29</version>
        </dependency>
        <!--thymeleaf包,注意小版本差異也大-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <!--分頁-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.2.3</version>
        </dependency>
    </dependencies>

    <!--配置資源文件掃描,否則Mapper-->
    <build>
        <!--將springboot的應用程序打包成fat jar的插件-->
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>
    </build>
</project>
3、配置文件

在resources下創建application.properties配置文件

#數據源的基本信息
spring.datasource.url=jdbc:mysql://localhost:3306/market?characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driverClassName = com.mysql.jdbc.Driver
#mybatis中mapper文件的路徑
mybatis.mapper-locations=classpath*:com/booy/boot/dao/mapper/*.xml
#起別名,可省略寫mybatis的xml中的resultType的全路徑
mybatis.type-aliases-package=com.booy.boot.pojo
#視圖解析器,規定訪問資源路徑的後綴
spring.mvc.view.suffix=.html
4、前端模板

靜態頁面模板地址:https://download.csdn.net/download/booy123/12564032

三、實現源碼

源碼地址:https://github.com/booyzhang/bootmarket
代碼結構如圖:
在這裏插入圖片描述
運行效果:
登錄頁:
在這裏插入圖片描述
主頁
在這裏插入圖片描述
用戶管理:
在這裏插入圖片描述
編輯頁
在這裏插入圖片描述
供應商管理
在這裏插入圖片描述
賬單管理
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章