`
小杨学JAVA
  • 浏览: 886499 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ibatis 的关联查询sqlxml配置-多对一的配置

 
阅读更多

一个用户表,有id,name,groupid等

一个用户组表 有id,name,

用户表和用户组表是多对一的关系

sqlxml配置如下:

 

<sqlMap namespace="Users">
	<typeAlias alias="Users" type="com.ch.entity.user.Users" />
	<typeAlias alias="Group" type="com.ch.entity.user.Group" />
	<resultMap class="Users" id="resultUsers">
		<result column="USER_ID" property="id" />
		<result column="LOGIN_NAME" property="loginName" />
		<result column="SHOW_NAME" property="showName" />
		<result column="PASS_WORD" property="password" />
		<result column="CREATE_TIME" property="createTime" />
		<result column="GROUP_ID" property="groupId" />
		<result column="ADMIN_FLG" property="adminFlag" />
		<result column="b.ID" property="group.id" />
		<result column="b.GROUP_NAME" property="group.groupName" />
		<result column="b.HIDE_FLG" property="group.hideFlag" />
	</resultMap>

	<select id="selectUserByIdAndPass" parameterClass="Users" resultMap="resultUsers">
		select
			a.USER_ID
			,a.LOGIN_NAME
			,a.PASS_WORD
			,a.SHOW_NAME
			,a.PASS_WORD
			,a.CREATE_TIME
			,a.GROUP_ID
			,a.ADMIN_FLG
			,b.ID
			,b.GROUP_NAME
		from
			table_user as a
			,table_group as b
		where
			LOGIN_NAME = #loginName#
		and
			PASS_WORD = #password#
		and
			b.ID = a.GROUP_ID
	</select>
	<select id="selectAllUser" parameterClass="Users" resultMap="resultUsers">
		SELECT
			a.USER_ID
			,a.LOGIN_NAME
			,a.PASS_WORD
			,a.SHOW_NAME
			,a.PASS_WORD
			,a.CREATE_TIME
			,a.GROUP_ID
			,a.ADMIN_FLG
			,b.ID
			,b.GROUP_NAME
			,b.HIDE_FLG
		FROM
			table_user as a
			,table_group as b
		WHERE
			b.ID = a.GROUP_ID
		ORDER BY
			a.USER_ID DESC
	</select>
	<select id="selectUserByGroupId" parameterClass="int" resultMap="resultUsers">
		SELECT
			a.USER_ID,
			a.LOGIN_NAME,
			a.SHOW_NAME,
			a.PASS_WORD,
			a.CREATE_TIME,
			a.GROUP_ID,
			a.ADMIN_FLG,
			b.ID,
			b.GROUP_NAME,
			b.DISPLAY_ORDER,
			b.HIDE_FLG
		FROM
			table_user AS a
		LEFT JOIN 
			table_group AS b 
				ON b.ID = a.GROUP_ID
		WHERE
			a.GROUP_ID = #groupId#
		ORDER BY
			USER_ID DESC
	</select>

 需要说明的是:sql语句中查询哪些字段。在<resultMap class="Users" id="resultUsers">中就要配置哪些字段,并对应多的一端的属性

分享到:
评论

相关推荐

    iBATIS实战

    本书是讲述iBATIS框架的权威著作。书中既详实地介绍了iBATIS的设计理念和基础知识,也讨论了动态SQL、高速缓存、DAD...A.2.2 XML配置文件 266 A.2.3 配置API 267 A.2.4 SQL映射文件 267 A.3 到哪里去查找更多的信息 269

    ibatis 开发指南(pdf)

    26 一对多关联............................................................................................ 26 一对一关联...........................................................................

    springmybatis

    mybatis实战教程mybatis in action之四实现关联数据的查询 mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之六与Spring MVC 的集成 mybatis实战教程mybatis in action...

    Spring面试题

    3.不用一对一,用多对一取代 4.配置对象缓存,不使用集合缓存 5.一对多集合使用Bag,多对多集合使用Set 6. 继承类使用显式多态 7. 表字段要少,表关联不要怕多,有二级缓存撑腰 7. Struts工作机制?为什么要使用...

    Java面试宝典-经典

    12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...

    最新Java面试宝典pdf版

    12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...

    Java面试宝典2010版

    12、写Hibernate的一对多和多对一双向关联的orm配置? 9、hibernate的inverse属性的作用? 13、在DAO中如何体现DAO设计模式? 14、spring+Hibernate中委托方案怎么配置? 15、spring+Hibernate中委托方案怎么配置? ...

    Java面试笔试资料大全

    12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...

    JAVA面试宝典2010

    12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...

    java面试题大全(2012版)

    12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...

    Java面试宝典2012版

    12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中...

    java面试宝典2012

    12、写Hibernate的一对多和多对一双向关联的orm配置? 134 9、hibernate的inverse属性的作用? 134 13、在DAO中如何体现DAO设计模式? 134 14、spring+Hibernate中委托方案怎么配置? 134 15、spring+Hibernate中委托...

    Java面试宝典2012新版

    12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...

    Java 面试宝典

    1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? ...... 7 2、Java 有没有 goto? .......................................................................................................

Global site tag (gtag.js) - Google Analytics