三 mybatis typeAlias(别名)使用和resultMap使用
1、MyBatis提供的typeAlias
aaarticlea/png;base64,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" alt="" />
aaarticlea/png;base64,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" alt="" />
2、定义自定义类型的别名
定义自定义类型的别名
1.在mybatis-config.xml中增加
<typeAliases>
<typeAlias alias="user" type="cn.itcast.pojo.User"/>
</typeAliases>
2.在UserMapper.xml中使用别名 resultType="user"
<select id="loadUserById" parameterType="integer" resultType="user">
select * from user where id = #{id}
</select>
3、resultMap使用
1.创建person表
create table person(id int primary key,user_name varchar(50),age int,address varchar(150));
desc person;
insert into person values(1,’laozhao’,35,’haidian’);
2.创建person.java
public class Person {
private Integer id;
private String userName;
private Integer age;
private String address; set get ... }
3.创建PersonMapper.xml
<mapper namespace="cn.itcast.dao.PersonMapper">
<select id="loadPersonById" parameterType="integer" resultType="person">
select * from person where id = #{id}
</select>
</mapper>
4.修改mybatis-config.xml,增加person相关信息
<typeAliases>
<typeAlias alias="person" type="cn.itcast.pojo.Person"/>
</typeAliases>
<mapper resource="cn/itcast/dao/PersonMapper.xml"/>
5.创建测试类TestPerson
@Test
public void testloadPersonById(){ PersonMapper personMapper = sqlSession.getMapper(PersonMapper.class);
Person person = sqlSession.selectOne("cn.itcast.dao.PersonMapper.loadPersonById", 1);
System.out.println(person);
}
如何在javabean属性和表字段不一致的情况下正常取值?
方式一:查询语句中指定别名
1 <select id="loadPersonById2" parameterType="integer" resultType="person">
2
3 select id,user_name as userName,age,address from person where id = #{id}
4
5 </select>
方式二、使用resultMap标签
1 <resultMap type="person" id="personMap">
2
3 <result property=“userName" column="user_name"/>
4
5 </resultMap>
6
7 <select id="loadPersonById3" parameterType="integer" resultMap="personMap">
8
9 select * from person where id = #{id}
10
11 </select>
resultMap的使用 映射一对多、多对一
aaarticlea/png;base64,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" alt="" />
1.创建订单表orders
create table orders(id int primary key,pid int,num varchar(12),name varchar(150),price double(10,2)); desc orders; insert orders values(1,1,'n101','shouji',1342.23); insert orders values(2,1,'d102','diannao',8766.74); insert orders values(3,1,'p103','pingban',3342.53);
2.创建orders.java
public class Orders { private Integer id; private String num; private String name; private Double price; private Person person; get set ... }
3.创建OrdersMapper.xml
<mapper namespace="cn.itcast.dao.OrdersMapper"> <resultMap type="orders" id="ordersMap"> <result property="num" column="num"/> <result property="name" column="name"/> <association property="person" javaType="person" > <result property="name" column="user_name"/> <result property="address" column="address"/> </association> </resultMap> <select id="loadOrdersById" parameterType="integer" resultMap="ordersMap"> select a.*,b.* from orders a,person b where a.pid=b.id and a.id = #{id} </select> </mapper>
4.修改mybatis-config.xml,增加
<typeAlias alias="orders" type="cn.itcast.pojo.Orders"/>
<typeAlias alias="persion" type="cn.itcast.pojo.Persion"/>
<mapper resource="cn/itcast/dao/OrdersMapper.xml"/>
5.创建TestOrders
public class TestOrders { @Test public void loadOrdersById(){ Orders o = sqlSession.selectOne("cn.itcast.dao.OrdersMapper.loadOrdersById", 1); System.out.println("num:"+o.getNum() + ",name:" + o.getName() + ",personName:" + o.getPerson().getName() + ",address:" + o.getPerson().getAddress()); } }
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAdUAAAAzCAIAAABOsQWLAAANIklEQVR4nO2drY7zPBOG33MqXl7cA1hYFZVUCsvCSiUBC8JaGKmgsIEBRaE5gMKynIM/cGtHfmxnPPlps91vbgW877OpE/9dHo/Hzn9GpVKpVHPov7lfQKVSqf5PpfxVqVSqeaT8ValUqnmk/FWpVKp5pPxVqVSqeaT8ValUqnmk/FWpVKp5pPxVqVSqeaT8ValUqnmk/FWpVKp5pPxVqVSqf3QoimNZvuBByl+VSvXG2uX5tKw8luVivV6s1y9AsPJXpVK9sT73+8V6vUySc1WNT+3WNIDvx3b7fbmMT5CX8lc1m75Op6iJcSzL8WbIoSj4voQ3ebTtyAepXq+v0wm4vDXNyKRuTfOx3S7W61WaNvc7c+ejbcc/zih/VTMKlssqTRnwbbJssV5/7vdjmvsySfgHHYoCTxmQ+CbLxrzbsSx3ea7o98UTkIS6OxTFyMcRfD/3e746Hm27StNJiK/8Vc0mNHfevCV7ZDChaEbJzE/Rh691PSB9jCKf+/2wi/r8sNz9VYFxknqfhL/k8+11jUew8ref/DqI9pzmft/lebBvX+uaqd1dngcThDXXdU2QyZeoud8X6/Umy5h7CJ1jWjnmp3w1MfyNWmHg74CU7Z9PMpl9I+3yXMi4ZZLwCB7PX6Twsd1KEsHAQD102JhNUv72Uy/+PtoWVdvVA3n+LpPE/wmw9Qf4C4uDpxvQ2TUOCYXhiu8nXZTEnJR/gUn4y6T/V3WuKmbUISZGvf9j+Nvc7zR92WRZ9FnN/U7wnSQ6QvnbT0L+gryYWg7mbxBP0YnSU7L9BO3yPApWoDPIaKE74lxVi/V6labGmFvTdDkByEEcdA7wY4Dy9xkC5iRD72D+fl8uH9vtMklQO7BsPvf7LpuAHMSTeH4h5W8/Sfh7rWubvGP464+x0Ynbs3I+ha51Tf1kmSR2Q781zTJJ7GYNdH6dTn46mANKOieKi4rxWtfBihjv/+36q/J3gB5ti8YsCSlz+CsJmMFIvEwS504yun0En6tKGBrRS8rffpLwl3wO4/nrI4Z3/v7ynoz8LpMEpqVvadqWBUVHdJmrXXQmwaKB8ctL+ft6Xeu6awTFJO9ju5WkY/M3unUCizE+eaFH26IdOtY09Wi+vQ2Q8refXsxfxwUcdf7+8p6M/Aanio4Vw6/OEcclKzMSqip/Z9HX6RRsDJi17PKcpvwDLp+w35fL537P29R4NEWLk4OY3BTTSvnbTy/m7+Jf76ckSua5+R+nKH/pfzdZ9rHdduEVrgk+pIFsmV2e22V4riq/LoKUFEbmKn/HaJWmPihRcQDlrWmudc1M+aeK/4WudU0TJjiIYfY+KUB7IH+DiDHG3JoGAfOYPgRD089VtctzNDu6Vmm6ybLvyyXqW2nu90NR2JNQetznfn8oimAKQdJ1zTKYe3j+Ckdm/q2cfNmt03H+Bn0RXeV2a5qv08leU7KzgMIPNrLgS9KfdnlOCa7S9FAUTEsV8he3MczCzbz/l3x5C8ucoX933BrB9Tf8lo+QM7H4366VPecp/CPeVHCz8ktVzf3uBDlgcBU6H8zU/IWudY2KG7nxJ6op+RucLNi9kXLFX4zRgYCk6OWPqG/EXweyNmWc0guuxfmF9mhbZ7Truj62W3921sXfrpXAYCJ2UlH+fu73vKMt2uVg/G6yzLcugwZp8B/xW7V/h8nuTfyC2LEsbb8/2pXc0zotf49lSQ6H33v+ThBVFBkXZEevHSbBfS/ymG2/yt+Iv05BkQvYd/4Gi9QptEfbSsY8+3JgIRkk/CtoNUj4eyzLqMkZ7XII/qOBx/+tnL/8m0Rvewv+9upZwy6eZXA3oc3AhnPazybL+L3jI/mLWTVNVnAYyCQH+vCakr9MJ8ScotflLFtLXKX25QSRvBF/fc4iIz6XGc8AaUDXcvyqfUueXs9vNlH+gpjoacw0iO9ymNKi8yh/hTqW5TPWl4SClQCT0+/7xhjAMTioj9x/8X25wHBcJsnX6USPgB/12SbwE/lL3ZhWQvpevtvOvuxAPIrOsy97CvNG/DWenwGNwPdLRPlLcZR9r+jQJbm6vEAMf29NQ8w9V9WwLrfLc6p6IX/h13LS+b/i7+yym5nfcsCQ4MaHAfy91vXX6QTsfu7335eLk6zt53zqsDQxf1dpitfFqiVu/r5cgtgi8x7Gv3+PbUP5N/SKxXsNf5l05PEPJoRaE4JylL/BaccqTe2S971GTgfo4u8qTdFquxLx3Qjy+AcIy1O9uty1ru0aEfI3CEEhGVEvXX9V/spFS6bBeQ+dM+n8VchfYi5WF3zmkmiiKTmFcmRcxMT8DbYzf/EnGLkZnClT/rsgfiiK78vlWtf8MuV78dd3NQSdEhL/AwbCQ1Eg5uRju3XeJMhoO9fBpzjdoGuKE8wv9l8E4wSc+/Fuviujq8s92tZxFHbxNxjqEIxMiC5/B3PqPE75KxF1nK6DkPBX5yhnIX+b+13CSup60d2V8hPaGE28/ha8OUhq4UU1Aade9P6uELT34q9PWydNIEnC3y5hecGOHuvFX9+2DYZYOPDqa/+af0NBnZv9dK517XSGIH99m5qxfyX8DTq77VdV/kaFNo/q7tpZQzFh9j9OGP8wbB1yDIKn5G/XiDEgS0Fs9YqgcOrjvfhrPG+DH3nG/9xXc7+fq+pQFJssi0ZERPnrN3dJrqP89UsJyyDBmpJ0OZ9usIMcoAch6NPcFzzszl5qjf8dIFT09+WC/wh6F8FHZ+yfhL92jKbks0M04fvYbr9Op8EnQkzJ364iGMNfpyzg3Rvw27fjLx/pDP+skL+0wiu/fg9/4Xdy2vcY/lIK9rOWSSI5JsIXcsTsxFP7VyIUI6qA2luX3184Ger1dHJASXZb0BHAs52/PpK/w9o6iUw5fxecfdk+yrfjLx+xBx5J4h+C5F2lKZYgrnUdLZkx/ofx/A2GYeJZkvDMLroh4ImaB89QRswhbdBU/D1XFezlFwSlvlioC5tlQT+DMaa53/3QiDH8fbQtbGrswZN8kHBC+JrX8FfSM0cKG2GZp0ggEkTVXPxlQsfI2xjlr18m/tl60aocs/7mzN8H8DcotCjJzQzdMC14tC3zVlHhtZlOOwl/nSr4Yx+Lw1TPLkNabJcAbjB/se8On71AkcLDyYym08LXvIa/wdAFe9P3rWmCCdpow3L/9+VCZq9vgvXl7+LHR0HD4PP4i3SQC7qTB2iX04D87FH++ky04x9wIkQ010z82fXn4Orgq/qrUr+Kv/grgoWFXb0r/ejpMCP567SoGTdKTC40CWfpiNafJTGmw+J/V2m6TJKDd1wJTO9gatTOR8Y82HoFfwfvv6AuQd8B85+Ipm9/6ce+7I4x4AUm5G/wfh6gXXC0TxNnfj44ywsZf/sWnfl9/KWgGiaAgdfHdss70ybhr+OMmvD873kFMgQLkDZHRBPpxV/6BkrXlIWijJ1/Jx/xtB+rfgV/zaDPizqp9V1BWniDqnzhjnkN/wa/ifDAsrs6D9AuFzB1vyh/+578EMz1MP4Go+h/G3/Nj4vG+RiHUKgg3mM4lf+XBuPBQ8UvFBM/e/jZixFNpBd/H23LVzR1Ovs2grIkNKKXXsRf0zO2zg9l63sSs9//oxwJvuEA/prQxD+ISB6gQRewHN+mw/PjXMey9Me28fwNUmkq/vo57RJPN5gFGKUG9C5ET488A14e/4BZ+QsO5XqNdnnOTORpq040nQnjf81PIdsuvqceRPk6/pofh3eUm13p3JpGaAV3nZbE8Aiepqn4y0cv8FEZdjr8kXKS+DNm2CMXPB3ZbBcg/5Sv08n/lZOsr+j+Nwl/4YwSng/L0I2OesESHDkius5BdoS5c7TNR/mLKo4+zhizybLoyXDvokNR8F5UGB9P8v/yQmVRqOszzF7SS/lrjHm0LQ4YdMhC569Hm/65qnCOuL9DAZvfohuRcdgd/QoH2eCvU/HXGHNrGnxpynlDO1o7ClDfBRw9mSGYZedNcOYIvUbQOyQJ3XMKc/z56z6nEHd1+NlljpWTheBYdCjIX1putb9r4KzBojUybelYlnLrzO7AyA4uqt9oOry1+F4SflgkGIzoew9QaxPyF01u8WMLPrXM9ftDqoiE+y/kSTH8DfIueDyT0FPhW5fg5ud+3xUR6K8TYPea0/OFHwTzrTNENNtPiXIcQRp/A77GmMGsbO53zLpQI5gQjGmQthAO5BwBPDLNqJS/qogm529wB8G5qviJi70AIPnyPGRbl6DeJsui3MTcxX6c0xURByl5AdwZXPOhQeXvbal4qjAeO57Mwc7Za13b2JV8Am1CKX9VEU3I31vTjFnEwLdhekW/4uObOBdtQNdCyLn/71N9h1wyGKiCQp32HY/Nv7tn4Yv7Op3OVTXL9EL5q4poQv6qVNNKviH7UBTwV2yy7FAUx7J86oc1hVL+qiJS/qpUT5LyVxWR8lelepKUv6qIlL8q1ZOk/FWpVKp5pPxVqVSqefQ/pcHYLn+UcS4AAAAASUVORK5CYII=" alt="" />
1.在Person.java中增加对应订单的list
private List<Orders> ordersList = new ArrayList<Orders>(); public List<Orders> getOrdersList() { return ordersList; } public void setOrdersList(List<Orders> ordersList) { this.ordersList = ordersList; }
2.在PersonMapper.xml中增加查询
<resultMap type="person" id="personMap2"> <result property="name" column="user_name"/>
<!--配置orderList属性,并制定类型为orders-->
<collection property="ordersList" javaType="orders"> <result property="name" column="name"/> <result property="price" column="price"/> <result property="num" column="num"/> </collection> </resultMap> <select id="loadPersonById4" parameterType="integer" resultMap="personMap2"> select a.*,b.* from person a,orders b where a.id=b.pid and a.id = #{id} </select>
4. TestPerson中增加方法
@Test public void loadPersonById4(){ Person person = sqlSession.selectOne("cn.itcast.dao.PersonMapper.loadPersonById4", 1); System.out.println(person.getName() + " " + person.getOrdersList().size()); for(Orders o: person.getOrdersList()){ System.out.println(o.getName() + " " + o.getPrice() + " " + o.getNum()); } }
三 mybatis typeAlias(别名)使用和resultMap使用的更多相关文章
- Mybatis源码之(TypeAliasRegistry)TypeAlias别名实现机制
在Mybatis编程中我们经常会用到将某个bean作为参数类型parameterType或者结果返回值类型ResultType,所以很多时候我们需要把完成的Bean的包名在mapper文件中写上,如下 ...
- Mybatis笔记四:Mybatis中的resultType和resultMap查询操作实例详解
resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题.比 ...
- mybatis入门(三):mybatis的基础特性
mybatis的知识点: 1.mybatis和hibernate本质区别和应用场景 hibernate:是一个标准的ORM框架(Ojbect relation mapper对象关系映射).入门门槛较高 ...
- MyBatis中的resultType和resultMap
MyBatis的查询在进行映射的时候,返回值类型可以使用resultType同时也可以使用resultMap.前者表示直接的返回值类型,一般是domain名称,当然这里可以写domain的全部路径也可 ...
- Mybatis第七篇【resultMap、resultType、延迟加载】
resultMap 有的时候,我们看别的映射文件,可能看不到以下这么一段代码: <resultMap id="userListResultMap" type="us ...
- mybatis mapper xml文件配置resultmap时,id行和result行有什么区别?
mybatis mapper xml文件配置resultmap时,id行和result行有什么区别? <resultMap id = "CashInvoiceMap" typ ...
- MyBatis的getMapper()接口、resultMap标签、Alias别名、 尽量提取sql列、动态操作
一.getMapper()接口 解析:getMapper()接口 IDept.class定义一个接口, 挂载一个没有实现的方法,特殊之处,借楼任何方法,必须和小配置中id属性是一致的 通过代理:生成接 ...
- 三 MyBatis配置文件SqlMapCofing.xml(属性加载&类型别名配置&映射文件加载)
SqlMapCofing:dtd,属性加载有固定的顺序Content Model properties:加载属性文件 typeAliases:别名配置 1 定义单个别名:不区分大小写 核心配置: 映射 ...
- mybatis typeAlias (别名)说明
...
随机推荐
- sqlserver日常维护脚本
SQL code --备份declare @sql varchar(8000) set @sql='backup database mis to disk=''d:\databack\mis\mis' ...
- hbase shell中log4j重复问题
[root@centos ~]# hbase shellSLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding ...
- jQuery对表单、表格的操作及更多应用(中:表格应用)
内容摘录自锋利的JQuery一书 二.表格应用 1 表格隔行变色(:odd和:even选择器 P157) $(function(){ $("tr:odd").addClass(&q ...
- 简单几何(凸包+多边形面积) POJ 3348 Cows
题目传送门 题意:求凸包 + (int)求面积 / 50 /************************************************ * Author :Running_Tim ...
- 超级楼梯[HDU2041]
超级楼梯 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- BZOJ3251 : 树上三角形
BZOJ AC1000题纪念~~~ 将x到y路径上的点权从小到大排序 如果不存在b[i]使得b[i]+b[i+1]>b[i+2]则无解 此时b数列增长速度快于斐波那契数列,当达到50项时就会超过 ...
- 一份spring配置文件及其详解
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/axu20/archive/2009/10/14/4668188.aspx 1.基本配置:<?xml versio ...
- Idea_从Eclipse转Intellij IDEA
场景:使用Intellij IDEA感觉还是不是很顺手,想放弃又舍不得它,如:强大的代码提示功能. 本人使用IntelliJ IDEA其实并不太久,用了这段时间以后,觉得的确很是好用.刚刚从Eclip ...
- 去掉地址栏中的jsessionid
原来我在index.jsp中的编码是 <c:redirect url="/sys/login.shtm"/> 结果每次第一次登录都会在地址栏上出现了jsessionid ...
- 用特征来实现混入(mix-in)式的多重继承
用特征来实现混入(mix-in)式的多重继承 Scala里相当于Java接口的是特征(Trait).Trait的英文意思是特质和性状(本文称其为特征),实际上他比接口还功能强大.与接口不同的是,它还可 ...