![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mybatis
卷王233
这个作者很懒,什么都没留下…
展开
-
mybatis -- 12、mybatis-plus的插件、SQL注入器、公共字段填充
目录6、插件1、分页插件2、乐观锁插件(当要更新一条记录的时候,希望这条记录没有被别人更新)3、SQL执行分析插件,避免出现全表更新和删除4、非法sql检查插件7、SQL注入器8、公共字段填充6、插件https://mp.baomidou.com/guide/auto-fill-metainfo.htmlMyBatis 允许你在映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括:1、分页插件在sp.原创 2020-08-10 22:47:40 · 841 阅读 · 0 评论 -
mybatis -- 11、mybatis-plus的configuration配置时间、globalConfig全局配置、dbConfig日志配置
目录3、Mybatis-plus的相关配置(1)configuration配置时间:(2)globalConfig全局配置:①修改图像:②dbConfig日志配置:(3)过程介绍:1、当添加上述配置之后,大家发现运行过程中报错,2、此时发现日志功能又无法使用了,只需要添加如下配置即可3、我们在刚刚插入数据的时候发现每个类可能都需要写主键生成策略,这是比较麻烦的,因此可以选择将主键配置策略设置到全局配置中。4、如果你的表的名字都具备相同的前缀,那么可以设置默认的前.原创 2020-08-10 18:50:03 · 14699 阅读 · 2 评论 -
mybatis -- 10、mybatis-plus的简单crud操作
2、简单的CRUD操作如果我们下面要实现CRUD的基本操作,那么我们该如何实现呢? 在Mybatis中,我们需要编写对应的Dao接口,并在接口中定义相关的方法,然后提供与该接口相同名称的Dao.xml文件,在文件中填写对应的sql语句,才能完成对应的操作 在Mybatis-plus中,我们只需要定义接口,然后继承BaseMapper<T>泛型类即可,此前做的所有操作都是由Mybatis-plus来帮我们完成,不需要创建sql映射文件EmpDao.javapu...原创 2020-08-09 16:48:23 · 302 阅读 · 0 评论 -
mybatis -- 9、mybatis-plus环境搭建
目录04mybatis-plus(为简化开发而生)1、mybatis-plus环境搭建04mybatis-plus(为简化开发而生) MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。特性:无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作 强大的 CRU...原创 2020-08-09 16:34:29 · 266 阅读 · 0 评论 -
mybatis -- 8、ssm整合的简单开发
03mybatis框架整合及逆向工厂1、三大框架整合(ssm整合) 在老期的项目中,一般都是使用ssm项目做开发的,虽然现在的主流开发是springboot来做开发,但是ssm的基本整合还是需要掌握的。1、导入pom文件(直接从之前所用的项目中赋值过来)<dependencies>======================================= springAOP ========================================...原创 2020-08-08 16:09:29 · 227 阅读 · 0 评论 -
mybatis -- 7、一级缓存、二级缓存、第三方缓存(桌面自动创建缓存文件、自动生成java文件方便crud等)
4、缓存 MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制。 为了使它更加强大而且易于配置,我们对 MyBatis 3 中的缓存实现进行了许多改进。 默认情况下,只启用了本地的会话缓存,它仅仅对一个会话中的数据进行缓存。 要启用全局的二级缓存,只需要在你的 SQL 映射文件中添加一行:当添加上该标签之后,会有如下效果:映射语句文件中的所有 select 语句的结果将会被缓存。 映射语句文件中的所有 insert、update 和 delete 语句...原创 2020-08-07 23:18:10 · 271 阅读 · 0 评论 -
mybatis -- 6、if、choose(选择)、foreach(相当于for)、set、script(脚本)、bind(绑定)、多数据库支持、动态 SQL 中的插入脚本语言
目录3、动态sql1、if2、choose(选择)3、foreach(相当于for)4、script(脚本)5、bind(绑定)6、多数据库支持7、动态 SQL 中的插入脚本语言8、set3、动态sql 动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL,可以彻...原创 2020-08-07 18:21:33 · 395 阅读 · 0 评论 -
mybatis -- 5、①联合查询、②获取集合元素、③分步查询、④延迟查询
5、联合查询 <groupId>com.mashibing</groupId> <artifactId>mybatis_helloworld</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <!-- https://mvnrepository.com/artifact/org.mybatis/m原创 2020-08-07 09:40:41 · 554 阅读 · 0 评论 -
mybatis -- 3、映射配置、详解
(8)mapper映射:①直接输入类的完全限定名:UserDaoAnnotation.java(用户注解接口)public interface UserDaoAnnotation { @Select("select * from user where id = #{id}") public User selectUserById(Integer id);}mybatis-config.xml(mybatis配置)<?xml version="1.0" en原创 2020-08-06 14:09:55 · 429 阅读 · 0 评论 -
mybatis -- 4、①#{}与${}、②获取参数方式、③处理集合返回结果、④resultMap结果映射
2、如果是多个参数: 我们在获取参数值的时候,就不能简单的通过#{}来获取了,只能通过arg0、arg1、param1、param2...这样的方式来获取参数的值 原因在于,mybatis在传入多个参数的时候,会讲这些参数的结果封装到map结构中,在map中key值就是(arg0,arg1,...) (param1,param2...),这种方式非常不友好,没有办法根据属性名来获取具体的参数值EmpDao.java接口public inter...原创 2020-08-06 20:45:24 · 307 阅读 · 0 评论 -
mybatis -- 2、驼峰标识验证、类型命名、类型处理器、数据库厂商标识
目录(2)驼峰标识验证:(3)typeAliases类型命名方式一:方式二:方式三:(4)typeHandlers类型处理器:(5)objectFactory对象工厂:(6)分页插件:(7)databaseIdProvider数据库厂商标识:(8)mapper映射:①直接输入类的完全限定名:② 方式一:如果是maven的项目的话,需要添加如下配置,因为maven默认只会编译java文件,需要把xml文件也添加到指定目录中 方式二:在r...原创 2020-08-05 15:07:11 · 210 阅读 · 0 评论 -
mybatis -- 1、mybatis第一个项目及其使用、配置文件解释
目录1、数据库操作框架的历程(1) JDBC(2) DBUtils(3)Hibernate(4) JDBCTemplate(jdbc模板)2、什么是Mybatis?3、第一个Mybatis项目3.1、创建普通的maven项目3.2、导入相关的依赖3.3、创建对应的数据表,数据表我们使用之前的demo数据库,脚本文件在群里,大家自行去下载安装3.4、创建与表对应的实体类对象3.5、创建对应的dao类3.6、编写配置文件3.7、编写测试类4、增..原创 2020-08-05 15:06:48 · 236 阅读 · 0 评论