码迷,mamicode.com
首页 > 其他好文 > 详细

07Mybatis_根据前面的做的两个查询联系,做一些小的总结

时间:2016-08-15 20:30:30      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:

总结如下:

1.parameterType和resultType

在映射文件中通过parameterType指定输入 参数的类型。

在映射文件中通过resultType指定输出结果的类型。

例如:

<select id="findUserByUsername" parameterType="java.lang.String" 
            resultType="cn.itcast.mybatis.po.User">
       select * from user where username like ‘%${value}%‘ 
    </select>

2.#{}和${}

#{}表示一个占位符号,#{}接收输入参数,类型可以是简单类型,pojo、hashmap。

如果接收简单类型,#{}中可以写成value或其它名称。

#{}接收pojo对象值,通过OGNL读取对象中的属性值,通过属性.属性.属性...的方式获取对象属性值。

 

${}表示一个拼接符号,会引用sql注入,所以不建议使用${}。

${}接收输入参数,类型可以是简单类型,pojo、hashmap。

如果接收简单类型,${}中只能写成value。

${}接收pojo对象值,通过OGNL读取对象中的属性值,通过属性.属性.属性...的方式获取对象属性值。

 

3.selectOne和selectList的区别:

selectOne表示查询出一条记录进行映射。如果使用selectOne可以实现使用selectList也可以实现(list中只有一个对象)。

 

selectList表示查询出一个列表(多条记录)进行映射。如果使用selectList查询多条记录,不能使用selectOne。

 

如果使用selectOne报错:

org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 4

07Mybatis_根据前面的做的两个查询联系,做一些小的总结

标签:

原文地址:http://www.cnblogs.com/shenxiaoquan/p/5774059.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!