随笔分类 -  MyBatis(Plus)

摘要:一、MyBatis插入数据方式 1. MyBatis单条save方式; 2. MyBatis多条mapper.xml里写foreach循环; 3. MyBatis-Plus多条saveBatch方式,默认提交数量1000条; 4. MyBatis-Plus批量insertBatchSomeColum 阅读全文
posted @ 2023-02-15 11:23 如幻行云 阅读(1792) 评论(0) 推荐(0) 编辑
摘要:1. MybatisPlusAutoConfiguration自动配置类 @Bean @ConditionalOnMissingBean public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exceptio 阅读全文
posted @ 2021-03-23 12:31 如幻行云 阅读(418) 评论(0) 推荐(0) 编辑
摘要:1. 多租户概念 多租户是一种软件架构技术(单实例架构),是实现如何在多用户(面向企业用户)环境下公用相同的系统或程序组件,并且确保各用户间数据的隔离性。核心就是在同一套程序下实现多用户数据的隔离性。 2. 数据隔离方案(以Mysql为例) A. 独立数据库,相同的表:即一个租户一个数据库,该方案的 阅读全文
posted @ 2020-05-06 22:32 如幻行云 阅读(2045) 评论(0) 推荐(0) 编辑
摘要:1. Maven依赖 <!-- mybatis-plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.2</versi 阅读全文
posted @ 2020-03-29 20:25 如幻行云 阅读(179) 评论(0) 推荐(0) 编辑
摘要:1. 分页方式 A. 逻辑分页:指一次性查询出符合要求的数据,然后从这些结果中检索需要的分页数据,优点是只访问一次,缺点是需要消耗大量的内存、有内存溢出的风险、对数据库压力较大且数据可能滞后,如使用RowBounds进行分页; B. 物理分页:指从数据库查询出指定条数的数据,优点是占用内存少,数据是 阅读全文
posted @ 2020-03-29 17:52 如幻行云 阅读(1443) 评论(1) 推荐(0) 编辑
摘要:一、基础 1. 保存记录,主键回显 2. 更新记录,实体中字段有值就更新 3. 分页查询 4. Service CRUD接口返回值为空对象,不会为null,我们逻辑可以省略判断; 二、application.yml配置 mybatis-plus: global-config: db-config: 阅读全文
posted @ 2020-03-25 09:24 如幻行云 阅读(364) 评论(0) 推荐(0) 编辑
摘要:问题1:MyBatis一级、二级缓存机制? 答:一级缓存: A. 基于PerpetualCache的HashMap本地缓存,其存储作用域为Session级别,其生存时间一般很短; B. 当SqlSession close之后,该SqlSession中的所有Cache就将清空,默认是开启一级缓存; C 阅读全文
posted @ 2020-01-18 12:41 如幻行云 阅读(224) 评论(0) 推荐(0) 编辑
摘要:一、Mapper映射文件(XML) 1. mapper标签:最顶层的配置元素; A. namespace属性:指向Dao接口的全限定类名; 2. resultMap标签:建立数据库表的列名与po类字段之间的映射关系,主要用于高级复杂的映射,如数据库表列名与类名对应不上; A. id元素:用于标识ja 阅读全文
posted @ 2020-01-17 16:36 如幻行云 阅读(1179) 评论(0) 推荐(0) 编辑
摘要:1. if标签 A. 标签属性:test —— 表示条件,条件成立就把元素体中的字符串拼接到sql语句中,否则不拼接; B. 应用场景:通常用于WHERE语句、UPDATE语句、INSERT语句中,通过判断参数值来决定是否使用某个查询条件、判断是否更新某一个字段、判断是否插入某个字段的值; C. 示 阅读全文
posted @ 2019-05-29 10:34 如幻行云 阅读(3476) 评论(0) 推荐(0) 编辑
摘要:1.用小于或小于等于的场景 代码1: <delete id="delOvertimeLog" parameterType="java.lang.Integer"> delete from operate_log where operate_time < curdate() - interval #{ 阅读全文
posted @ 2019-04-03 17:50 如幻行云 阅读(9481) 评论(0) 推荐(1) 编辑
摘要:一、常用操作 1. 批量操作 批量操作:批量查询、批量插入、批量修改、批量删除,批量操作的效率要比for循环高很多。 在Mybatis中批量操作最多就是批量插入和批量删除。一般采用foreach标签,但是这也与字段数量和条数有关,对于大批量的操作而言,推荐使用ExecutorType.BATCH插入 阅读全文
posted @ 2019-03-25 20:33 如幻行云 阅读(388) 评论(0) 推荐(0) 编辑
摘要:一、Java 线程六大状态、协作方式、使用方式等; 关键字this、static、final、synchronized详解; 四大内部类; Java反射机制; Java注解机制; Java泛型机制; Java异常机制; Java线程安全方式及ThrealLocal用法; Java集合框架List、S 阅读全文
posted @ 2019-03-15 15:30 如幻行云 阅读(393) 评论(0) 推荐(0) 编辑