hailai 发表于 2016-11-27 08:12:05

关于ibatis 和 mybatis 在使用中的一点感触

  最近想学习一下ibatis(mybatis)这个所谓“半自动”的ORM框架;
  我相信很多的同学跟我一样刚开始学的时候,持久层的框架是选择的hibernate。
  hibernate确实很方便,但是性能和灵活性方面却比不上mybatis,所以很多公司最终是选择了mybatis或者自主封装的JDBC,再或者用spring的JDBC。
  软件的开源,给其带来了无限的生机和活力。
  作为持久层框架的ibatis(mybatis)也一样的充满活力,我这个门外汉也对它心驰神往,想窥探一下它的神秘。
  ---------------------------------------------------------------------------------------------------------------------
  ibatis的易名和所属机构的迁移对其的传承性有一定的影响,但是我相信只要是足够优秀的软件,它的光芒依旧会耀眼。
  刚开始学习的时候,由于ibatis早前jar包的在整合spring开发的时候会存在一些问题,而且jar分散不易于管理,在添加引用的时候总会担心冲突和遗漏,让人小心翼翼的处理,也走了不少弯路……
  比如最常见的:Caused by: java.lang.NoSuchMethodError: com.ibatis.common.xml.NodeletParser.parse(Ljava/io/InputStream;)V
  这样的错误。
  或者com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse
  (Ljava/io/InputStream;Ljava/util/Propertis)
  这样类似的错误。
  那是因为,在ibatis2 的 ibatis-sqlmap-2.jar 只有parse(Reader)和parse(Reader,Properties)两个方法,没有参数为Inputstream的方法或者Inputstrem,properties的方法。
  现在好了,在2.3.x版本以后则整合成了一个包,ibatis-2.3.x.jar。就不会出现这种整合接口不统一的情况了。如果你使用maven管理jar包只需要添加
  <dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>2.3.5</version>
  </dependency>
  加入mybatis2.3.X的jar包依赖就OK了,相当方便!
  真希望mybatis能够越来越强大,尽量做到jar的稳定和统一,让我们这些初学者少走一些弯路。
页: [1]
查看完整版本: 关于ibatis 和 mybatis 在使用中的一点感触