resultMap和sql片段

一、resultMap

用来处理查询结果的字段和实体类里面的属性名不一致的问题

	<!-- 处理查询结果的字段和实体类里面的属性名不一致的问题-->
	<resultMap type="com.gx.domain.User"  id="BaseResultMap">
		<id property="id" column="uid" javaType="Integer"/>
		<result property="name" column="uname"/>
	</resultMap>
	<!-- 
	type 当前resultMap最后返回的类型
	id  当前namespace里面的唯ID
	extends 继承父节点里面的所有属性
	 -->
	<resultMap type="com.gx.domain.User"  id="myAddressResultMap" extends="BaseResultMap">
		<result property="address" column="add"/>
	</resultMap>
        <select id="selectAll" resultMap="BaseResultMap"  parameterType="com.gx.domain.User">
	  select id as uid,name as uname,address as add,birthday as bir from user  
	</select> 

二、sql片段

定义部分或整个sql语句,提高代码复用

	<!-- 声明一个基础的列 -->
	<sql id="BaseColumn">
		id as uid,name as uname ,address as add,birthday as bir
	</sql>

 上述查询可修改为

	 <select id="selectAll" resultMap="BaseResultMap" parameterType="com.gx.domain.User">
		select 
			<include refid="BaseColumn"></include>
		from user
	</select> 

  

猜你喜欢

转载自www.cnblogs.com/97guoxiang/p/12770324.html