码迷,mamicode.com
首页 > 其他好文 > 详细

mybatis开发

时间:2017-08-25 01:18:22      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:属性查询   apach   单表   查找   产品分类   分类   管理   延迟加载   UI   

 

Mybatis的历史:mybatis又称ibatis是apache的开源项目 2010年迁移到Goodle code更名mybatis

一、mybatis-cofig.xml的配置

开头文件:

技术分享

这里用的是mybatis版本3.0的jar包;然后是对dtd文件的一个引用

在<configuration></configuration>里面加上下面的这些配置信息

1、配置mybatis与数据库的链接这里配置的是orcale数据库

技术分享

2、配置log4j日志信息和懒加载(Lazy)

技术分享

3、配置映射mapper文件

技术分享

4、别名的配置

技术分享

 

二·、Mybaits的功能架构

1、api接口集:提供外部进行数据操作的接口(提供增、删、改、查获取配置)

2、数据处理层:sql查找、sql解析、sql执行、结果映射;

3、基础支持层:链接管理、事务管理、配置加载、缓存处理;

 三、ORM的基本思想

1、从配置文件产生SessionFactory(就是从mybatis-config.xml里面产生SessionFactory)

2、通过SessionFactory获取session;

3、在session中完成对数据的增删该查和事务提交

4、用完之后关闭session

5、Pojo对象与数据库之间的mapping配置文件的一个映射

 四、配置mapper的映射文件

1、首先对mapper的dtd文件的引用

技术分享

<mapper namespace="com.jinlin.hotelsup.dao.imp.GoodstypeMapper"></mapper>

这里的namespace里面是一个命名空间(这里指定的是dao.imp包下面的一个接口)下面就可以写你的sql语句了

技术分享

这里的resultType=""里面只是一个别名,他在mybatis文件里面进行了配置,这样可以减少代码量

 

五、加载配置文件、初始化SessionFactory、调用LOG4J日志文件

技术分享

  

sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);通过下面的方法生成sessionFactory

然后在用openSession()打开session;就可进行增删该查的数据操作了;

最后在关闭session;session.close();(这里的增删改还要进行事务提交:session.commit();)

 技术分享

 

 

六、resultMap映射的配置

技术分享

result表示数据库的字段和对象的字段的映射,column表示列名,property表示的是对象的属性名

<association>里面的property对应的是实体对象里面的一个属性名,javatype对应的是一个实体,通过这样的方法实现

表与表的关联

七、懒加载又称延迟加载(Lazy)

1、首先要引入Lazy的jar包

技术分享

 

2、然后在mybatis-config.xml里面进行配置

技术分享

3、重新配置resultMap结果集,

因为懒加载这里涉及到单表查询

技术分享

注意关联的时候,是通过select属性,这个select属性查询的是产品分类表(也是通过ID来查询的)

 

查询分类表的时候的SQL语句的配置

技术分享

这里的id:selectgoodstypeone对应的是assontation 里面的select所写的路径;

这样就能够实现懒加载了!

 

mybatis开发

标签:属性查询   apach   单表   查找   产品分类   分类   管理   延迟加载   UI   

原文地址:http://www.cnblogs.com/bokejavalqy/p/7425797.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!