- 浏览: 758273 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (663)
- Eclipse&MyEclipse (40)
- PHP (3)
- Java (72)
- CSS (3)
- MySQL (35)
- Oracle (68)
- Red Hat Linux (23)
- Tomcat (26)
- Oracle10gAS (1)
- Spring (28)
- MyBatis&iBatis (13)
- JS (47)
- JQuery (23)
- Editplus (2)
- 其他 (4)
- Html (15)
- SQL (5)
- Ant (2)
- Hadoop (2)
- Servlet (9)
- Windows (11)
- Flex (1)
- CentOS Linux (7)
- Microsoft SQL Server (2)
- DB2 (3)
- Mysql char 与 varchar 区别 (0)
- excel (5)
- jsp (8)
- FreeMarker (1)
- EasyUI (5)
- WebShpere MQ (1)
- Maven2 (6)
- 浏览器缓存 (2)
- visio (1)
- XML (2)
- 物联网 (1)
- Maven (3)
- JSTL (2)
- HTTP (1)
- Fourinone (1)
- IP知识 (1)
- MyBatis (1)
- 项目管理 (2)
- office2003+2007 (1)
- DOS (1)
- JProfiler (1)
- Thinpad T440p (1)
- ActiveMQ (10)
- MongoDB (5)
- Vert.x3 (1)
- Ngnix (3)
- Spark (2)
- BigData (1)
- 性能概念公式 (1)
- RocketMQ (3)
- IT名词术语 (1)
- Java编程工具 (1)
- RabbitMQ (2)
- MetaMQ (1)
- 架构 (6)
- KafkaMQ (7)
- Redis (4)
- OAuth (1)
- Gradle (1)
- CentOS (5)
- Microsoft_Toolkit (1)
- git (5)
- IntelliJ Idea (4)
- Nginx (3)
- docker (12)
- VMware (2)
- 算法 (1)
- JDBCPool (1)
- spring-cloud (7)
- netbean (1)
- 微信小程序 (2)
- CURL (2)
- Java生成二维码 (1)
- 区块链 (2)
- 机器学习 (1)
- SpringBoot (3)
- Android (9)
- 微服务架构 (1)
- Kubernetes (2)
- OpenProject (0)
- 测试 (1)
- https (1)
- 开源许可证 (1)
- ServiceMesh (2)
- NET (0)
- .NET (1)
- TEST (1)
- iOS (2)
- thymeleaf (4)
- lombok (1)
- 浏览器设置 (1)
- 富文本编辑器 (1)
- 搜索引擎 (1)
- IT常识 (1)
- UML (0)
- Axure (1)
- appstore无法联网 (0)
- apk无法安装 (1)
- SQLServer (2)
- 卸载弹窗软件 (1)
- jenkins (1)
- TortoiseGit (1)
- eureka (1)
- ajax (1)
- spyder (0)
最新评论
mybatis 一对一 一对多
一对一的XML配置文件
<mapper namespace="dao.mapper.ClassMapper">
<resultMap id="classResultMap" type="Classes">
<id property="classid" column="classid1" />
<result property="classname" column="classname" />
<result property="teacherid" column="teacherid2" />
<association property="teacher" column="teacherid" javaType="Teacher" select="getTeacher" />
<!-- <association property="teacher" column="teacherid" javaType="Teacher" select="dao.mapper.TeacherMapper.getTeacher" /> 两个XML文件之间调用 -->
</resultMap>
<select id="selectAllByClassId" parameterType="int" resultMap="classResultMap">
select * from class c where c.classid = #{classid};
</select>
<select id="getTeacher" parameterType="int" resultType="teacher">
select * from teacher tt where tt.teacherid = #{teacherid2}
</select>
</mapper>
一对多 两个配置文件之间调用
一对多中的"一"
<mapper namespace="dao.mapper.ClassMapper">
<resultMap id="classResultMap" type="Classes">
<id property="classid" column="classid1" />
<result property="classname" column="classname" />
<result property="teacherid" column="teacherid2" />
<collection property="studentList" column="classid" javaType="ArrayList" ofType="Student" select="StudentDao.getStudentByClassID" />
</resultMap>
<select id="selectAllByClassId" parameterType="int" resultMap="classResultMap">
select * from class c where c.classid = #{classid};
</select>
</mapper>
一对多中的"多"
<mapper namespace="StudentDao">
<resultMap type="Student" id="studentResultMap">
<id property="studentid" column="studentid" />
<result property="studentname" column="studentname" />
</resultMap>
<!-- 查询学生list,根据班级id -->
<select id="getStudentByClassID" parameterType="String" resultMap="studentResultMap">
select *from student st WHERE st.classid = #{classid1}
</select>
</mapper>
一对一的XML配置文件
<mapper namespace="dao.mapper.ClassMapper">
<resultMap id="classResultMap" type="Classes">
<id property="classid" column="classid1" />
<result property="classname" column="classname" />
<result property="teacherid" column="teacherid2" />
<association property="teacher" column="teacherid" javaType="Teacher" select="getTeacher" />
<!-- <association property="teacher" column="teacherid" javaType="Teacher" select="dao.mapper.TeacherMapper.getTeacher" /> 两个XML文件之间调用 -->
</resultMap>
<select id="selectAllByClassId" parameterType="int" resultMap="classResultMap">
select * from class c where c.classid = #{classid};
</select>
<select id="getTeacher" parameterType="int" resultType="teacher">
select * from teacher tt where tt.teacherid = #{teacherid2}
</select>
</mapper>
一对多 两个配置文件之间调用
一对多中的"一"
<mapper namespace="dao.mapper.ClassMapper">
<resultMap id="classResultMap" type="Classes">
<id property="classid" column="classid1" />
<result property="classname" column="classname" />
<result property="teacherid" column="teacherid2" />
<collection property="studentList" column="classid" javaType="ArrayList" ofType="Student" select="StudentDao.getStudentByClassID" />
</resultMap>
<select id="selectAllByClassId" parameterType="int" resultMap="classResultMap">
select * from class c where c.classid = #{classid};
</select>
</mapper>
一对多中的"多"
<mapper namespace="StudentDao">
<resultMap type="Student" id="studentResultMap">
<id property="studentid" column="studentid" />
<result property="studentname" column="studentname" />
</resultMap>
<!-- 查询学生list,根据班级id -->
<select id="getStudentByClassID" parameterType="String" resultMap="studentResultMap">
select *from student st WHERE st.classid = #{classid1}
</select>
</mapper>
发表评论
-
mybatis嵌套循环map(高级用法)(转)
2019-10-04 15:23 388版权声明:本文为博主原创文章,遵循 CC 4.0 ... -
mybatis批量更新的两种实现方式(转)
2018-05-13 19:05 575一:当要更新的内容是不样的 mapper.xml文件,后台 ... -
Mybatis的Mapper的多参数使用,list (转)
2015-07-02 18:04 2113Mapper中多参数查询, 批量更新 参数包括Str ... -
mybatis执行批量更新batch update 的方法(oracle,mysql)
2014-12-12 19:23 0oracle和mysql数据库的批量update在mybat ... -
源码解读Mybatis List列表In查询实现的注意事项 (转)
2014-06-01 13:07 838原作者:http://www.blogjava.net/xm ... -
mybatis foreach *用法*(转)
2013-06-29 11:19 1182在SQL开发过程中,动态构建In集合条件查询是比较常见的 ... -
MyBatis中出现Mapped Statements collection does not contain value(转)
2012-12-12 10:00 1379java.lang.IllegalArgumentExcept ... -
MyBatis 学习 (转)
2012-11-08 23:16 878“肖凡的专栏” 博客,请务必保留此出处http://legen ... -
元素类型为 "resultMap" 的内容必须匹配 "(constructor?,id*,result*,association*,collection*,di
2012-11-05 10:29 2221Caused by: org.xml.sax.SAXParse ... -
sql中查询类型为int的字段,返回null的异常
2012-10-02 21:00 0项目中用mybatis3.x,用sql查询某个表类型为int的 ... -
myBatis 防止批量update delete select(转)原作者 程明东
2012-09-21 15:51 2181原作者 程明东 http://my.oschina.net ... -
MyBatis association 正确使用
2012-09-10 01:33 1609<resultMap id="sysPerm ... -
java.lang.IllegalArgumentException: Mapped Statements collection does not contai
2012-08-09 13:43 1600java.lang.IllegalArgumentExcept ... -
iBatis sql map文件中的”不等号“用法
2012-03-07 10:14 22971. <isNotEmpty property=&q ...
相关推荐
本主题将详细探讨在MyBatis中如何实现一对一和一对多的映射。 ### 一对一映射(One-to-One) 一对一关系通常发生在两个实体之间,例如一个用户对应一个唯一地址。在MyBatis中,可以通过`<association>`标签来配置...
mybatis一对多的查询方法详解! mybatis一对多的查询方法详解! mybatis一对多的查询方法详解! mybatis一对多的查询方法详解!
在实际应用中,我们可能会遇到更复杂的一对一关系,比如多层嵌套或者多个一对一关系。这时,可以使用`association`标签来处理。`association`用于处理复杂类型的关联,例如对象与对象的一对一关系。 ```xml ...
在测试中,你可以创建类似 `mybatis0408` 这样的例子,模拟不同的一对一和一对多关系,通过运行 SQL 并观察返回的结果,以加深对这两个标签的理解。 总之,掌握 MyBatis 的 `association` 和 `collection` 使用,...
在MyBatis框架中,"一对多"关系映射是一种常见的数据库关联操作,它表示一个实体(如用户)可以对应多个子实体(如订单)。在实际的业务场景中,例如,一个用户可能有多个订单,这就是一对一到多的关系。本教程将...
在处理复杂的关联关系时,MyBatis的一对多映射机制显得尤为重要。一对多映射指的是一个父类实体对应多个子类实体的关系,例如一个学生可以有多个课程,一个部门可以有多名员工等。 一、一对多映射的基本概念 在...
【MyBatis学习笔记六】——MyBatis一对一,一对多,多对一,多对多.zip博客地址:https://blog.csdn.net/weixin_43817709/article/details/117537580
在MyBatis中,一对多关系映射是常见的数据关联方式,它允许我们在查询一个实体对象时,同时加载与之相关联的多个子对象。然而,如果不进行优化,这种关联查询可能会导致性能问题,比如数据量大时的内存消耗、多次...
5. **一对一(OneToOne)和一对多(OneToMany)嵌套映射**:在多对多关系中,常常伴随着一对一或一对多的子关系。MyBatis提供`<oneToMany>`和`<oneToOne>`标签,允许我们在映射文件中声明这些关系。 6. **级联操作...
本主题将深入探讨MyBatis实现一对多关系的代码实践,帮助你理解和掌握如何在实际项目中处理这种常见的关联关系。 首先,我们需要了解一对多关系的概念。在数据库设计中,一对多关系是指一个表(父表)中的一个记录...
本例子将通过简单的步骤来展示如何在 MyBatis 中实现一对多的关系映射。 首先,我们需要创建相关的数据库表。假设我们有两个表:`user` 和 `order`,其中 `user` 表代表用户,`order` 表代表订单,每个订单对应一个...
标题 "mybatis xml 一对多" 指的是在MyBatis框架中处理数据库中的一对多关联映射。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射,避免了几乎所有的JDBC代码和手动设置参数以及获取结果集...
【Mybatis实现一对一,一对多数据插入数据】 在软件开发中,尤其是在涉及到数据库操作时,数据关系的处理是非常关键的一部分。Mybatis,一个优秀的持久层框架,提供了方便的方式来处理复杂的数据关系,包括一对一和...
在处理复杂的数据库关联关系时,比如一对一、一对多、多对一、多对多等,Mybatis提供了灵活的映射机制。本篇将详细讲解如何在Mybatis中实现一对多关联映射的查询操作。 首先,我们要明确一对多关联映射的基本概念。...
在Java开发中,MyBatis作为一个强大的持久层框架,提供了处理这些关联关系的能力,包括一对一(One-to-One)和一对多(One-to-Many)的关系映射。下面将详细解释这两个概念以及在MyBatis中如何实现它们。 ### 一对...
1. **关联映射(Association Mapping)**: 在MyBatis中,我们使用`<association>`标签来处理一对多或一对一的关系。但在这个场景下,我们关注的是多对多关系,通常会通过中间表来实现。 2. **联合映射(Collection ...
Mybatis实现一对一、一对多关联查询,关联查询:多个表联合查询,只查询一次,通过resultMap里面的、标签配置一对一、一对多;涉及到的一对一、一对多关系: - 班级classes、班主任teacher是一对一的关系 - 班级...
Mybatis实现关联查询一对一和一对多实现,具体效果看博文 http://blog.csdn.net/evankaka/article/details/45674101
举个例子:每个人可以拥有多个银行卡(一对多)、每张银行卡只会对应一个用户(一对一)、每个人可能拥有多个不同的社会角色,每一个不同的社会角色也会对应不同的人(多对多),Mybatis作为大名鼎鼎的SSM的组成部分...
总结,MyBatis通过灵活的XML映射和Java实体设计,使得处理一对多和多对一关系变得简单。理解这些映射机制并恰当运用,能够帮助我们在开发中更好地管理数据库关联关系,提高代码的可读性和维护性。