SSM开发当中注意的事项

在Mybatis的配置文件当中,如果要用到循环便利需要注意:

org.apache.ibatis.binding.BindingException: Parameter 'ids' not found. Available parameters are [array]

以上错误信息就是没有将<foreach>标签中的collection明确指定,

如果传入的是数组那么应该是array

如果是集合那么就是:list

如果出现如下错误:

SQL: update Invitation     set title=?,    summary=?,    author=?, 

suffixOverrides=","加上这个标签,表示去掉最后一个,号

Map映射

resultMap="map1" 如果结果是一个resultMap,在<selete>标签中一定要用resultMap

一对多问题

在一对多时候使用<collection>标签,必须使用ofType,里面指定对象类型

<collection property="replyDetails" ofType="ReplyDetail">

在多表联查的过程中如果两个表的字段名称相同,需要查询起别名,

然后在column属性中,指定别名名称

示例:
<resultMap type="Invitation" id="map1">
		<result property="id" column="id"/>
		<result property="title" column="title"/>
		<result property="summary" column="summary"/>
		<result property="author" column="author"/>
		<result property="createdate" column="createdate"/>
		<collection property="replyDetails" ofType="ReplyDetail">
			<result property="id" column="rid"/>
			<result property="content" column="rcontent"/>
			<result property="author" column="rauthor"/>
			<result property="invid" column="rinvid"/>
			<result property="createdate" column="rcreatedate"/>
		</collection>
	</resultMap>


	<select id="find" resultMap="map1">
		select t1.id,t1.title,t1.summary,t1.author,t1.createdate,
		t2.id rid,t2.content rcontent,t2.author rauthor,t2.invid rinvid,t2.createdate rcreatedate
		 from Invitation t1 left join Reply_Detail t2 on t1.id = t2.invid
	</select>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值