mybatis随笔记录

1.mybatis可以映射任何类型。自定义一个TypeHandler类实现TypeHandler接口的setParameter 和getResult方法就Ok,自定义的TypeHandler需要在MapperConfig.xml配置文件中进行配置
2.mybatis的接口编程。接口编程是为了使编程不那么容易错误而设计的一种设计模式。用户在编写一个项目时,会有多个模块,模块对应的写sql的xml文件命名空间写一样的也是有可能的。mybatis定义任意一接口对应某xml的命名空间,接口的方法与sql进行绑定,xml中的sql被封装了一个MappedStatement对象中,对象的key值就是命名空间接口类的名称+方法名,值就是MappedStatement对象,这样key值就不能重复,如果取同样的名字,MappedStatement对象将会被覆盖。
3.executor执行器类型
simpleExecutor:一条一条执行sql
batchExecutor:批量执行sql语句
reuseExecutor:statement重复被使用,相同的sql使用同一个statement
4.分页插件
mybatis的分页其实就是在Statement预编译sql的时候进行拦截,修改下sql语句来实现的。不同的数据库就有不同的分页sql,比如mysql 用limit
select *from A limit (当前页数-1)*每页条数,每页条数
Oracle : select *from(select b.*, b.rownum row_num from B b where b.rownum<=当前页数*每页条数 ) row_num>(当前页数-1)*每页条数

你可能感兴趣的:(mybatis)