MyBatis
文章平均质量分 83
无
杼蛘
一条咸鱼。。。
展开
-
MyBatis--分页插件
1、搭建步骤a>添加pom依赖<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --><dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.2.0&原创 2022-04-11 20:16:01 · 931 阅读 · 0 评论 -
MyBatis--逆向工程
正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。Hibernate是支持正向工程的。逆向工程:先创建数据库表,由框架负责根据数据库表,反向生成如下资源:Java实体类Mapper接口Mapper映射文件1、步骤新建Maven项目,搭建MyBatis框架a>添加依赖和插件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4原创 2022-04-11 20:13:06 · 1294 阅读 · 0 评论 -
MyBatis--缓存
1、MyBatis的一级缓存一级缓存是SqlSession级别的,通过同一个SqlSession查询的数据会被缓存,下次查询相同的数据,就会从缓存中直接获取,不会从数据库重新访问。使一级缓存失效的四种情况:不同的SqlSession对应不同的一级缓存同一个SqlSession但是查询条件不同同一个SqlSession两次查询期间执行了任意一次增删改操作同一个SqlSession两次查询期间手动清空了缓存(SqlSession的clearCache()方法)CacheMapper接口Emp原创 2022-04-10 17:05:09 · 1042 阅读 · 0 评论 -
MyBatis--动态SQL
Mybatis框架的动态SQL技术是一种根据特定条件动态拼装SQL语句的功能,它存在的意义是为了解决 拼接SQL语句字符串时的痛点问题。创建DynamicSQLMapper接口和映射文件,以及测试类1、ifif标签可通过test属性的表达式进行判断,若表达式的结果为true,则标签中的内容会拼接到SQL语句中;反之标签中的内容不会拼接DynamicSQLMapper接口/*** 多条件查询*/List<Emp> getEmpByCondition(Emp emp);Dynam原创 2022-04-09 15:59:17 · 1500 阅读 · 0 评论 -
MyBatis--自定义映射resultMap
新建Mybatis项目,搭建MyBatis框架过程不再赘述,参考前期博客:开始准备工作,此处只给出新内容准备工作创两个表,多对一关系(一个部门可以有多个员工),简单添加几条数据,如下:t_dept表,did主键自增t_emp表,eid主键自增创建两个pojo类:Emp.javapackage com.mybatis.pojo;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstru原创 2022-04-08 18:37:03 · 920 阅读 · 0 评论 -
MyBatis--特殊SQL的执行
在上一个项目进行测试,项目初始化参考:开始准备工作1、准备工作创建mapper接口,路径在src/main/java/com/mybatis/mapper/SQLMapper.javapackage com.mybatis.mapper;public interface SQLMapper { // 接口}创建mapper映射,路径在src/main/resources/com/mybatis/mapper/SQLMapper.xml<?xml version="1.0" e原创 2022-04-06 21:38:23 · 887 阅读 · 0 评论 -
MyBatis--各种查询功能
若查询出的数据只有一条:可以通过实体类对象接收可以通过List集合接收可以通过Map集合接收(以字段名为键,以字段值为值)若查询出的数据有多条:可以通过实体类型的List集合接收可以通过Map类型的List集合接收可以在mappr接口的方法上添加@MapKey注解,此时将每条数据转换的Map集合作为值,以某个字段的值作为键,放在同一个Map集合中一定不能通过实体类对象接受,此时会抛异常TooManyResultsException在上一个项目进行测试,项目初始化参考:开始准备工作原创 2022-04-04 20:19:01 · 2242 阅读 · 0 评论 -
MyBatis--获取参数值
MyBatis获取参数值的两种方式:${}和#{} ${}的本质就是字符串拼接,#{}的本质就是占位符赋值${}使用字符串拼接的方式拼接sql,若为字符串类型或日期类型的字段进行赋值时,需要手动加单引号;但是#{}使用占位符赋值的方式拼接sql,此时为字符串类型或日期类型的字段进行赋值时,可以自动添加单引号${}会产生SQL注入,#{}不会产生SQL注入问题1、准备工作新建一个Maven项目,在pom.xml导入相关依赖<?xml version="1.0" encoding="UTF-8原创 2022-04-03 20:13:54 · 1376 阅读 · 0 评论 -
MyBatis--增删改查
1、封装工具类由于SqlSessionj较常用,故封装成工具类,路径在src/main/java/com/mybatis/util/SqlSessionUtil.javapackage com.mybatis.util;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import原创 2022-04-03 16:58:10 · 1395 阅读 · 0 评论 -
MyBatis--核心配置文件详解
核心配置文件中的标签必须按照固定的顺序: properties->settings->typeAliases->typeHandlers->objectFactory->objectWrapperFactory->reflectorFactory->plugins->environments->databaseIdProvider->mappers<?xml version="1.0" encoding="UTF-8" ?><原创 2022-03-31 21:36:23 · 642 阅读 · 0 评论 -
MyBatis--搭建
1、开发环境IDE:idea 2021.3.2构建工具:maven 3.8.1MySQL版本:MySQL 5.5.28MyBatis版本:MyBatis 3.5.7可以在idea中安装MyBatisX插件,方便Mybatis中mapper和xml的映射,提高开发效率2、创建maven工程a>打包方式:jarb>引入依赖pom.xml如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http原创 2022-03-31 13:27:56 · 1822 阅读 · 0 评论 -
MyBatis--简介
1、MyBatis历史MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁 移到了Google Code。随着开发团队转投Google Code旗下, iBatis3.x正式更名为MyBatis。代码于 2013年11月迁移到Github。iBatis一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。 iBatis提供的持久层框架 包括SQL Maps和Data Access O原创 2022-03-29 18:59:25 · 158 阅读 · 0 评论