实现一个最简单的MyBatis

MyBatis是什么
MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中。它将允许 MyBatis 参与到 Spring 的事务管理之中,创建映射器 mapper 和 SqlSession 并注入到 bean 中,以及将 Mybatis 的异常转换为 Spring 的 DataAccessException。 最终,可以做到应用代码不依赖于 MyBatis,Spring 或 MyBatis-Spring。
思考一下,我们怎么用在Spring中使用mybatis这个框架的
SqlSessionFactoryBean
//首先是不是有一个SqlSessionFactoryBean
//这个就是Mybatis创建SQL连接的一个工厂
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
//在SqlSessionFactoryBean中定义一个数据源
<property name="dataSource" ref="dataSource" />
// 配置mybatis
<property name="configLocation" value="classpath:mybatis-config2.xml" />
</bean>
你写的接口
public interface UserMapper {
@Select("SELECT * FROM users WHERE id = #{userId}")
User getUser(@Param("userId") String userId);
}
MapperFactoryBean 重点
//把链接和你的接口放到一个类中再找到 配置文件 执行创建一个可以使用的bean
//原理是动态代理
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean"