MyBatis不同Mapper文件引用resultMap实例代码
ClassesMapper.xml:
<resultMap type="Classes" id="classesMap"> <id property="id" column="c_id" javaType="int"/> <result property="name" column="c_name" javaType="String"/> <!-- <association property="teacher" javaType="Teacher" > <id property="id" column="t_id" javaType="int"/> <result property="name" column="t_name" javaType="String"/> <result property="age" column="t_age" javaType="int"/> </association> --> <association property="teacher" javaType="Teacher" resultMap="com.lsj.test.mybatis.mapper.TeacherMapper.teacherMap" ></association> <collection property="studentList" ofType="Student" resultMap="com.lsj.test.mybatis.mapper.StudentMapper.studentMap" ></collection> </resultMap> <sql id="selectAllClassesSql"> SELECT c.id as c_id,c.name as c_name,teacher_id, t.id as t_id,t.name as t_name,t.age as t_age, s.id as stu_id,s.name as stu_name,s.classes_id from classes c,teacher t,student s </sql>
TeacherMapper.xml的resultMap:
<resultMap type="Teacher" id="teacherMap"> <id property="id" column="t_id" javaType="int"/> <result property="name" column="t_name" javaType="String"/> <result property="age" column="t_age" javaType="int"/> </resultMap>
利用命名空间+resultMapID就可以直接引用其他Mapper文件的resultMap,其中resultMap的column在本文件中也有用,也可以对应sql语句中的column别名。
总结
以上所述是小编给大家介绍的mybatis 不同Mapper文件引用resultMap,希望对大家有所帮助,如果大家有任何疑问请给我留
言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
MyBatis中的resultMap简要概述
Mybatis简介 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录. Mybatis的功能架构分为三层(图片借用了百度百科): 1) API接口层:提供给外部使用的接口API,开发人员通过这些本地API
-
详解MyBatis的getMapper()接口、resultMap标签、Alias别名、 尽量提取sql列、动态操作
一.getMapper()接口 解析:getMapper()接口 IDept.class定义一个接口, 挂载一个没有实现的方法,特殊之处,借楼任何方法,必须和小配置中id属性是一致的 通过代理:生成接口的实现类名称,在MyBatis底层维护名称$$Dept_abc,selectDeptByNo() 相当于是一个强类型 Eg 第一步:在cn.happy.dao中定义一个接口 package cn.happy.dao; import java.util.List; import cn.happy.e
-
Mybatis中的resultType和resultMap查询操作实例详解
resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题.比如:列名和对象属性名不一致时可以使用resultMap来配置:还有查询的对象中包含其他的对象等. MyBatisConfig.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configura
-
MyBatis中关于resultType和resultMap的区别介绍
MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap,resultType是直接表示返回类型的(对应着我们的model对象中的实体),而resultMap则是对外部ResultMap的引用(提前定义了db和model之间的隐射key-->value关系),但是resultType跟resultMap不能同时存在. 在MyBatis进行查询映射时,其实查询出来的每一个属性都是放在一个对应的Map里面的,其中键是属性名,值则是其对应的值.
-
mybatis教程之resultmap_动力节点Java学院整理
SQL 映射XML 文件是所有sql语句放置的地方.需要定义一个workspace,一般定义为对应的接口类的路径.写好SQL语句映射文件后,需要在MyBAtis配置文件mappers标签中引用,例如: <mappers> <mapper resource="com/bjpowernode/manager/data/mappers/UserMapper.xml" /> <mapper resource="com/bjpowernode/manage
-
深入理解Mybatis中的resultType和resultMap
一.概述 MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,但是resultType跟resultMap不能同时存在. 在MyBatis进行查询映射时,其实查询出来的每一个属性都是放在一个对应的Map里面的,其中键是属性名,值则是其对应的值. ①当提供的返回类型属性是resultType时,MyBatis会将Map里面的键值对取出赋给
-
MyBatis不同Mapper文件引用resultMap实例代码
ClassesMapper.xml: <resultMap type="Classes" id="classesMap"> <id property="id" column="c_id" javaType="int"/> <result property="name" column="c_name" javaType="Stri
-
mybatis mapper互相引用resultMap启动出错的解决
目录 mybatis mapper互相引用resultMap启动出错 问题 原因 解决方法 mybatis resultMap引发的吐血bug 简单的讲 以下是详细的 利用mybatis读取数据时,发生不可理解的事情 mybatis mapper互相引用resultMap启动出错 问题 Caused by: java.lang.IllegalArgumentException: Result Maps collection does not contain value for kulink.cv
-
Mybatis generator mapper文件覆盖原文件的示例代码
generatorConfig.xml编写 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config
-
Mybatis结果集自动映射的实例代码
在使用Mybatis时,有的时候我们可以不用定义resultMap,而是直接在<select>语句上指定resultType.这个时候其实就用到了Mybatis的结果集自动映射.Mybatis的自动映射默认是开启的,有需要我们也可以将其关闭(还可以调整自动映射的策略). 1 Mybatis结果集自动映射 在使用Mybatis时,有的时候我们可以不用定义resultMap,而是直接在<select>语句上指定resultType.这个时候其实就用到了Mybatis的结果集
-
SpringBoot+MyBatis简单数据访问应用的实例代码
因为实习用的是MyBatis框架,所以写一篇关于SpringBoot整合MyBatis框架的总结. 一,Pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:
-
Mybatis查询记录条数的实例代码
这几天在学SSM框架,今天在SSM框架中根据某个条件查询MySQL数据库中的记录条数,碰到一些问题,记录一下 User.xml <select id="userNameValidate" parameterType="String" resultType="Integer"> select count(*) from user where username like #{value} </select> <selec
-
php读取qqwry.dat ip地址定位文件的类实例代码
实例如下: <?php // +---------------------------------------------------------------------- // | // +---------------------------------------------------------------------- // | // +---------------------------------------------------------------------- cla
-
Spring学习笔记2之表单数据验证、文件上传实例代码
在上篇文章给大家介绍了Spring学习笔记1之IOC详解尽量使用注解以及java代码,接下来本文重点给大家介绍Spring学习笔记2之表单数据验证.文件上传实例代码,具体内容,请参考本文吧! 一.表单数据验证 用户注册时,需要填写账号.密码.邮箱以及手机号,均为必填项,并且需要符合一定的格式.比如账号需要32位以内,邮箱必须符合邮箱格式,手机号必须为11位号码等.可以采用在注册时验证信息,或者专门写一个工具类用来验证:来看下在SpringMVC中如何通过简单的注释实现表单数据验证. 在javax
-
使用node.js对音视频文件加密的实例代码
废话不多说了,直接给大家贴代码了,具体代码如下所示: fs.readFile('./downsuccess/'+name+'', {flag: 'r+', encoding: ''}, function (err, data) { console.log('读取中') if(err) { return; } let b = new Buffer(data); let c = b.toString('hex'); let cipherBuffer = _this.cipher(data); fs.
-
PHP下载文件的函数实例代码
通过函数完成下载文件的PHP功能代码 function download($url, $filename) { // 获得文件大小, 防止超过2G的文件, 用sprintf来读 $filesize = sprintf ( "%u", filesize ( $url ) ); if (! $filesize) { return; } header ( "Content-type:application/octet-stream\n" ); //application/
随机推荐
- jQuery EasyUI Layout实现tabs标签的实例
- js自动闭合html标签(自动补全html标记)
- 局域网故障维护及优化技巧
- servlet基础知识_动力节点Java学院整理
- javascript不同类型数据之间的运算的转换方法
- Repeater事件OnItemCommand取得行内控件的方法
- Python实现将数据库一键导出为Excel表格的实例
- python用pickle模块实现“增删改查”的简易功能
- Javascript学习笔记之函数篇(四):arguments 对象
- php绝对路径与相对路径之间关系的的分析
- 详解Android应用中使用TabHost组件进行布局的基本方法
- php递归使用示例(php递归函数)
- Shell脚本监控目录内文件改动
- Ajax异步方式实现登录与验证
- Oracle查询优化日期运算实例详解
- Java实现Andriod带看括弧的计算器代码
- Android Dialog里的EdiText输入法的选择
- C# GetWindowRect简介及使用说明
- C语言实现通讯录系统
- Python实现高斯函数的三维显示方法