目录
一、SpringBoot相关依赖
1.添加父工程坐标
2.添加web启动器
3.启动类
二、连接数据库
1.mysql连接池
1)引入依赖
2)配置application.properties
2.Druid连接池
三、整合mybatis
1.mybatis
1)引入依赖
2)配置application.properties
2.通用mapper
1)在pom文件中导入依赖。
2)Mapper层接口实现继承、添加注解
3)实体类
lombok依赖
4)数据库导入表
四、整合事务
五、测试SpringBoot项目搭建
附:完整依赖和配置
pom.xml
application.properties
org.springframework.boot
spring-boot-starter-parent
2.0.6.RELEASE
org.springframework.boot
spring-boot-starter-web
@SpringBootApplication
public class TestApplication {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
}
在pom.xml中引入jdbc的启动器
org.springframework.boot
spring-boot-starter-jdbc
mysql
mysql-connector-java
在resources下添加。指定连接池参数
# 连接四大参数
spring.datasource.url=jdbc:mysql://localhost:3306/dms
spring.datasource.username=root
spring.datasource.password=root
# 可省略,SpringBoot自动推断
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.hikari.idle-timeout=60000
spring.datasource.hikari.maximum-pool-size=30
spring.datasource.hikari.minimum-idle=10
当然,如果你更喜欢Druid连接池,也可以使用Druid官方提供的启动器。
com.alibaba
druid-spring-boot-starter
1.1.6
#初始化连接数
spring.datasource.druid.initial-size=1
#最小空闲连接
spring.datasource.druid.min-idle=1
#最大活动连接
spring.datasource.druid.max-active=20
#获取连接时测试是否可用
spring.datasource.druid.test-on-borrow=true
#监控页面启动
spring.datasource.druid.stat-view-servlet.allow=true
org.mybatis.spring.boot
mybatis-spring-boot-starter
1.3.2
# mybatis 别名扫描
mybatis.type-aliases-package=cn.yh.pojo
# mapper.xml文件位置,如果没有映射文件,请注释掉
mybatis.mapper-locations=classpath:mappers/*.xml
tk.mybatis
mapper-spring-boot-starter
2.0.2
@org.apache.ibatis.annotations.Mapper
public interface UserMapper extends tk.mybatis.mapper.common.Mapper{
}
org.projectlombok
lombok
@Data
@Table(name = "tb_user") //想要查询数据库中哪张表,如果不用通用mapper这里可不写
public class User {
@Id //注意,如果你想使用通用Mapper进行CRUD,一定要加上这个@Id注解
private Long id;
private String userName;
private String sex;
//如果数据库中有小数字段,这里类型需要改成String
}
CREATE TABLE `tb_user` (
`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`user_name` varchar(20) DEFAULT NULL,
`sex` varchar(10) DEFAULT NULL
);
-- ----------------------------
-- Records of tb_user
-- ----------------------------
INSERT INTO `tb_user` VALUES (1, 'zhangsan', '男');
INSERT INTO `tb_user` VALUES (2, '李四', '');
INSERT INTO `tb_user` VALUES (3, '王五', '男');
其实,我们引入jdbc或者web的启动器,就已经引入事务相关的依赖及默认配置了。至于事务,SpringBoot中通过注解来控制。在需要事务的方法上添加注解@Transactional
即可。
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User queryById(Long id){
return this.userMapper.selectByPrimaryKey(id);
}
@Transactional
public void deleteById(Long id){
this.userMapper.deleteByPrimaryKey(id);
}
}
在controller层中添加测试类,访问 http://localhost:8080/test/one
@RestController
@RequestMapping("test")
public class BookController {
@RequestMapping("one")
public String test(){
return "测试springboot";
}
}
org.springframework.boot
spring-boot-starter-parent
2.0.6.RELEASE
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-jdbc
mysql
mysql-connector-java
org.mybatis.spring.boot
mybatis-spring-boot-starter
1.3.2
tk.mybatis
mapper-spring-boot-starter
2.0.2
org.projectlombok
lombok
#端口号
server.port=8080
logging.level.org.springframework=debug
#logging.level.org.springframework=info
spring.datasource.url=jdbc:mysql://localhost:3306/自己的数据库名
spring.datasource.username=root
spring.datasource.password=123456
# mybatis 别名扫描,扫到实体类,不要忘记修改自己pojo类的包路径,例如:
mybatis.type-aliases-package=cn.ssm.pojo
# mapper.xml文件位置,如果没有映射文件,请注释掉
# mybatis.mapper-locations=classpath:mappers/*.xml