在Mybatis编程中我们经常会用到将某个bean作为参数类型parameterType或者结果返回值类型ResultType,所以很多时候我们需要把完成的Bean的包名在mapper文件中写上,如下: <select id="selectUser" parameterType="com.dy.entity.User" resultType="com.dy.entity.User"> select * from user where…
resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题.比如:列名和对象属性名不一致时可以使用resultMap来配置:还有查询的对象中包含其他的对象等. Xml配置文件:MyBatis-Configuration.xml <?xml version="1.0" encoding="UTF-8" ?> <!D…
mybatis的知识点: 1.mybatis和hibernate本质区别和应用场景 hibernate:是一个标准的ORM框架(Ojbect relation mapper对象关系映射).入门门槛较高的,不需要程序员写sql, sql语句自动生成了.对sql语句进行优化,修改比较困难. 应用场景: 适用于需求变化不多的中小型项目.比如后台管理,erp,orm,oa.. mybatis:专注于sql本身,需要程序员自己编写sql语句,sql修改,优化比较方便,mybatis是一个不完全的ORM框架…
MyBatis的查询在进行映射的时候,返回值类型可以使用resultType同时也可以使用resultMap.前者表示直接的返回值类型,一般是domain名称,当然这里可以写domain的全部路径也可以简写这样就得在MyBatis的配置文件中扫描实体.而后者表示对外部的ResultMap的引用,两者不能同时存在. MyBatis在进行查询映射时,其实是和jdbcTemplate中queryForList一样是将查询出来的每一个属性都放在一个对应的map里的,其中键是属性名,值是对应的值. 当我们…
resultMap 有的时候,我们看别的映射文件,可能看不到以下这么一段代码: <resultMap id="userListResultMap" type="user" > <!-- 列名 id_,username_,birthday_ id:要映射结果集的唯 一标识 ,称为主键 column:结果集的列名 property:type指定的哪个属性中 --> <id column="id_" property=&q…
mybatis mapper xml文件配置resultmap时,id行和result行有什么区别? <resultMap id = "CashInvoiceMap" type="com.dfire.soa.invoice.bo.Invoice">    <id column="id" property="id" />    <result column="order_id"…
一.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…
SqlMapCofing:dtd,属性加载有固定的顺序Content Model properties:加载属性文件 typeAliases:别名配置 1 定义单个别名:不区分大小写 核心配置: 映射文件: 2 包扫描器:别名是类的全称(推荐) 核心配置: 映射文件: mappers:加载映射文件 传统Dao开发:配置映射文件<mapper resource="MyBatis/user.xml" /> 动态代理模式(推荐):class扫描器  和 包扫描器 要求:  1 接…
                                                                                                                             积少成多 ---- 仅以此致敬和我一样慢慢前进的人 问题: 为什么要使用 typeAliases 答:  别名: 见名知其意, 起一个的别的名字 那么为谁起名字呢? 答案是:与数据库对应的实体类起名字 那么为什么要起名字? 答案是:原来在sql文件中…