MyBatis
文章平均质量分 87
strive_day
从此刻开始学技术!
展开
-
【SSM - MyBatis篇11】MyBatis缓存,spring整合MyBatis开启二级缓存,MyBatis开启二级缓存
文章目录MyBatis缓存机制Spring+MyBatis开启二级缓存1. 创建MyBatis核心配置文件,在settings中开启二级缓存2. 在spring的核心配置文件中,sqlSessionFactory的bean中,将mybatis的配置粘入3. 在mapper.xml映射文件中添加< cache >< /cache >开启二级缓存4. 在对应的javabean类实现序列化接口Serializable(仅仅是一个标识作用,不实现会报错)MyBatis缓存机制 一级缓原创 2020-10-01 15:45:53 · 8107 阅读 · 16 评论 -
ThreadLocal改造获取SqlSession的工具类【现在基本不用,spring自动封装了该对象】
文章目录ThreadLocal介绍回顾线程了解ThreadLocalThreadLocal特点通过ThreadLocal来装载MyBatis对象的SqlSession实现service和dao层解耦ThreadLocal介绍在实际开发中,我们用MyBatis框架获取SqlSession应该是属于Dao层代码,不允许出现在Service层中,如果dao层数据应用到services层,就提高了耦合度,我们需要删除service层对Mybastis依赖(dao层)ThreadLocal是java.lang原创 2020-09-29 22:22:48 · 834 阅读 · 0 评论 -
【SSM - MyBatis篇10】动态SQL语句案例实现
案例描述 创建customer用户表,有三个属性字段,id、username、job,通过动态SQL语句对其进行增删查改。创建数据库表customer-- ------------------------------ customer表-- ----------------------------DROP TABLE IF EXISTS `customer`;CREATE TABLE `customer` ( `id` int(11) NOT NULL AUTO_INCREMENT,原创 2020-09-28 22:29:59 · 9009 阅读 · 14 评论 -
【SSM - MyBatis篇09】动态SQL - if、choose、when、otherwise、trim、where、set、foreach、bind元素
文章目录动态SQL1. if 元素2. choose (when, otherwise)元素3. trim、where、set元素3.1 trim 元素3.2 where元素3.3 set元素4. foreach元素5. bind元素 - 进行模糊查询(防止sql注入)动态SQL 根据不同条件拼接 SQL 语句是一件非常痛苦的事情,时不时忘记必要的空格、and、一个逗号······ 而且还很难找出这些错误。利用MyBatis的动态SQL语句,可以解决这些问题。ifchoose (when, oth原创 2020-09-27 21:52:42 · 7443 阅读 · 11 评论 -
【SSM - Mybatis篇08】多对对多关联查询
文章目录案例描述1. 创建orders、product表和中间表order_product2. 创建javabean对象3. 创建dao层4. 创建连接数据库的属性文件db.properties(键值对形式)5. spring整合MyBatis,核心配置文件applicationContext.xml6. 创建映射文件mapper.xml7. 创建测试类运行结果案例描述 多对多关联,其实就是两个一对多相互关联实现。MyBatis并没有提供多对多关联的实现,还是用resultMap的collection原创 2020-09-27 16:29:56 · 2387 阅读 · 1 评论 -
【SSM - MyBatis篇07】一对多关联查询实现
文章目录案例描述1. 创建users表(一)和task表(多)2. 创建javabean对象3. 创建dao层接口4. 创建连接数据库的属性文件db.properties(键值对形式)5. spring整合MyBatis,核心配置文件applicationContext.xml6. 创建映射文件mapper.xml7. 创建测试类案例描述一个任务由一个人完成,一个人可以完成多个任务。人和任务之间的关系是一对多的关联关系。创建user人物表和task任务表,通过resultMap映射的一对多关联映射col原创 2020-09-27 15:45:14 · 4104 阅读 · 1 评论 -
懒加载(Lazy Loading) - MyBatis懒加载 - Spring懒加载
文章目录懒加载(Lazy Loading)MyBatis中懒加载的使用Spring中懒加载的使用懒加载(Lazy Loading) 懒加载也叫“延迟价值”,核心思想是把对象的实例化延迟到真正调用该对象的时候,这样做的好处是可以减轻大量对象在实例化时对资源的消耗,而不是在程序初始化的时候就预先将对象实例化。另外“懒加载”可以将对象的实例化代码从初始化方法中独立出来,从而提高代码的可读性,以便于代码能够更好地组织。 特别是在web应用程序中,它能够在用户滚动页面的时候自动获取更多的数据,而新得到的数据原创 2020-09-27 14:35:57 · 5534 阅读 · 15 评论 -
【SSM - MyBatis06】一对一关联查询案例实现(Spring和MyBatis整合)
文章目录案例描述1. 创建数据库表person和card2. 创建bean对象3. 创建dao层映射层4. 创建连接数据库的属性文件db.properties(键值对形式)5. spring整合MyBatis,核心配置文件applicationContext.xml6. 创建映射文件mapper.xml7. 创建测试类测试结果案例描述 一个人有一个身份证,一个身份证只对应一个人所有。人和身份证之间的关系是一对一的关联关系。创建person表和card表,通过resultMap映射的一对一关联映射ass原创 2020-09-27 00:08:43 · 4443 阅读 · 0 评论 -
【SSM - MyBatis篇05】映射器 - resultMap结果映射 - 级联关系 - 一对一、一对多、多对多关联查询
文章目录映射器XML映射器1. select元素【**】2. insert元素2.1 insert元素特有的属性:2.2 insert元素主键回填(设置为自动递增的主键)2.3 自定义主键(实现主键自动递增)3. update、delete元素4. resultMap元素(结果映射)【*****】级联关系【*****】4.1 一对一关联查询 (association) - 用javaType来指定对象类型4.2 一对多、多对多关联查询 (collection) - 用ofType来制定对象类型映射器原创 2020-09-26 21:47:03 · 5281 阅读 · 0 评论 -
【SSM -MyBatis篇04】使用MyBatis Generator插件自动生成映射文件(逆向工程)(基于MyBatis3)
1. 配置依赖<!--mysql驱动类--> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <versi原创 2020-09-26 16:25:27 · 2652 阅读 · 1 评论 -
No plugin found for prefix ‘mybatis-generator‘ in the current project and in the plugin groups
错误描述:使用MyBatis Generator自动生成映射的时候报错No plugin found for prefix ‘mybatis-generator’ in the current project and in the plugin groups在当前项目和插件组中没有找到前缀’ mybatisi -generator’的插件错误原因因为在pom.xml中没有导入mybatis-generator插件解决办法在< plugins >标签中添加mybatis-gener原创 2020-09-26 16:09:17 · 16875 阅读 · 4 评论 -
【SSM -MyBatis篇03】MyBatis Generator(MBG)配置属性详解(基于MyBatis3) - 逆向生成 - 配置MBG模板
文章目录MyBatis Generator简介.MyBatis Generator的配置使用(基于MyBatis3)MyBatis Generator简介. MyBatis Generator(MBG)是MyBatis和iBATIS的代码生成器(逆向生成)。它将自动将查询数据库表,并将生成可用于访问表的构件。这减少了设置对象和配置文件以与数据库表交互的初始麻烦。MBG虽然减少了对于数据库表简单的CRUD(创建、检索、更新、删除)大量代码,但是对于复杂的连接查询和存储过程还是需要手动编写映射sql和b原创 2020-09-26 14:11:58 · 14801 阅读 · 30 评论 -
【SSM -MyBatis篇02】MyBatis与Spring整合,实现增删查改
文章目录MyBatis与Spring整合优势MyBatis与Spring整合优势通过与Spring的整合,MyBatis的SessionFactory交由Spring来构建。构建时需要在Spring的配置文件中添加数据库连接的四大属性来配置数据源。<!-- 在Spring配置文件中 配置数据源 --><bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource"> <property nam原创 2020-09-26 09:14:48 · 3924 阅读 · 0 评论 -
【SSM - MyBatis篇01】MyBatis原理和环境搭建,用MyBatis实现增删查改操作
文章目录1. MyBatis简介2. MyBatis环境搭建2.1 MyBatis的使用需要导入jar或者依赖2.2 创建日志类log4j3. MyBatis的工作原理4. 通过MyBatis的getMapper实现增删查改1. MyBatis简介 MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。 MyBatis 是一个基于Java的持久层框架。MyBatis原创 2020-09-25 08:56:21 · 2876 阅读 · 0 评论