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

总结如下:

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

时间: 2024-08-07 02:55:33

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

做了两年程序员对未来迷茫怎么办?

近期新霸哥看了一些关于技术交流的QQ群聊天记录,其中感慨最深的就是有一哥们说自己做程序员都快两年了,不知道自己想要啥,该怎么做,是继续做程序员该是转型做其他的行业?这个问题,新霸哥相信有很多的朋友也经历吧. 回想过去刚刚进入职场,特别是进入了一个高薪的职位的时候,虽然会很苦,很累,但是一想到是自己的专业工作,知道自己想要啥,就一股劲的拼命的向前冲.可是两年后的今天为什么会出现不知道该做啥好呢?这个时候新霸哥建议是时候该停下工作好好的重新认识自己,这样不仅对公司还是对个人都是有利的. 新霸哥觉得,

LeetCode:Add Two Numbers - 两个链表逐项做带进位的加法生成新链表

1.题目名称 Add Two Numbers (两个链表逐项做带进位的加法生成新链表) 2.题目地址 https://leetcode.com/problems/add-two-numbers/ 3.题目内容 英文:You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a

两台web服务器做文件共享,负载均衡

服务器环境:httpd.php.MySQL.DNS.NFS共配置4台虚拟机,web服务各一台,PHP.DNS一台,MySQL.NFS一台. 网段使用172.16.0.0/16 注:httpd,php,DNS服务在此前的博客中有详细说明,这里就不在详细演示,在此前的基础上追加安装,MySQL,NFS 一.安装mysql-5.5.33 下载mysql-5.5.33-linux2.6-x86_64.tar.gz软件包 1.准备数据存放的文件系统 因为数据总是在动态增长的,所以我们要创建一个逻辑卷来保存

两块30G硬盘做RAID1

做这个实验我们需要新添加两块30G的硬盘 [[email protected] ~]# uname -a Linux ZZSRV1.localdomain 3.10.0-123.el7.x86_64 #1 SMP Mon Jun 30 12:09:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux 我们可以不用重启就能显示出磁盘 [[email protected] ~]# echo "- - -" > /sys/class/scsi_host/

做为测试经理,这两年我都做错了哪些事(一)

我是一名测试经理,在过去的两年时间做了两件事,团队从0到1的搭建和从QC到QA转型.这两年没有什么精彩的故事,都是一次次的尝试-失败-尝试的过程. 公司背景近两年主要做项目外包.客户是央企,我们做完的项目要过他们的测试部验收,测试超过两轮要罚款.他们通过的标准是一般问题不超过三个,轻微问题不超过五个. 第一次失败——冒进的左移团队组建后,我等到了第一个全新的项目A.这个项目对我和我的团队来说都是至关重要的,我们需要这个项目来给自己树个标杆,开个好头.于是我把过去两年我认为最有效的测试方案应用到项

做正确的事,不做容易的事

原文<李想:"做正确的事,不做容易的事"> 本文是我(李想)在去经纬投资和他们聊天的时候,速记员帮助我把聊天的内容记录了下来的整理.因为内容量很大,所以速记会有一些记录错误的地方.我想了一下,还是使用原文重新整理了一遍,把里面的错字和错误的数据进行了修改,从而避免对阅读者的误导. 不过,仍然感谢经纬和速记的帮助,这确实是我过去十几年创业最实实在在的记录. 我也开通了长微博打赏的功能,各位大爷看的好,赏几个零花钱! 李想,汽车之家网站创始人,前任汽车之家总裁.李想是80后的典

做什么职业,也别做程序员,尤其是Java程序员

千万别做程序员,尤其别做Java这种门槛低,入门快的程序员(别跟我说Java搞精通了也很牛之类的,原因不解释,做5年以上就知道了),程序员本来就是我见过最坑爹的职业了...Java程序员更是,现在满地都是Java培训机构,不出3年,你就不值钱了,就像3年前的C++一样!而且Java贬值更快,因为他比c++简单多了,培训个3个月,直接上岗,你说你怎么保证自己是不可替换的?而且现在Java程序员的整体工资,已经有不断下降的趋势! 我就用我的亲身经历告诉你,你这个想转程序员的人:别做这行,因为你不知道

LINQ to Objects系列(2)两种查询语法介绍

LINQ为我们提供了两种查询语法,分别是查询表达式和查询方法语法.这篇文章分为以下几个方面进行总结. 1,一个包含两种查询语法的简单示例 2,查询表达式的结构 3,查询方法相关的运算符 一个包含两种查询语法的简单示例 一个LINQ查询既可以使用查询表达式实现,也可以用查询方法实现,还可以同时组合两种查询.下面是一个简单的示例,代码如下. namespace LINQDemo3 { class Program { static void Main(string[] args) { int[] nu

12_1求两个整数中的较小值,要求不能使用比较运算符, if-else, a&gt;b?a:b, while for

转载请注明出处:http://www.cnblogs.com/wuzetiandaren/p/4253932.html  声明:现大部分文章为寻找问题时在网上相互转载,此博是为自己做个记录记录,方便自己也方便有类似问题的朋友,本文的思想也许有所借鉴,但源码均为本人实现,如有侵权,请发邮件表明文章和原出处地址,我一定在文章中注明.谢谢. 题目:求两个整数中的较小值,要求不能使用比较运算符, if-else, a>b?a:b, while for, 内嵌汇编递归第三方函数. 在网上看到一些网友给出了