06-SpringBoot+MyBatis+Spring技术整合实现商品品牌模块的CRUD操作

本文详细介绍了如何使用SpringBoot、MyBatis和Spring技术实现商品品牌模块的增删查改操作。从业务描述、数据库设计、项目环境初始化到各层对象的设计与实现,涵盖领域对象(POJO)、数据逻辑对象(DAO)、业务逻辑对象(Service)、控制逻辑对象(Controller)以及客户端页面的设计和实现,全面解析了整个流程中的关键步骤和可能遇到的问题。
摘要由CSDN通过智能技术生成

1.业务描述

1.1 需求描述

任何一个电商系统中都有一个商品子系统,而与商品相关联都会有一个品牌信息管理,在当前业务系统设计中我们就是要对商品品牌信息的管理进行设计和实现

1.2 业务架构分析

在品牌(Brand)信息管理中心就是要实现对商品品牌信息的添加,修改,查询,删除等业务,如图所示:
在这里插入图片描述

1.3 业务基本原型设计

1.3.1 基于品牌业务描述,对品牌模块的业务原型进行分析和设计,如图所示:

  • 品牌列表页面
    在这里插入图片描述
  • 品牌编辑页面
    在这里插入图片描述

1.4 项目技术架构分析及设计

在品牌管理模块实现过程,我们采用典型的C/S架构进行实现.客户端我们基于浏览器进行实现,服务端采用tomcat,数据库使用MySQL.具体应用层基于MVC分层架构进行实现

1.5 项目技术栈应用分析及选型

  • 客户端技术:html,css,javascript,bootstrap
  • 服务端技术:hikaricp,mybatis,spring,springboot,thymeleaf
  • 数据库技术:mysql,sql
  • 开发工具集:jdk1.8,maven3.6.3,idea2020.1

1.6 项目品牌模块核心API分析与设计

基于分层架构设计思想,现对品牌API进行设计,如图所示:
在这里插入图片描述

2.数据库及表的分析与设计

2.1 设计并创建数据库

2.1.1 假如数据库已存在,则先删除数据库,代码如下:

drop database if exists dbbrand;

2.1.2 创建新的数据库,代码如下:

create database dbbrand default character set utf8;

2.2 设计并创建品牌(Brand)表

2.2.1 打开数据库,语句如下:

create database dbbrand default character set utf8;

2.2.2 在dbbrand数据库中创建品牌表

create table tb_brand(
     id bigint primary key auto_increment,
     name varchar(100) not null,
     remark text,
     createdTime datetime not null
)engine=InnoDB;

2.3 基于SQL脚本执行数据库初始化

将数据库设计脚本写到brand.sql中,然后按如下步骤执行:

2.3.1 打开mysql自带客户端,登录mysql,指令如下:

mysql -uroot -proot

2.3.2 设置客户端编码,指令如下:

set names utf8;

2.3.3 执行sql脚本,指令如下:

source d:/brand.sql

2.3.4 脚本执行成功以后,在客户端查询数据之前,先执行如下语句:

set names gbk;

3.项目环境初始化

3.1 准备操作

1).JDK 1.8
2).Maven 3.6.3
3).IDEA 2020.1
4).MySQL 5.6

3.2 创建项目Module

打开idea,然后基于设计,创建项目module,如图所示:
在这里插入图片描述

3.3 添加项目Module依赖

3.3.1 Mysql驱动

<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <scope>runtime</scope>
</dependency>

3.3.2 Spring jdbc提供了HikariCP连接池

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-data-jdbc</artifactId>
</dependency>

3.3.3 MyBatis资源

<dependency>
   <groupId>org.mybatis.spring.boot</groupId>
   <artifactId>mybatis-spring-boot-starter</artifactId>
   <version>2.1.3</version>
</dependency>

3.3.4 Spring Web依赖(内置一个tomcat服务)

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>

3.3.5 Thymeleaf依赖(html模板引擎)

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

3.4 项目Module基础配置

打开项目Module配置文件application.properties,并添加如下内容:

# spring server
server.port=80

# spring datasource
spring.datasource.url=jdbc:mysql:///dbbrand?serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root

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

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

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

3.5 启动项目进行初步环境测试分析

3.5.1 端口号被占用

在这里插入图片描述

3.5.2 数据库连接错误

在这里插入图片描述

4.品牌数据的查询及呈现

4.1 业务描述

将数据库中的品牌信息查询出来,然后在客户端基于html技术进行呈现,如图所示:
在这里插入图片描述

4.2 服务端品牌查询时序设计

基于查询请求,进行访问时序设计,如图所示:
在这里插入图片描述

4.3 领域对象(POJO)设计及实现

设置Brand对象,基于此对象封装从数据库查询到的品牌信息,代码如下:

package com.cy.pj.brand.pojo;
import java.util.Date;
public class Brand {
   
    private Integer id;
    private String name;
    private String remark;
    private Date createdTime;
    public Integer getId() {
   
        return id;
    }
    public void setId(Integer id) {
   
        this.id = id;
    }
    public String getName() {
   
        return name;
    }
    public void setName(String name) {
   
        this.name = name;
    }
    public String getRemark() {
   
        return remark;
    }
    public void setRemark(String remark) {
   
        this.remark = remark;
    }
    public Date getCreatedTime() {
   
        return createdTime;
    }
    public void setCreatedTime(Date createdTime) {
   
        this.createdTime = createdTime;
    }
    @Override
    public String toString() {
   
        return "Brand{" +
                "id=" +
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值