下面是SpringBoot集成Mybatis+xml格式的sql配置文件操作的完整攻略:
- 首先,在 pom.xml 文件中添加 Mybatis 和 Mybatis-SpringBoot-Starter 的依赖:
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.6</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
- 在 application.properties 文件中配置 Mybatis 和数据库信息:
# MyBatis配置
mybatis.mapper-locations = classpath:mapper/*.xml
mybatis.type-aliases-package = com.example.demo.entity
# 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/test_db
spring.datasource.username=root
spring.datasource.password=root12345
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
- 创建 Mapper 接口
public interface UserMapper {
User findUserById(Long id);
}
- 创建 User 实体类
public class User {
private Long id;
private String name;
private Integer age;
// ... getter和setter方法
}
- 创建 XML 格式的 Mapper 配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper
Configuration 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.UserMapper">
<select id="findUserById" parameterType="java.lang.Long"
resultType="com.example.demo.entity.User">
select * from user where id=#{id}
</select>
</mapper>
- 注入 Mapper 并测试
@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class UserMapperTest {
@Autowired
private UserMapper userMapper;
@Test
public void testFindUserById() {
User user = userMapper.findUserById(1L);
assertNotNull(user);
}
}
- 示例说明:演示了通过 Mybatis 配置文件和 Mapper 接口实现了对数据库的操作,并且通过测试方法验证了方法的正确性。这是一种比较传统的 Mybatis 集成 SpringBoot 的方法,适合对 SQL 语句掌握较好的开发者。
另外,Mybatis 还支持使用注解的方式配置 SQL 语句,可以更加方便和灵活地编写 SQL,这里我们也提供一个示例:
- 创建 Mapper 接口
@Mapper
public interface UserMapper {
@Select("SELECT * FROM user WHERE id = #{id}")
User findById(Long id);
}
- 测试方法与第一种方式相同,只需要注入 UserMapper 并且调用相应的方法即可。
这种方式虽然更加灵活,但是要求开发者对 SQL 语法掌握得更熟练,适合有一定经验的开发者。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot集成Mybatis+xml格式的sql配置文件操作 - Python技术站