前言
Spring boot项目目前是Java Web开发领域最受市场欢迎的Spring框架之一,也是构建分布式项目、微服务项目重要基础之一,Spring Boot免去了配置繁杂的依赖和配置,使得开发人员把更多的精力放在项目本身上,就Spring框架而言,Spring Boot可谓是集大成者,担负着敏捷开发,前后台分离、模块低耦合的神圣使命;麻将哥也是一个忠实的SpringBoot fans,这篇教程零基础的带大家从新建项目开始,完成一个流程的CRUD。本教程采用Spring Boot+Mybatis+Mysql实现,麻将哥MySql的版本是5.7,建议大家的Mysql是5.7或者5.7+。
准备工作
编辑器:InteIIiJ IDEA
MySql数据库表设计:

IDEA新建Spring Boot 项目这篇文章就不再赘述,需要的小伙伴可以查看麻将哥的上一篇文章。
构建项目
- 使用IDEA新建项目后,目录结构如下:

2.在curddemo目录新建5个package,分别为bean,config,controller,mapper,service,bean主要用来放置实体类文件,config要来放置放置Swagger接口文档的配置类文件,controller用来放置程序控制器(API)类文件,service用来放置处理业务逻辑的类文件,mapper用来放置于数据库映射相关的类文件。建成项目目录如下:

3.在pom.xml文件下添加以下依赖:
<?xml version="1.0" encoding="UTF-8"?>4.0.0org.springframework.boot spring-boot-starter-parent 2.1.9.RELEASEcom.yisio curddemo 0.0.1-SNAPSHOTcurddemoDemo project for Spring Boot1.8org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-undertow org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.2org.springframework.boot spring-boot-starter-websocket org.apache.poi poi 3.17org.springframework.boot spring-boot-starter-mail org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-starter-websocket org.springframework.boot spring-boot-starter-cache org.springframework.boot spring-boot-starter-test testio.springfox springfox-swagger2 2.9.2io.springfox springfox-swagger-ui 2.9.2com.alibaba druid 1.1.10mysql mysql-connector-java org.springframework.boot spring-boot-maven-plugin src/main/java**/*.xmlsrc/main/resources
4.在resources目录的application.properties文件里配置mysql连接信息:
#Created by 码匠心 on 2019/10/05.#MySQL配置spring.datasource.type=com.alibaba.druid.pool.DruidDataSourcespring.datasource.url=jdbc:mysql://localhost:3306/springbootdemo?serverTimezone=UTC&characterEncoding=UTF-8spring.datasource.username=rootspring.datasource.password=root#MyBatis日志配置mybatis.config-location=classpath:/mybatis-config.xml#端口配置server.port=8080
5.在resources目录下新建mybatis日志文件mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
6.在bean目录下新建实体类User.java
/** * Created by 码匠心 on 2019/10/05. */public class User { public Integer UserId; public String UserName; public boolean Sex; public boolean Wedlock; public String Place; public void setUserId(Integer UserId){this.UserId=UserId;} public void setUserName(String UserName){this.UserName=UserName;} public void setSex(boolean Sex){this.Sex=Sex;} public void setWedlock(boolean Wedlock){this.Wedlock=Wedlock;} public void setPlace(String Place){this.Place=Place;}}
7.在config目录下新建Swagger在线接口文档的配置文SwaggerConfig.java
@Configuration@EnableSwagger2public class SwaggerConfig { @Bean public Docket api(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.any()) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() //文档标题 .title(" Spring Boot RESTful API") // 版本号 .version("1.0") // 标题描述 .description("swagger在线文档") .build(); } }
8.在mapper目录下新建UserMapper接口文件,新建增删改查的四个方法
/** * Created by 码匠心 on 2019/10/05. */import java.util.List;@Mapperpublic interface UserMapper { List getAllUser(); int AddUser(User users); int updateUser(@Param("users") User users); int deleteUserByUserId(@Param("ids") String[] ids);}
9.在mapper目录下新建UserMapper.xml文件,使用mybtis操作数据库
<?xml version="1.0" encoding="UTF-8" ?> select * from sysuser; insert into sysuser(UserName,Sex,Wedlock,Place) values(#{UserName,jdbcType=VARCHAR}, #{Sex,jdbcType=BOOLEAN}, #{Wedlock,jdbcType=BOOLEAN}, #{Place,jdbcType=VARCHAR}) update sysuser UserName=#{users.UserName,jdbcType=VARCHAR}, Sex=#{users.Sex,jdbcType=BOOLEAN}, Wedlock=#{users.Wedlock,jdbcType=BOOLEAN}, Place=#{users.Place,jdbcType=VARCHAR} where UserId=#{users.UserId,jdbcType=INTEGER} DELETE from sysuser where UserId in