springboot的sql语句xml配置
时间: 2023-10-17 16:22:36 浏览: 173
Spring XML 的配置实例
在Spring Boot中,我们通常使用MyBatis框架来操作数据库。MyBatis框架中,可以使用XML文件来编写SQL语句。
下面是一个使用XML文件配置SQL语句的例子:
1. 在resources目录下创建一个mapper目录,并在该目录下创建一个UserMapper.xml文件。
2. 在UserMapper.xml文件中,定义SQL语句,如下所示:
```xml
<?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.demo.mapper.UserMapper">
<select id="selectUserById" parameterType="int" resultType="com.example.demo.entity.User">
select * from user where id = #{id}
</select>
</mapper>
```
其中,mapper元素的namespace属性指定了该XML文件对应的Mapper接口的全限定名。
select元素的id属性指定了SQL语句的唯一标识符,parameterType属性指定了SQL语句的参数类型,resultType属性指定了SQL语句的返回结果类型。
3. 在Mapper接口中定义方法,如下所示:
```java
public interface UserMapper {
User selectUserById(int id);
}
```
其中,方法名与UserMapper.xml文件中的select元素的id属性值相同,方法的参数类型与select元素的parameterType属性值相同,方法的返回值类型与select元素的resultType属性值相同。
4. 在Spring Boot的配置类中配置MyBatis,如下所示:
```java
@Configuration
@MapperScan("com.example.demo.mapper")
public class MyBatisConfig {
@Bean
public SqlSessionFactoryBean sqlSessionFactory(DataSource dataSource) throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
Resource[] resources = new PathMatchingResourcePatternResolver().getResources("classpath:mapper/*.xml");
sessionFactory.setMapperLocations(resources);
return sessionFactory;
}
}
```
其中,@MapperScan注解指定了Mapper接口所在的包路径,SqlSessionFactoryBean的mapperLocations属性指定了Mapper XML文件所在的路径。
阅读全文