当前位置:实例文章 » JAVA Web实例» [文章]Spring 整合 Mybatis -- Spring入门保姆级教程(四)

Spring 整合 Mybatis -- Spring入门保姆级教程(四)

发布人:shili8 发布时间:2023-06-01 16:40 阅读次数:109

Spring 整合 Mybatis 是一个非常常见的开发场景,本文将介绍如何使用 Spring 整合 Mybatis,以及如何配置和使用 Mybatis。

1. 配置 Mybatis

首先,我们需要在 pom.xml 文件中添加 Mybatis 和 Mybatis-Spring 的依赖:

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.6</version>
</dependency>

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>2.0.6</version>
</dependency>


然后,我们需要在 Spring 的配置文件中配置 Mybatis:

<!-- 配置数据源 -->
<bean id=dataSource class=org.springframework.jdbc.datasource.DriverManagerDataSource>
    <property name=driverClassName value=com.mysql.jdbc.Driver/>
    <property name=url value=jdbc:mysql://localhost:3306/test/>
    <property name=username value=root/>
    <property name=password value=root/>
</bean>

<!-- 配置 Mybatis 的 SqlSessionFactory -->
<bean id=sqlSessionFactory class=org.mybatis.spring.SqlSessionFactoryBean>
    <property name=dataSource ref=dataSource/>
    <property name=configLocation value=classpath:mybatis-config.xml/>
</bean>

<!-- 配置 Mybatis 的 MapperScannerConfigurer -->
<bean class=org.mybatis.spring.mapper.MapperScannerConfigurer>
    <property name=basePackage value=com.example.mapper/>
</bean>


在上面的配置中,我们首先配置了数据源,然后配置了 Mybatis 的 SqlSessionFactory,最后配置了 Mybatis 的 MapperScannerConfigurer。

2. 编写 Mapper

接下来,我们需要编写 Mapper 接口和对应的 Mapper.xml 文件。这里以一个 UserMapper 为例:

public interface UserMapper {
    User getUserById(int id);
}


<select id=getUserById parameterType=int resultType=com.example.model.User>
    select * from user where id = #{id}
</select>


在上面的代码中,我们定义了一个 UserMapper 接口,其中有一个方法 getUserById,它对应了一个 Mapper.xml 文件中的 select 语句。

3. 使用 Mapper

最后,我们需要在 Spring 中使用 Mapper。这里以一个 UserService 为例:

@Service
public class UserService {
    @Autowired
    private UserMapper userMapper;

    public User getUserById(int id) {
        return userMapper.getUserById(id);
    }
}


在上面的代码中,我们使用了 @Autowired 注解将 UserMapper 注入到 UserService 中,然后在 getUserById 方法中调用了 UserMapper 的 getUserById 方法。

至此,我们已经完成了 Spring 整合 Mybatis 的配置和使用。

其他信息

其他资源

Top