本篇内容主要讲解“springboot集成mybatis的实例代码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“springboot集成mybatis的实例代码”吧!
本节我们来详细说一下mybatis如何集成到springboot环境中
1. 引入mybatis相关jar
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<version>2.3.3.RELEASE</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
2. 配置mybatis
server:
port: 8010
spring:
application:
name: demo-mybatis
# 配置mysql数据库
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/lagou
username: root
password: root
mybatis:
# 指定需要加载的mapper xml文件
mapper-locations: classpath:mapping/*Mapper.xml
# 指定别名所在的包
type-aliases-package: com.example.mybatis.pojo
3. 启动类配置注解@MapperScan
,指定需要扫描的mapper包文件路径
@SpringBootApplication
@MapperScan(value = "com.example.mybatis.mapper")
public class DemoMybatisApplication {
public static void main(String[] args) {
SpringApplication.run(DemoMybatisApplication.class, args);
}
}
4. 新建一个User实体类(使用lombok替代get set方法)
@Data
@ToString
public class User {
private Integer id;
private String username;
private String password;
}
5. 创建Mapper接口。接口记得加@Repository
注解,表示注入spring
@Repository
public interface IUserMapper {
List<User> getUserList();
User getUserById(Integer id);
void addUser(User user);
void updateUser(User user);
void deleteUser(Integer id);
}
6. 创建user的映射文件
<?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.example.mybatis.mapper.IUserMapper">
<resultMap id="BaseResultMap" type="com.example.mybatis.pojo.User">
<result column="id" jdbcType="INTEGER" property="id"/>
<result column="userName" jdbcType="VARCHAR" property="userName"/>
</resultMap>
<select id="getUserList" resultType="user">
select * from users
</select>
<select id="getUserById" resultType="user">
select * from users where id = #{id}
</select>
<insert id="addUser" parameterType="user">
insert into users values(#{id}, #{username}, #{password})
</insert>
<update id="updateUser" parameterType="user">
update users set username=#{username}, password= #{password} where id = #{id}
</update>
<delete id="deleteUser" parameterType="int">
delete from users where id = #{id}
</delete>
</mapper>
7.接下来我们来创建一个测试类,测试下IUserMapper
中定义的接口是否可以正常使用
@ExtendWith(SpringExtension.class)
@SpringBootTest
class IUserMapperTest {
@Autowired
private IUserMapper userMapper;
@Test
public void getUserList() {
List<User> userList = userMapper.getUserList();
for (User user : userList) {
System.out.println(user);
}
}
@Test
void addUser() {
User user = new User();
user.setId(3);
user.setUsername("lalala");
user.setPassword("1qaz2wx");
userMapper.addUser(user);
}
@Test
public void getUserById() {
User user = userMapper.getUserById(3);
System.out.println(user);
}
@Test
void updateUser() {
User user = userMapper.getUserById(3);
user.setUsername("wudi");
userMapper.updateUser(user);
}
@Test
void deleteUser() {
userMapper.deleteUser(3);
}
}
好了,到这里我的springboot 已经成功的集成了mybatis,接下来我们就可以使用mybatis来处理我们的持久层业务了
到此,相信大家对“springboot集成mybatis的实例代码”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!