Mybatis介绍.ppt

上传人:scccc 文档编号:13817951 上传时间:2022-01-24 格式:PPT 页数:46 大小:574KB
返回 下载 相关 举报
Mybatis介绍.ppt_第1页
第1页 / 共46页
Mybatis介绍.ppt_第2页
第2页 / 共46页
Mybatis介绍.ppt_第3页
第3页 / 共46页
Mybatis介绍.ppt_第4页
第4页 / 共46页
Mybatis介绍.ppt_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《Mybatis介绍.ppt》由会员分享,可在线阅读,更多相关《Mybatis介绍.ppt(46页珍藏版)》请在三一文库上搜索。

1、MyBATIS介绍,大纲,第一部分: MyBATIS介绍第二部分:基础知识点第三部分:开发中的应用,第一部分: MyBATIS介绍,一、什么是MyBATIS二、与传统的JDBC比较三、与Hibernate框架比较四、工作流程,一、什么是MyBATIS,介绍MyBATIS的前身是iBATISiBATIS是Clinton Begin开发,现在由APACHE基金会支持的用于加快JDBC编程的经过泛化的框架,是一个持久化框架。相对于hibernate和apache ojb等“一站式”orm解决方案而言,ibatis是一种“半自动化”的orm实现。,一、什么是iBATIS,基本要素sql maps:是整

2、个ibatis database layer的核心价值所在。通过使用sql maps你可以显著的节约数据库操作的代码量。sql maps使用一个简单的xml文件来实现从javabean到sql statements的映射。跟其他的框架或者对象映射工具相比,sql maps最大的优势是简单。,二、与传统的JDBC比较,比较减少了61%的代码量最简单的持久化框架架构级性能增强SQL代码从程序代码中彻底分离,可重用增强了项目中的分工增强了移植性,三、与Hibernate框架比较,Hibernate映射关系,三、与Hibernate框架比较,MyBATIS映射关系,三、与Hibernate框架比较,实

3、际开发比较1 、iBATIS需要手写sql语句,也可以生成一部分,Hibernate则基本上可以自动生成,偶尔会写一些Hql。同样的需求,iBATIS的工作量比Hibernate要大很多。类似的,如果涉及到数据库字段的修改,Hibernate修改的地方很少,而iBATIS要把那些sql mapping的地方一一修改。,三、与Hibernate框架比较,实际开发比较2、iBatis 可以进行细粒度的优化 (1)更新一个表的某个字段:UPDATE TABLE_A SET column_1=#column_1# WHERE id=#id# (2)列出一个表的部分内容 SELECT ID, NAME

4、FROM TABLE_TABLENAME WHERE .,三、与Hibernate框架比较,实际开发比较3、可维护性方面,iBatis 更好一些。因为 iBatis 的 sql 都保存到单独的文件中。而 Hibernate 在有些情况下可能会在 java 代码中保sql/hql。,四、工作流程,四、工作流程,1)接收一个对象参数2)执行这个映射的statement3)返回,第二部分:基础知识点,一、认识sqlMapClient二、SqlmapConfig.xml三、Sqlmap.xml,一、认识sqlMapClient,简述它是iBatis中的重要接口,这个接口涉及到对SQL映射的执行和批处理

5、。,一、认识sqlMapClient,API【1】Object queryForObject(java.lang.String id);Object queryForObject(java.lang.String id, java.lang.Object parameterObject);Object queryForObject(java.lang.String id, java.lang.Object parameterObject, java.lang.Object resultObject),一、认识sqlMapClient,API【2】Map queryForMap(java.lan

6、g.String id, java.lang.Object parameterObject, java.lang.String keyProp);Map queryForMap(java.lang.String id, java.lang.Object parameterObject, java.lang.String keyProp, java.lang.String valueProp);,一、认识sqlMapClient,API【3】List queryForList(java.lang.String id); List queryForList(java.lang.String id,

7、 int skip, int max); List queryForList(java.lang.String id, java.lang.Object parameterObject); List queryForList(java.lang.String id, java.lang.Object parameterObject, int skip, int max);,一、认识sqlMapClient,API【4】Object insert(String id, Object parameterObject);Object insert(String id);int update(Stri

8、ng id, Object parameterObject) ;int update(String id) ;int delete(String id, Object parameterObject) ;int delete(String id);,二、sqlmapconfig.xml,简述它是使用iBATIS的起点,负责把所有的SQL映射文件组合在一起。用于配置文件中告诉iBATIS如何连接数据库,以及获取哪些SQL映射文件。,二、sqlmapconfig.xml,项目中的sqlmapconfig.xml,二、sqlmapconfig.xml,主配置文件之外提供一个名值对列如: 添加各种属性

9、如:延迟加载,使用限定名等。用于指定使用什么事物管理器等功能。 已经内置的类型别名定义将数据从数据库特定的数据类型转换为应用程序中的数据类型。总标签,三、sqlmap.xml,简述包含了我们将要运行的SQL语句,三、sqlmap.xml,项目中的sqlmap.xml,三、sqlmap.xml, 查询 插入数据 更新数据库中信息 删除 存储过程 select * from a where name=“aaa”,第三部分:开发中的应用,一、如何配置iBATIS二、DAO及SqlMap的应用三、对数据库访问的调用,一、如何配置MyBATIS,在Spring配置文件applicationContext

10、.xml中配置myBatis,一、如何配置MyBATIS,项目中MyBatis的配置文件位置,项目中Model的位置,二、DAO及SqlMap的应用,二、DAO及SqlMap的应用,Mode写法,二、DAO及SqlMap的应用,SqlMap在项目中的位置,SqlMap的写法Select的写法,二、DAO及SqlMap的应用,二、DAO及SqlMap的应用,SqlMap的写法Insert写法,SqlMap的写法Update写法,二、DAO及SqlMap的应用,SqlMap的写法Delete的写法,二、DAO及SqlMap的应用,二、DAO及SqlMap的应用,SqlMap的写法Sql的组合,二、

11、DAO及SqlMap的应用,要点:sqlMap中的Namespace要与sqlMapConfig.xml中alias定义名称一致sqlMapConfig.xml中的type要与对应model所在的类路径一致,二、DAO及SqlMap的应用,DAO的定义DAO在项目中位置,DAO的定义DAO接口定义,二、DAO及SqlMap的应用,二、DAO及SqlMap的应用,DAO的定义实现类定义,二、DAO及SqlMap的应用,要点:DAO的实现类中的语句调用名称要和sqlmap中的名称一致,三、对数据库访问的调用,Service方法(业务层)接口,三、对数据库访问的调用,Service实现类中调用DAO接口(数据层),三、对数据库访问的调用,Action(控制层)中调用Service接口,三、对数据库访问的调用,总结构,课后作业,1.请根据之前的学习做出程序示例:应用MyBatis操作数据库在相应表中添加一条记录,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1