随笔分类 - Mybatis笔记
摘要:【SSM的系统架构】 【整合概述】 第一步: MyBatis和Spring整合,通过Spring管理mapper接口。 使用mapper的扫描器自动扫描mapper接口在Spring中进行注册。 第二步: 通过Spring管理Service接口。 使用配置方式将Service接口配置在Spring配
阅读全文
摘要:【resultType】 [ 作用 ] 将查询结果按照SQL列名与pojo属性名一致性 映射到pojo中。 [ 使用场合 ] 常见的一些明细记录的展示,比如用户购买商品的明细,将关联查询信息全部展示在页面时,此时可直接使用resultType将每一条记录映射到pojo中,前端遍历list(list中
阅读全文
摘要:【需求】 查询用户及用户购买的商品信息。 【SQL语句】 查询主表:用户user表 关联表:由于用户和商品没有直接关联,需通过订单和订单明细进行关联,所以关联的表是 orders、orderdetail、items 【映射的思路】 将用户信息映射到user中。 在user类中添加订单列表属性List
阅读全文
摘要:【需求】 查询订单以及订单明细的信息。 确定主查询表:订单表orders 确定关联查询表:订单明细表 orderdetail 在一对一查询的基础上添加订单明细表关联即可。 【分析】 使用resultMap将上面的查询结果映射到pojo中,订单信息有重复。 要求:对orders映射不能出现重复记录 在
阅读全文
摘要:【简述】 数据库模型和数据等信息与上一篇博文相同。 需求也同上一篇博文。 【工程截图】 【User.java】POJO 【Orders.java】 【OrdersMapperCustomer.java】 【OrdersMapperCustom.xml】 【SqpMapperConfig.java和d
阅读全文
摘要:【数据库模型】 【各个表】 [ 用户表user ] 购买商品的用户信息。 [ 订单表 ] 用户所创建的订单 [ 订单明细表 ] 订单的详细信息,即购买商品的信息 [ 商品表 ] 商品的具体信息 【有关系的表之间的业务关系】 分析表与表之间的业务关系时,需要建立在某个业务意义的基础之上去分析。 [ u
阅读全文
摘要:【MyBatis是什么】 MyBatis是一个持久层框架,Mybatis是一个不完全的ORM框架,SQL语句需要程序员自己去编写,但是MyBatis也有映射(输入参数映射、输出结果映射)。 MyBatis让开发人员将经历放在sql语句上,对sql语句优化非常方便,适用于需求变化较多的项目,比如互联网
阅读全文
摘要:【UserMapper.xml】和之前的作对比 【UserMapper.java】接口 【UserMapperTest.java】测试
阅读全文
摘要:【resultMap】 如果查询出来的列名和pojo的属性名不一致,通过定义一个resultMap对列名和pojo属性名之间做一个映射列表。 1.定义resultMap,(在UserMapper.xml文件中) 2.使用resultMap作为statement的输出映射(该案例在UserMap.xm
阅读全文
摘要:输出映射主要有两种:resultType和resultMap 【resultType】 可以返回三种类型 pojo对象:例如select * from user where id=? pojo对象列表:例如 select * from user 普通类型: 例如 select count(*) fr
阅读全文
摘要:【工程截图】 【代码实现】 【user.java】 【UserCustom.java】 【UserQueryVo.java】 【UserMapper.xml】 //配置非常重要!!!!!,namespace必须对应相应的接口名称:com.Higgin.Mybatis.mapper.UserMappe
阅读全文
摘要:【简述】 SqlMapConfig.xml是Mybatis的全局配置文件,配置内容如下: 1.properties 属性 2.settings 全局配置参数 3.typeAliases 类型别名 4.typeHandlers 类型处理器 5.objectFactory 对象工厂 6.plugins
阅读全文
摘要:【工程截图(几个关键的标红框)】 【UserMapper.xml】 【UserMapper.java】 【sqlMapperConfig.xml】 千万不要配置好了UserMapper.xml却忘记加载! 【UserMapperTest.java】 【运行结果】
阅读全文
摘要:一、开发规范 需要编写mapper.xml映射文件(本项目为userMapper.xml,类似于前面的user.xml)。 编写mapper接口需要遵循一些开发规范,这样MyBatis可以自动生成mapper接口实现代理对象。 1.在userMapper中namespace等于mapper接口地址
阅读全文
摘要:【报错代码】 【修正代码】 【原因分析】 @Before的方法在@Test方法之前执行,自己直接拷贝了之前的代码,在类中已经在两个方法之外定义了private SqlSessionFactory sqlSessionFactory; 本意是两个方法共用,但自己拷贝了之前代码,却忽略了@Before中
阅读全文
摘要:【UserDao.java 】 【UserDaoImpl.java】 【UserDaoTest.java】 【建立Junit测试方法流程】 1.新建一个将要测试类,右击,选择Junit Test Case(最后会生成一个专门的测试类,不需自己新建一个test类) 2.如下图选择,点击Next 3.选
阅读全文
摘要:一.SqlSession适用范围 (1).SqlSessionFactoryBuilder 通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory 将SqlSessionFactoryBuilder当成一个工具类使用,无需单例模式管理SqlSessionF
阅读全文
摘要:【user.xml】 【MyBatisTest.java】 【运行结果】
阅读全文
摘要:【user.xml】 【MyBatisTest.java】 【运行结果】
阅读全文
摘要:【工程如01】 【user.xml】 【MyBatisTest.java】 【运行结果】 另外一个方式类似,不演示
阅读全文