SpringBoot
Posted jiaxing-java
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot相关的知识,希望对你有一定的参考价值。
SpringBoot整合MyBatis
1、环境搭建
1、新建项目
2、导入依赖
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
3、编写配置文件
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf-8
driver-class-name: com.mysql.cj.jdbc.Driver
4、测试类运行测试
@SpringBootTest
class Springboot05MybatisApplicationTests
@Autowired
DataSource dataSource;
@Test
void contextLoads() throws SQLException
System.out.println("getClass ===>" + dataSource.getClass());
System.out.println("getConnection ===>" + dataSource.getConnection());
2、创建实体类
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User
private int id;
private String name;
private String pwd;
(如要使用如上三个注解,需要导入Lombok依赖)
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.26</version>
</dependency>
3、创建Mapper接口
@Mapper // 这个注解表示了这是一个mybatis的mapper类
@Repository
public interface UserMapper
// 查询全部用户
List<User> queryUserList();
// 根据Id查询用户
User queryUserById();
// 增加用户
int addUser(User user);
// 删除用户
int deleteUser(int id);
// 修改用户
int updateUser(User user);
如不写@Mapper,可在主程序入口添加扫描包注解@MapperScan("com.kuang.mapper"),该包下所有接口都会被扫描
4、编写UserMapper.xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.kuang.mapper.UserMapper">
<select id="queryUserList" resultType="user">
select * from mybatis.user
</select>
<select id="queryUserById" resultType="user">
select * from mybatis.user where id = #id
</select>
<insert id="addUser" parameterType="user">
insert into mybatis.user (id, name, pwd) VALUES (#id,#name,#pwd)
</insert>
<update id="updateUser" parameterType="user">
update mybatis.user
set name = #name,
pwd = #pwd
where id = #id;
</update>
<delete id="deleteUser" parameterType="int">
delete from mybatis.user where id = #id
</delete>
</mapper>
别名要在application.yaml文件中配置
mybatis:
type-aliases-package: com.kuang.pojo
# 文件路径
mapper-locations: classpath:com/kuang/mapper/*.xml
全注解开发
1、编写UserMapper类
@Mapper
@Repository
public interface UserMapper
// 查询全部
@Select("select * from mybatis.user")
List<User> queryAll();
// 根据id查询
@Select("select * from mybatis.user where id = #id")
User getById(@Param("id") int id);
// 添加
@Insert("insert into mybatis.user(`id`,`name`,`pwd`) values(#id,#name,#pwd)")
int addUser(User user);
// 修改
@Update("update mybatis.user set `name` = #name,`pwd` = #pwd where `id` = #id")
int updateUser(User user);
// 删除
@Delete("delete from mybatis.user where `id` = #id")
int deleteUser(@Param("id")int id);
省略了UserMapper.xml配置文件的编写
2、如以往一样用其他类调用就可以了
以上是关于SpringBoot的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot入门到精通-SpringBoot自定义starter
最全面的SpringBoot教程——SpringBoot概述