![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MyBatis框架
框架知识详解,总结
Mr_树先森
这个作者很懒,什么都没留下…
展开
-
mybatisplus常用注解
以上是MyBatis Plus常用的注解,通过这些注解可以简化数据库操作的配置和实现,提高开发效率。需要注意的是,使用这些注解之前需要在配置文件中配置相应的插件,以启用MyBatis Plus的功能。@TableField:用于标注实体类的字段对应的数据库字段名。@Insert、@Update、@Delete、@Select:用于标注对应的数据库操作方法。可以指定数据库表名,也可以使用默认的表名,即实体类的类名(驼峰命名转下划线命名)。枚举字段在数据库中存储时,可以指定存储的值,而不是默认的枚举名称。原创 2023-08-10 16:39:25 · 844 阅读 · 0 评论 -
【MyBaPlus】分页查询,条件查询
实现:@Servicepublic class TeacherServiceImpl extends ServiceImpl<TeacherMapper, Teacher> implements TeacherService { @Override public void pageQuery(Page<Teacher> pageParam, TeacherQuery teacherQuery) { QueryWrapper&...原创 2021-07-24 16:01:51 · 206 阅读 · 0 评论 -
【MyBatisPlus】条件构造器
原创 2021-07-23 17:16:22 · 80 阅读 · 0 评论 -
【MyBatisPlus】物理删除,逻辑删除,性能分析
1.物理删除:2.逻辑删除:3.性能分析:原创 2021-07-23 16:35:01 · 276 阅读 · 0 评论 -
【MyBatisPlus】实现乐观锁,简单查询,分页查询
1.乐观锁:2.查询:3.分页查询:原创 2021-07-23 16:14:17 · 64 阅读 · 0 评论 -
【MyBatisPlus】入门案例, 配置日志,主键策略,自动填充,添加,修改,查询所有
入门案例:添加依赖:<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> &l...原创 2021-07-23 15:40:07 · 118 阅读 · 0 评论 -
【MyBatis框架】缓存 —— 一级缓存
什么是缓存?缓存是存储数据的硬件或软件组件,以便将来可以提供更快的数据请求;可以在缓存中找到请求的数据时,会发生缓存命中,而当无法找到时,则会发生缓存丢失。缓存命中是通过从缓存中读取数据来实现的,这比重新计算结果或从较慢的数据存储中读取数据要快;因此,缓存中提供的请求越多,系统执行得越快。MyBatis缓存:MyBatis可以很方便地定制和配置缓存,极大地提高查询效率。MyBatis中有两个级别的缓存,一级缓存,二级缓存。(1)默认情况下,只有一级缓存是开启的(本地缓存,sqlsession级原创 2021-04-06 21:38:54 · 154 阅读 · 0 评论 -
【MyBatis框架】Foreach详解
Foreach:用于条件是一个范围时使用。使用:编写接口: List<Book> queryBookByForeach(Map map);编写xml配置文件 <select id="queryBookByForeach" parameterType="map" resultType="Book"> select * from book <where> <foreach collectio原创 2021-04-06 18:55:08 · 184 阅读 · 0 评论 -
【MyBatis框架】SQL片段提高语句复用性
sql片段:把sql语句的公共片段提取出来,提高sql的重用性。最好是基于单表的,不要存在where标签。使用:使用 把之前的查询语句中的相同部分抽取出来。<sql id="if-name-author"> <if test="name!=null"> and name=#{name} </if> <if test="author!=null">原创 2021-04-06 16:56:45 · 368 阅读 · 0 评论 -
【MyBatis框架】动态SQL之set详解
set:用于修改表中的数据,自动去掉没用的逗号。实例讲解:编写接口int updateBook(Map map);编写xml配置文件<update id="updateBook" parameterType="map" > update book <set> <if test="name!=null"> name=#{name}, <原创 2021-04-06 16:40:50 · 1354 阅读 · 0 评论 -
【MyBatis框架】动态SQL之choose,when,otherwise详解
Choose:只选择第一个成立的条件执行。后面的条件不对结果产生影响。使用:编写接口: List<Book> queryBookByChoose(Map map);编写配置文件<select id="queryBookByChoose" parameterType="map" resultType="Book"> select * from book <where> <choose>原创 2021-04-06 16:19:56 · 571 阅读 · 0 评论 -
【MyBatis框架】动态SQL之IF详解
概念:根据不同的状况生成不同的SQL语句。关键字:if,choose(when,otherwise),trim(where,set),foreach.搭建环境:数据库:CREATE TABLE book(id INT(10) PRIMARY KEY COMMENT '书id',NAME VARCHAR(50) NOT NULL COMMENT '书名',author VARCHAR(20) NOT NULL COMMENT '作者',TIME DATETIME NOT NULL COM原创 2021-04-06 15:51:14 · 373 阅读 · 0 评论 -
【MyBatis框架】一对多查询
概念:一个老师拥有多个学生步骤:按结果嵌套查询:创建实体类Studentimport lombok.Data;/** * @author jitwxs * @date 2021年04月03日 13:45 */@Datapublic class Student { private int id; private String name; //学生关联一个老师 private int tid;}Teacherimport lombok.D原创 2021-04-05 20:47:05 · 333 阅读 · 1 评论 -
【MyBatis框架】多对一查询
前言:多对一多个学生对应一个老师。反过来老师对于学生就是一对多。创建数据表:CREATE TABLE teacher(id INT(10) NOT NULL,NAME VARCHAR(30) DEFAULT NULL,PRIMARY KEY(id))ENGINE=INNODB DEFAULT CHARSET=utf8;INSERT INTO teacher(id,NAME) VALUES(1,'李老师');CREATE TABLE student(id INT(10),NAME VARCHA原创 2021-04-03 15:06:01 · 115 阅读 · 0 评论 -
【MyBatis框架】Lombok插件的安装及使用
安装:在IDEA中安装Lombokfile->settings->plugins-> 使用:在项目中导入jar包 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.10</versi原创 2021-04-03 13:00:23 · 154 阅读 · 0 评论 -
【MyBatis框架】使用注解开发
注解:使用注解后,就不在使用xml文件,但是需要在mybatis-config.xml中绑定接口。本质:反射机制实现底层:动态代理mybatis详细执行流程:常用注解:@Insert:实现新增 @Update:实现更新 @Delete:实现删除 @Select:实现查询 @Result:实现结果集封装 @Results:可以与@Result 一起使用,封装多个结果集 @ResultMap:实现引用@Results 定义的封装 @One:实现一对一结果集封装 @Many:实现一对原创 2021-04-02 16:22:46 · 192 阅读 · 0 评论 -
【MyBatis框架】Limit和RowsBounds分页查询
分页前言: 当数据量过大时,可能会导致各种各样的问题发生,例如:服务器资源被耗尽,因数据传输量过大而使处理超时。最终都会导致查询无法完成。解决这个问题的一个策略就是“分页查询”,也就是说不要一次性查询所有的数据,每次只查询一“页“的数据。这样分批次地进行处理,可以呈现出很好的用户体验,对服务器资源的消耗也不大。下面我们来看一下在MyBatis中,如何简洁的使用分页查询。主要介绍:limit分页,RowsBound分页limit分页:语法:SELECT * FROM user limit st原创 2021-04-01 18:22:27 · 349 阅读 · 0 评论 -
【MyBatis框架】Log4j日志的使用
日志工厂如果一个数据库操作出现了异常,我们需要排错,日志就是最好的助手。以前:debug现在:日志工厂logimpl:指定mybatis所用日志的具体实现,未指定时将会自动查找。常用实现:LOG4J,STDOUT_LOGGING(标准日志输出)。具体使用哪一个,在设置中指定。使用方法1、STDOUT_LOGGING的使用,在mybatis核心配置文件中配置日志(注意,settings一定要在properties后面,typeAlias前面,顺序不对会出错) <settings>原创 2021-03-31 20:31:17 · 665 阅读 · 0 评论 -
【MyBatis框架】:ResultMap解决实际开发中实体类属性与数据库表中列名不同问题
简介:resultMap 元素是 MyBatis 中最重要最强大的元素。它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西, 而且在一些情形下允许你做一些 JDBC 不支持的事 情。 事实上, 编写相似于对复杂语句联合映射这些等同的代码, 也许可以跨过上千行的代码。 ResultMap 的设计就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们 的关系。作用:在开发过程中,经常会遇到我们的实体类的属性名和数据库里面的表的列名不同的情况,这时候我们一般会给数据库中的原创 2021-03-31 16:10:33 · 737 阅读 · 0 评论 -
【MyBatis框架】:深度剖析mybatis开发配置文件
核心配置文件:mybatis-config.xml :系统核心配置文件MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。内容如下:configuration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境变量)transactionManager原创 2021-03-30 17:28:20 · 505 阅读 · 0 评论 -
【MyBatis框架】入门+案例详解
简介:1.什么是MyBatis?MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。2.如何获得MyBatis?Maven仓库:https://mvnrepository.com/arti原创 2021-03-28 19:27:38 · 589 阅读 · 0 评论