0 引言
SpringBoot是一个基于Spring技术的快速部署、整合框架。相较SSM,其省去了复杂冗余的项目配置和繁琐枯燥的重复步骤,使开发者可以专注于解决业务逻辑,从而提高编码效率。对于一般项目的开发,可以遵循以下步骤进行。
1、项目部署
1.1 创建SpringBoot项目
·点击新建项目
·选择Starter的来源,Default为官方源,一般推荐国内源,稳定不易出错
· 填写项目相关信息(Group,Artifact,Version)
·选择需要的依赖(SpringMVC,Mybatis,Lombok,MySQL Driver)
·Next至Finish即可完成项目创建
2.项目配置
相比SSM想到就让人头疼的各种配置文件,SpringBoot的主要配置文件只有application.properties
,一般的配置项在其中填写即可完成配置工作。
2.1 配置数据库连接信息
在application.properties
中完成配置
# 数据库驱动8.0以上用下面这个:
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# 数据库连接地址
spring.datasource.url=jdbc:mysql://localhost:3306/***?serverTimezone=UTC?characterEncoding=UTF-8
# 数据库用户名&密码:
spring.datasource.username=root
spring.datasource.password=**
2.2 配置Mpper文件和Entity,使Mybatis能够正常工作
#指定Mybatis的Mapper文件
mybatis.mapper-locations=classpath:mappers/*xml
#指定Mybatis的实体目录
mybatis.type-aliases-package=com.vincent.springdemo.mybatis.entity
3.编写简单业务进行测试
3.1 创建相应的package
3.2 entity中编写实体类
//lombok可以实现用注释替代冗余重复的代码片段
@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class Clazz {
private int cId;
private String cName;
private String cDesc;
}
3.3 DAO层编写相关操作
3.3.1创建名为ClazzDAO的接口
public interface ClazzDAO {
public int insertClass(Clazz clazz);
}
3.3.2 mappers包中创建ClazzMapper.xml编写SQL
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.vincent.springdemo.dao.ClazzDAO">
<insert id="insertClass" useGeneratedKeys="true" keyProperty="cId">
insert into class (cname,cdesc)
values (#{cName},#{cDesc})
</insert>
</mapper>
3.4 Service层编写相关操作
3.4.1创建名为ClazzService的接口
public interface ClazzService {
public Clazz register(Clazz clazz);
}
3.4.2 创建该接口实现类ClazzServiceImpl
@Service
public class ClazzServiceImpl implements ClazzService {
@Autowired
private ClazzDAO clazzDAO;
@Override
public Clazz register(Clazz clazz) {
int result = clazzDAO.insertClass(clazz);
if (result>0){
return clazz;
}else {
return null;
}
}
}
3.5 编写Controller层相关操作
3.5.1 创建ClazzController
@Controller
@RequestMapping("/clazz")
public class ClazzController {
@Autowired
private ClazzService clazzService;
@RequestMapping("/register")
//返回对象用ResponseBody
@ResponseBody
public Clazz register(Clazz clazz){
return clazzService.register(clazz);
}
}
3.6 启动类中添加扫描DAO包的注释,否则@Autowired将会失效
3.7 启动项目,检查是否可以正常运行
无报错,运行成功
3.8 测试功能
输入
http://localhost:8080/clazz/register/http://localhost:8080/clazz/register?cName=test&cDesc=test
端页面成功返回插入对象
数据库中也插入成功