ibatis和mybatis有什么区别?
一、ibatis和mybatis的区别
1.传入参数
iBatis是parameterClass,而MyBatis是可以不写的,也可以用parameterType;parameterClass,而MyBatis是可以不写的,也可以用parameterType;
iBatis的传出参数关键字是:resultClass,而MyBatis是resultMap。
iBatis:
MyBatis:
2.接收参数
IBatis是使用# #和$ KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 23: …使用方法等同于MyBatis;#̲ #=#{ }, ==={ } ,解释一下#和KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 5: 的区别,#̲字符串处理,加单引号,可以一定…直接使用,当传入的是数字时,用#会进行隐式转换为字符串,耗性能。IBatis是使用# #和$ KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 23: …使用方法等同于MyBatis;#̲ #=#{ }, ==={ } ,解释一下#和KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 5: 的区别,#̲字符串处理,加单引号,可以一定…直接使用,当传入的是数字时,用#会进行隐式转换为字符串,耗性能。
3.判断语句
这个也是非常常用和重要的地方。
对于MyBatis的很简单,只要在where 或者if 的标签里面添加test=””就可以了,里面写判断条件了。但是IBatis的就麻烦了许多了,它将每个都方法都进行了封装。例如
isNull:判断property字段是否是null
4.循环的使用
iBatis是使用Iterate:这属性遍历整个集合,并为 java.util.List 集合中的元素重复元素体的内容。例如
and dept_id in
#deptIds[]#
deptIds是数组类型的属性值,当deptIds不为null或“”时,进行deptIds遍历取值。
MyBatis使用的是ForEach方法。他可以遍历List,,Map三种元素。
延伸阅读:
二、ibatis过渡为mybatis
对于从事Java EE的开发人员来说,iBatis 是一个再熟悉不过的持久层框架了,iBatis 可以算是在所有主流的持久层框架中学习成本最低,最容易上手和掌握的框架。虽说其他持久层框架也号称门槛低,容易上手,但是等到你真正使用时会发现,要想掌握并用好它是一件非常困难的事。
iBatis 自从在Apache软件基金会网站上发布至今,和他的明星兄弟们(Http Server,Tomcat,Struts,Maven,Ant等等)一起接受者万千 Java 开发者的敬仰。然而在当时,几乎是发布 3.0版本的同时,iBatis主页上的一则Apache iBATIS has been retired(退休)的声明在社区引起了一阵不小的波澜。在Apache寄居六年之后,iBatis将代码托管到Google Code。在声明中给出的主要理由是,和Apache相比,Google Code更有利于开发者的协同工作,也更能适应快速发布。于此同时,iBatis 更名为 MyBatis
从iBatis到MyBatis,不只是名称上的变化,MyBatis提供了更为强大的功能,同时并没有损失其易用性,相反,在很多地方都借助于JDK的泛型和注解特性进行了简化。iBatis 确实该退休了,因为一个更为出色的继任者经过 10个 Beta 版本的蜕变已然出现在我们的面前。
以上就是关于ibatis和mybatis的区别的内容希望对大家有帮助。

相关推荐HOT
更多>>
Wolfram语言所谓的 Knowledge-based language 与其他编程语言有什么区别?
一、Wolfram语言所谓的 Knowledge-based language 与其他编程语言的区别Wolfram语言所谓的 Knowledge-based language 与其他编程语言的区别是它详情>>
2023-10-11 22:45:40
嵌入式工控机与普通工控机有哪些区别?
一、嵌入式工控机与普通工控机的区别嵌入式工控机和普通工控机都是用于工业控制和自动化的设备,但两者之间存在以下区别:1、外观和尺寸不同嵌...详情>>
2023-10-11 21:06:52
JavaScript中null和undefined的区别?
一、JavaScript中null和undefined的区别1、null是js的关键字,表示空值;undefined不是js的关键字,它是一个全局变量2、null是Object的一个特殊...详情>>
2023-10-11 20:46:50
SQL数据库与ACESS数据库有哪些区别?
一、SQL数据库与ACESS数据库的区别1、类型不同SQL数据库通常是关系型数据库,而Access数据库是一种桌面数据库。2、应用范围不同SQL数据库适用于...详情>>
2023-10-11 19:59:44热门推荐
Wolfram语言所谓的 Knowledge-based language 与其他编程语言有什么区别?
沸VB和Java有什么区别?
热SQL中的 in 与 not in 有什么区别?
热嵌入式工控机与普通工控机有哪些区别?
新JavaScript中null和undefined的区别?
类拦截和方法拦截有哪些区别?
SQL数据库与ACESS数据库有哪些区别?
开启飞行模式断网和通过直接关闭wifi来断网有哪些区别?
ips和led屏幕区别?
开发塞班软件跟开发苹果软件有哪些区别?
tar包和jar包和war包的区别?
ibatis和mybatis有什么区别?
java的jdk和jre有什么区别?
C#和JAVA有哪些区别?
技术干货






