MyBatis-Spring 使用教程
springSpring integration for MyBatis 3项目地址:https://gitcode.com/gh_mirrors/sprin/spring
项目介绍
MyBatis-Spring 是一个开源项目,它将 MyBatis 框架与 Spring 框架集成在一起,使得在 Spring 应用中使用 MyBatis 变得更加方便。MyBatis 是一个优秀的持久层框架,支持定制化 SQL、存储过程以及高级映射。通过 MyBatis-Spring,开发者可以更容易地在 Spring 环境中配置和使用 MyBatis。
项目快速启动
环境准备
- JDK 1.8 或更高版本
- Maven 3.x
- Spring 5.x
- MyBatis 3.x
添加依赖
在 pom.xml
文件中添加以下依赖:
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.6</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.3.9</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.3.9</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.200</version>
</dependency>
</dependencies>
配置数据源和 MyBatis
在 applicationContext.xml
中配置数据源和 MyBatis:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.h2.Driver"/>
<property name="url" value="jdbc:h2:mem:testdb"/>
<property name="username" value="sa"/>
<property name="password" value=""/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="mapperLocations" value="classpath*:mappers/*.xml"/>
</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.example.mapper"/>
</bean>
创建 Mapper 接口和 XML 映射文件
创建一个 Mapper 接口 UserMapper.java
:
package com.example.mapper;
import com.example.model.User;
public interface UserMapper {
User getUserById(int id);
}
创建对应的 XML 映射文件 UserMapper.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.mapper.UserMapper">
<select id="getUserById" resultType="com.example.model.User">
SELECT * FROM users WHERE id = #{id}
</select>
</mapper>
测试代码
创建一个简单的测试类来验证配置:
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.example.mapper.UserMapper;
import com.example.model.User;
public class Main {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
UserMapper userMapper = context.getBean(UserMapper.class);
User user = userMapper.getUserById(1);
System.out.println(user);
}
}
应用案例和最佳实践
应用案例
MyBatis-Spring 广泛应用于企业级应用中,特别是在需要复杂 SQL 操作和高级映射的场景。例如,一个电商平台的订单管理系统可能会使用 MyBatis-Spring 来处理订单数据的持久化。
springSpring integration for MyBatis 3项目地址:https://gitcode.com/gh_mirrors/sprin/spring