《Java EE企业级应用开发教程 第2版(Spring+Spring MVC+MyBatis)》黑马程序员编著 中国工信出版集团 人民邮电出版社
目录
1、请简述MyBatis框架动态SQL中的主要元素及其作用。
2、请简述MyBatis框架动态SQL中元素collection属性的注意事项。
1、请简述MyBatis框架动态SQL中的主要元素及其作用。
MyBatis动态SQL中的主要元素及其作用如下:
(1)<if>元素:用于判断语句,用于单条件分支判断。
(2)<choose>(<when>、<otherwise>)元素:相当于Java中的switch...case...default语句,用于多条件分支判断。
(3)<where>、<trim>、<set>元素:辅助元素,用于处理一些SQL拼装、特殊字符问题。
(4)<foreach>元素:循环语句,常用于in语句等列举条件中。
(5)<bind>元素: 从OGNL表达式中创建一个变量,并将其绑定到上下文,常用于模糊查询的sql中。
2、请简述MyBatis框架动态SQL中<foreach>元素collection属性的注意事项。
在使用<foreach>时,collection属性是必须指定的,而且在不同情况下,该属性的值是不一样的。主要有以下3种情况:
(1)如果传入的是单参数且参数类型是一个数组或者List的时候,collection属性值分别为array和list(或collection);
(2)如果传入的参数是多个的时候,就需要把它们封装成一个Map了,当然单参数也可以封装成Map集合,这时候collection属性值就为Map的键。
(3)如果传入的参数是POJO包装类的时候,collection属性值就为该包装类中需要进行遍历的数组或集合的属性名。
所以在设置collection属性值的时候,必须按照实际情况配置,否则程序就会出现异常。
版权声明:本文为WHT869706733原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。