业务描述

基于Spring,MyBatis,SpringBoot,Thymeleaf技术实现商品模块的增删改查操作。

项目环境初始化

准备工作

1. MySQL(5.7)
2. JDK (1.8)
3. Maven (3.6.3)
4. STS(4.7.1)

数据库初始化

打开mysql控制台,然后按如下步骤执行goods.sql
第一步:登录mysql

mysql -uroot -proot

第二步:设置控制台编码方式

set names utf8

第三步:执行goods.sql文件(切记不要打开文件复制到mysql客户端运行)

source d:/sqlspace/goods.sql

其中goods.sql文件内容如下:

drop database if exists dbgoods;
create database dbgoods default character set utf8;
use dbgoods;
create table tb_goods(
     id bigint primary key auto_increment,
     name varchar(100) not null,
     remark text,
     createdTime datetime not null
)engine=InnoDB;
insert into tb_goods values (null,'java','very good',now());
insert into tb_goods values (null,'mysql','RDBMS',now());
insert into tb_goods values (null,'Oracle','RDBMS',now());
insert into tb_goods values (null,'java','very good',now());
insert into tb_goods values (null,'mysql','RDBMS',now());
insert into tb_goods values (null,'Oracle','RDBMS',now());
insert into tb_goods values (null,'java','very good',now());

创建项目并添加依赖

基于STS创建

第一步:基于start.spring.io创建项目并设置基本信息
image
第二步:创建项目时指定项目核心依赖
image
第三步:项目创建以后分析其结构
image

基于IDEA创建

第一步:基于start.spring.io 创建项目并设置基本信息
image
image
第二步:创建项目module时指定项目核心依赖
image
第三步:项目modul创建以后分析其结构
image

项目配置文件内容初始化

#server
server.port=80
#server.servlet.context-path=/
#spring datasource
spring.datasource.url=jdbc:mysql:///dbgoods?serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root

#spring mybatis
mybatis.mapper-locations=classpath:/mapper/*/*.xml

#spring logging
logging.level.com.cy=debug

#spring thymeleaf
spring.thymeleaf.prefix=classpath:/templates/pages/
spring.thymeleaf.suffix=.html
spring.thymeleaf.cache=false

项目API架构设计

其API架构设计,如图所示:
image

商品查询业务实现

业务描述

从商品库查询商品信息,并将商品信息呈现在页面上,如图所示:
image

业务时序分析

image

Pojo类定义

定义Goods对象,用于封装从数据库查询到的商品信息。
image

热部署配置及实现

基于SpringBoot的Web项目,修改了某个类以后,默认不会自动重新部署和加载,需要我们手动重启服务器。假如我们希望项目可以自动部署,可以添加如下依赖,进行热部署实现。

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
</dependency>

说明:当我们修改了src/main/java目录下的java文件或修改了src/main/resources目录下的配置文件时,默认都会重启你的web服务器,但是修改了测试类或html文件不会自动重启和部署。


fubin
10 声望0 粉丝