- 一、代理开发方式
- 二、动态SQL语句
-
mybatis代理开发方式是当前企业开发的主流
-
Mapper接口开发方法只需要程序员编写Mapper接口,有Mybatis框架根据接口定义创建接口的动态代理对象。
-
Mapper接口开发需要遵循以下规范:
(1)Mapper.xml文件中的namespace与mapper接口的全限定名相同
(2)Mapper.xml中定义的每个statement的id和Mapper接口的方法名相同
(3)Mapper.xml中定义的每个sql的parameterType的类型和Mapper接口方法的输入参数类型相同
(4)Mapper.xml中定义的每个sql的resultType的类型和Mapper接口方法的输出参数类型相同 -
DEMO
在核心配置文件中加入映射配置文件:
select * from user where id=#{id}
package mybatis.mapper;
public interface UserMapper {
User queryById(Integer id);
}
测试用例
// 加载核心配置文件
InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
// 获得sqlSession工厂对象
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
// 获取代理对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
System.out.println(userMapper.queryById(1));
sqlSession.close();
附:mybatis默认定义的typeAlias



