ibatis 级联查询的配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="login">
<resultMap class="Login" id="login-result">
<result property="email" column="email" />
<result property="password" column="password" />
<result property="loginID" column="login_ID" />
<result property="user" column="user_ID" select="login.queryUserByID" />
<result property="lastLoginTime" column="lastLoginTime" />
<result property="lastLoginIP" column="lastLoginIP" />
</resultMap>
<select id="validateLogin" parameterClass="hashmap" resultMap="login-result">
select email,
password,
login_ID,
user_ID,
lastLoginTime,
lastLoginIP
from login
where email = #email# and password = #password#;
</select>
<resultMap class="User" id="user-result">
<result property="phone" column="phone"/>
<result property="name" column="name"/>
<result property="qq" column="qq"/>
<result property="address" column="address"/>
<result property="level" column="level"/>
<result property="point" column="point"/>
<result property="userID" column="User_ID"/>
<result property="activation" column="activation"/>
<result property="role" select="login.queryRoleByUser"/>
</resultMap>
<select id="queryUserByID" parameterClass="int"
resultMap="user-result">
select *
from Users where user_id = #userID#
</select>
<select id="queryRoleByUser" parameterClass="int" resultClass="set">
select Role_ID
from roleuser where User_ID = #userID#
</select>
</sqlMap>
分享到:
相关推荐
iBATIS 级联iBATIS 级联iBATIS 级联
iBATIS 级联.part4iBATIS 级联.part4
iBATIS 级联.part5iBATIS 级联.part5>
iBATIS 级联.part2.rariBATIS 级联.part2.rar
iBATIS 级联.part3.rariBATIS 级联.part3.rariBATIS 级联.part3.rar
通过`<resultMap>`中的`<result>`标签和`select`属性,可以指定嵌套的查询,实现级联加载。在上述示例中,当查询Account时,会进一步触发查询Order和OrderItem,构建出完整的对象树。 4. **映射关系的继承** ...
综上所述,这个示例项目展示了如何利用iBatis查询数据库,并通过Ajax实现无刷新的级联选择功能,从而优化用户界面的交互体验。开发过程中,开发者需要熟悉JSP、JavaScript、iBatis框架以及Ajax请求的处理,同时理解...
通过阅读文档,你可以了解如何配置Ibatis、创建Mapper接口和XML映射文件,以及如何处理复杂的查询和关联。 在说明文档中,通常会包含以下内容: 1. 安装和配置:介绍如何将Ibatis集成到项目中,包括Maven或Gradle...
Ibatis支持一对多、多对一等关系的级联操作,通过关联映射可以在一次查询中获取相关的数据,减少数据库访问次数,提高性能。 ## 9. 缓存机制 Ibatis提供了本地缓存和二级缓存,可以将频繁查询的结果暂存起来,提高...
7. **实战演练**:通过实际项目案例,视频会教你如何将Ibatis应用到实际开发中,解决常见的问题,如多表联查、分页查询等。 8. **最佳实践**:视频会分享一些Ibatis使用的最佳实践,帮助你编写更高效、可维护的代码...
maven3+struts2+spring+ibatis,本来是用maven3+struts2+spring+hibernate但考虑到hibernate在多表级联查询的时候执行效率不高,所以改用性能更好不过sql比较麻烦的的ibatis,本项目只有登录和插入数据,仅供参考: ...
Ibatis还支持级联操作,例如在`<association>`标签中定义一对一关联,`<collection>`标签处理一对多关系。在处理关联查询时,Ibatis会自动进行JOIN操作,简化了代码编写。 另外,Ibatis的缓存机制也是值得关注的。...
ResultMap定义了如何从数据库结果集中提取数据并映射到Java对象,包括字段映射、级联映射等复杂情况。ResultMapType则处理自定义类型转换。 标签"birth84v cutting1v2 ibatis"虽然没有明确的含义,但我们可以推测...
但 iBATIS 提供了两种方式来处理关联查询:N+1 次查询和新的查询方式。 1. **N+1 次查询** 这种方式在 SQL 映射文件中通过 `select` 属性指定一个单独的查询语句。虽然这种方法会导致额外的数据库读取操作,但可以...
另外,iBATIS对Java对象的管理不如ORM框架自动,需要手动维护对象状态和级联操作。 总的来说,Spring与iBATIS的集成提供了一种在完全ORM和直接使用JDBC之间的折衷方案,尤其适用于那些需要精细控制SQL查询和事务...
标题“大区-省-市-区级联查询”指...在提供的压缩包文件“ibatisTest”中,可能包含的是使用iBATIS(一种Java持久层框架)实现的级联查询示例代码。学习并理解这些代码可以帮助我们更好地掌握级联查询的具体实现方法。
Ibatis 是一个优秀的Java持久层框架,它提供了一种简单且灵活的方式来映射数据库操作,...这个简单的入门实例只是Ibatis功能的冰山一角,更深入的使用包括缓存机制、级联操作、参数映射等,都需要进一步学习和实践。
iBatis还支持缓存机制,可以将查询结果缓存起来,避免重复查询数据库。在一对多关联中,可以配置级联缓存,确保主从数据的一致性。 7. **总结** iBatis的一对多关联映射使得数据库操作与业务逻辑解耦,提高了代码...
- **一对多关联**:在实体类中表示为集合属性,ibatis通过嵌套查询或嵌套结果的方式实现数据的级联加载。 - **一对一关联**:通过外键关联两个表,ibatis支持嵌套查询或延迟加载策略来优化性能。 - **延迟加载**:仅...