随笔分类 - mybatis
mybatis逆向工程的注意事项:mapper文件内容不是覆盖而是追加
摘要:XXXMapper.xml文件已经存在时,如果进行重新生成则mapper.xml文件内容不被覆盖而是进行内容追加,结果导致mybatis解析失败。 解决方法:删除原来已经生成的mapper xml文件再进行生成。 Mybatis自动生成的po及mapper.java文件不是内容而是直接覆盖没有此问题
阅读全文
mybatis逆向工程
摘要:逆向工程:根据数据库表自动生成po类及相应的接口和映射。 注意:逆向工程只能生成单个表的po类,但是它并不知道表和表的对应关系。 1 Mybatis逆向工程 使用官方网站的mapper自动生成工具mybatis-generator-core-1.3.2来生成po类和mapper映射文件. 作用:my
阅读全文
mybatis总结回顾
摘要:1.mybatis的介绍 轻量级数据持久层框架,替代hibernate 2.mybatis的入门 导包-->配置文件(类名.xml、SqlMapConfig.xml) 类名.xml:放映射、sql语句 SqlMapConfig.xml:手动加载(通过代码进行加载) 3.原生dao开发 接口+实现类
阅读全文
mybatis整合spring的完整过程
摘要:1、SqlSessionFactory对象应该放到spring容器中作为单例存在。 2、传统dao的开发方式中,应该从spring容器中获得sqlsession对象。 3、Mapper代理形式中,应该从spring容器中直接获得mapper的代理对象。 4、数据库的连接以及数据库连接池事务管理都交给
阅读全文
一对多查询:查询所有用户信息及用户关联的订单信息。
摘要:商品订单数据模型 注意:因为一个订单信息只会是一个人下的订单,所以聪哥查询订单信息出发关联查询用户信息为一对一查询。如果从用户信息出发查询用户下的订单信息则为一对多查询,因为一个用户可以下多个订单。 案例:查询所有用户信息及用户关联的订单信息 用户信息和订单信息为一对多关系。 使用resultMap
阅读全文
关联查询中的一对一查询。通过第二种方式也就是手动映射的方式查询所有订单信息,关联查询下单用户信息。(这是以后我们进行一对一开发中的常用方法)
摘要:使用resultMap,定义专门的resultMap用于映射一对一查询结果。 1.一对一映射的自动映射方式可以参考我的上一篇博文:https://www.cnblogs.com/wyhluckdog/p/10156805.html 2.手动映射的情况时,我们不需要将所有的属性都整合到UserOrde
阅读全文
关联查询中的一对一查询。通过第一种方式也就是自动映射的方式查询所有订单信息,关联查询下单用户信息。(由于需要创建中间类,这种方法在实际开发中已经不再使用)
摘要:商品订单数据模型: 一对一查询:查询所有订单信息,关联查询下单用户信息。 注意:因为一个订单信息只会是一个人去下的订单,所以从查询订单出发关联查询用户信息为一对一查询。如果从用户信息出发查询用户下的订单信息则为一对多查询,因为一个用户可以下多个订单。 1.在UserMapper接口中创建方法: pu
阅读全文
使用mybatis提供的各种标签方法实现动态拼接Sql。使用sql片段提取重复的标签内容
摘要:Sql中可将重复的sql提取出来,使用时用include引用即可,最终达到sql重用的目的,如下: <select id="findUserByNameAndSex" parameterType="com.huida.po.User" resultType="com.huida.po.User">
阅读全文
使用mybatis提供的各种标签方法实现动态拼接Sql。使用foreach标签实现遍历查询。比如实现select * from user where id in(1,10,24)这条sql查询语句。
摘要:向sql传递数组或List,mybatis使用foreach解析,如下: 需求: 传入多个id查询用户信息,用下边的sql实现: select * from user where id in(1,10,24); 1.在QueryVo类中定义: 2.在UserMapper接口中定义方法: public
阅读全文
使用mybatis提供的各种标签方法实现动态拼接Sql。这里演示where标签和if标签实现使用姓名的模糊查询和性别查询用户列表,当用户没有选择姓名以及性别时查询出所有的记录。
摘要:1.需求: 使用姓名的模糊查询和性别查询用户列表,当用户没有选择姓名以及性别时查询出所有的记录。 2.在UserMapper接口中定义方法: public List<User> findUserByNameAndSex(User user); 3.在UserMapper.xml中进行配置: 我们为了
阅读全文
Mybatis框架的输出映射类型
摘要:Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。 resultType(输出类型) 1.输出简单类型 (1)我们在UserMapper接口中定义查找数据库中用户总人数的方法: public Integer findUserC
阅读全文
mybatis框架中的输入映射
摘要:mybatis.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。 输入类型: 1.传递简单类型 可以参考我之前的对于数据库增删改查的博文。 2.传递po对象 mybatis使用ognl表达式解析对象字段的值,#{}或者${}括号中的值为p
阅读全文
SqlMapConfig.xml配置文件中的mapper映射器标签
摘要:SqlMapConfig.xml配置文件中的mapper映射器标签
阅读全文
SqlMapConfig配置文件中的typeAliases标签用于自定义别名
摘要:1.mybatis支持别名: 别名 映射的类型 _byte byte _long long _short short _int int _integer int _double double _float float _boolean boolean string String byte Byte
阅读全文
SqlMapConfig.xml配置文件中的properties属性
摘要:1.原始的SqlMapConfig.xml配置文件的内容为: 2.这里面数据库连接池的property属性我们可以提取到外面,简化SqlMapConfig.xml。在config包下建立db.properties文件,文件的内容为: 3.使用properties标签引入db.properties文件
阅读全文
SqlMapConfig.xml配置文件的配置内容
摘要:SqlMapConfig.xml中配置的内容和顺序如下: * properties(属性) * settings(全局配置参数) * typeAliases(类型别名) * typeHandlers(类型处理器) * objectFactory(对象工厂) * plugins(插件) * envir
阅读全文
mybatis开发Dao的Mapper动态代理方式
摘要:1. 开发规范Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体跟Dao原始方法中接口实现类的方法相同。 Mapper接口开发需要遵循以下规范: 1.映射文件中namespace要等于接口的全路径 2
阅读全文
mybatis使用原始Dao开发中存在的问题
摘要:mybatis使用原始Dao开发中存在的问题
阅读全文
使用mybatis开发Dao的原始方法,实现根据用户id查询一个用户信息 、根据用户名称模糊查询用户信息列表 、添加用户信息等功能
摘要:使用mybatis开发Dao的原始方法,实现根据用户id查询一个用户信息 、根据用户名称模糊查询用户信息列表 、添加用户信息等功能
阅读全文
mybatis中的factory工厂与Sqlsession
摘要:mybatis中的factory工厂与Sqlsession
阅读全文