文档章节

MyBatis

吃兔纸不吐毛
 吃兔纸不吐毛
发布于 2016/12/09 16:09
字数 465
阅读 1
收藏 0

1.把resultMap定义成集合,集合里面还可以定义实体类的resultMap

<!--  这种情况适用于接受的实体类属性是个集合,集合里包含别的实体类,比如最近使用的XStream框架就适用这种情况,XStream框架定义接收的类属性为集合,然后直接把这个类变成xml问件  -->
<resultMap id="execPlanListMap" type="com.nielsen.sfa.model.ExecPlanList">
    <collection property="execPlanList" ofType="com.nielsen.sfa.model.ViewExecPlanDetail" javaType="ArrayList" resultMap="viewExecPlanDetailMap"/>
</resultMap>

2.集合嵌套查询和集合嵌套结果

参考链接:http://www.tuicool.com/articles/BfyQRb6

<!-- 集合嵌套查询是在<collection>标签中增加select属性,嵌套引用额外的<select> -->
<collection select="xxid">
<!-- 集合嵌套结果是在<collection>标签中增加resultMap属性,自动装填得到集合 -->
<collection resultMap="xxMap">
<!-- 各有优缺点,看情况用 -->

3.SQL转义部件

<!-- 这是XML语法,Java mybatis框架的mapping文件是XML格式的,用于忽略解析特殊符号,通常可以忽略"<"、">"、"&" -->
<![CDATA[   value < 100   ]]>

4.insert后获得该记录在数据库自动生成的主键

<!--  useGeneratedKeys该属性会告诉Mybatis使用JDBC的getGeneratedKeys方法来取出由数据(比如:像Mysql和Sql server这样数据库管理系统的自动递增字段)内部生成的主键。默认值:false  -->
<!--  keyProperty属性设置你要返回的ID到Java对象属性  -->
<insert id="addImage" parameterType="com.nielsen.sfa.model.SurveyImageDetail" useGeneratedKeys="true" keyProperty="surveyImageDetailId">
	<!--  SQL语句  -->
</insert>

5.<if>标签

<!-- 判断集合不为空 -->
<if test="listName != null and listName.size() > 0" >
	
</if>

<!-- 判断字符串不为空 -->
<if test="strName != null and strName != ''" >
	
</if>

6.<foreach>标签

<!-- collection: 传进来的集合的参数名 -->
<!-- item: 在list和数组中是其中的对象,在map中是value -->
<!-- open: 以"("开始 -->
<!-- separator: 以","作为分隔符 -->
<!-- close: 以")"结束 -->
<!-- 比如参数是List<Map<String, Object>>格式的,先在外面parameterType="java.util.Map",然后collection="list" item="map" 最后调用-->
<foreach collection="list" item="map" open="(" separator="," close=")">
	#{map.xxid}
</foreach>

 

© 著作权归作者所有

共有 人打赏支持
上一篇: 我的JS小工具
下一篇: Spring MVC
吃兔纸不吐毛
粉丝 2
博文 61
码字总数 30280
作品 0
杭州
私信 提问

暂无文章

计算机系统要素 C5

本章值得一提的是组织计算机的结构。Hack 的指令和数据是分开存储的,因此它的 CPU 有两个 input: IN inM[16], // M value input (M = contents of RAM[A]) instruction[16],...

lionets
24分钟前
0
0
SpringSecurity404需要注意的地方

在使用@RequestMapping的时候路径的值如果写为("auth"),虽然用的时候前面加不加"/"没有区别,但是在配置了SpringSecurity的http.authorizeRequests().antMatchers()时就必须要注意了! 🌰1...

百萬馬力
28分钟前
1
0
10分钟读懂阿里巴巴高级专家在Flutter Live2018的分享

作者:闲鱼技术-宗心 12月4日,google flutter团队宣布第一个flutter正式版本发布。次日,Flutter Live Beijing 会议上,google flutter团队邀请了在这一技术方案中重要的合作伙伴闲鱼团队分...

阿里云官方博客
28分钟前
2
0
RxJava window操作符

原文:https://github.com/Froussios/Intro-To-RxJava/blob/master/Part%204%20-%20Concurrency/3.%20Sequences%20of%20coincidence.md Sequences of coincidence Rx试图避免管道(pipeline)外......

woshixin
35分钟前
3
0
05.Beetl标签函数以及定界符、占位符介绍---《Beetl视频课程》

本期视频实现了博客的详情页面; 内容简介:使用了标签函数layout完成详情功能 一起学beetl目录:https://my.oschina.net/u/1590490?tab=newest&catalogId=6214598 作者:GK #标签函数 layo...

Gavin-King
36分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部