发表于: 2016-07-31 22:05:38

2 2481


今天完成的事情:今天继续把昨天没整理晚的mybatis重新梳理,做好笔记。

1,SqlSession使用方法:

   SqlSessionFactoryBuilder:用于创建SqlSessionFactory,将SqlSessionFactoryBuilder当成工具类使用。

   SqlSessionFactory:会话工厂,用于创建SqlSession,SqlSessionFactory一旦创建成功,不用每次创建工厂,

建议单例模式使用工厂。如果和spring整合后,由spring来管理SqlSessionFactory,

在spring容器中SqlSessionFactory是一个单例对象。

   SqlSession:(重点)是一个面向用户的接口,通过SqlSessionFactory获取SqlSession,每次数据操作都需要创建新的SqlSession,SqlSession 不是线程安全,最佳应用场合是方法体内,在方法中定义一个SqlSession局部变量。

2,使用mybatis开发原始dao :

   需要我们自己开发dao接口和dao的实现类。

编写User.xml映射文件:

Dao接口和实现类:

总结问题:

在每一个dao方法中在调用 sqlSession的接口方法时需要对statement的id进行硬编码。

在调用 sqlSession的接口方法时,向statement传入参数,由于sqlSession接口方法参数是object,如果类型设置错误,

在编译阶段没有报错。

3,Mapper动态代理方法

Mapper动态代理方法:我们只需要写dao接口(Mapper),而不需要写dao实现类,由mybatis根据dao接口和映射文件

中statement的定义生成接口实现代理对象。可以调用代理对象方法。通过一些规则让mybatis根据dao接口和映射文件中

statement的定义生成接口实现代理对象

Mapper开发规则:

在mapper.xml中将namespace设置为mapper.java的全限定名

将mapper.java接口的方法名和mapper.xml中statement的id保持一致。

将mapper.java接口的方法输入参数类型和mapper.xml中statement的parameterType保持一致

将mapper.java接口的方法输出 结果类型和mapper.xml中statement的resultType保持一致

明天计划的事情:明天开始学习springMVC,以及和mybatis整合。

遇到的问题:一些基础性的东西写出来编译器会报错,不过最终还是顺利解决了。

收获:了解了一波Mybatis逆向工程。



返回列表 返回列表
评论

    分享到