MyBatis
MyBaits的学习
很皮的皮蛋瘦肉粥
这个作者很懒,什么都没留下…
展开
-
1、MyBatis简介
1、MyBatis简介1.1、什么是MyBatisMybatis是一款优秀的持久层框架它支持定制化SQLMyBatis避免了所有的JDBC代码和手动设置参数以及获取结果集Mybatis可以使用简单的XML或注解来配置和映射原生类型、接口和Java的POJO(Plain Old Java Objects,普通老式Java对象)为数据库中的记录。MyBatis本是apache的一个开源项目iBatis,2010年这个项目有apache software foundation迁移到了google c转载 2020-07-06 15:53:10 · 161 阅读 · 0 评论 -
2、第一个MyBatis程序
2、第一个MyBatis程序思路:搭建环境–>导入MyBatis–>编写代码–>测试!2.1、搭建环境搭建数据库CREATE DATABASE `mybatis`;USE `mybatis`CREATE TABLE `user`( `id` INT(20) NOT NULL PRIMARY KEY, `name` VARCHAR(30) DEFAULT NULL, `pwd` VARCHAR(30) DEFAULT NULL)ENGINE=INNODB DEFAUL转载 2020-07-07 09:44:03 · 120 阅读 · 0 评论 -
3、Mybatis的CRUD
3、Mybatis的CRUD转载 2020-07-07 11:54:09 · 761 阅读 · 1 评论 -
4、Mybatis配置解析
文章目录4、Mybatis配置解析4.1、核心配置文件4.2、环境变量(environments)4.3、属性(properties)4.4、别名(typeAliases)4、Mybatis配置解析4.1、核心配置文件mybatis-config.xmlMybatis的配置文件包含了会深深影响Mybatis行为的设置和属性信息。configuration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)转载 2020-07-08 10:21:27 · 128 阅读 · 0 评论 -
5、Mybatis解决属性名和字段名不一致的问题——ResultMap
5.1、问题要解决的问题:属性名和字段名不一致环境:新建一个项目,将之前的项目拷贝过来1、数据库user表原有字段2、Java中的实体类设计public class User { private int id; //id private String name; //姓名 private String password; //密码和数据库不一样! //构造方法 //set/get //toString}3、接口 User get转载 2020-07-08 16:09:26 · 435 阅读 · 0 评论 -
6、Mybatis—日志
文章目录6.1、日志工厂6.2、LOG4J6.3、**简单使用**6.1、日志工厂如果一个数据库相关的操作出现了问题,我们可以根据输出的SQL语句快速排查问题。我们以前会经常使用到debug模式来进行调节,跟踪我们的代码执行过程。但是现在我们使用的Mybatis是基于接口的,配置文件的源代码的执行过程无法跟踪。因此,我们必须选择日志工具来作为我们开发、调节程序的工具。Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具:SLF4JLOG4J 【掌握】LOG4J2JDK_转载 2020-07-08 20:20:52 · 192 阅读 · 0 评论 -
7、Mybatis——分页
为什么需要分页?减少数据的处理量使用Limit实现分页#语法SELECT * FROM table LIMIT stratIndex,pageSizeSELECT * FROM table LIMIT 5,10; // 检索记录行 6-15 #为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1: SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last. #如果只给定一个参数,它表示返回最大的记录行数目:转载 2020-07-08 21:35:16 · 416 阅读 · 0 评论 -
8、Mybatis——使用注解开发
8.1、面向接口编程大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程根本原因:解耦,可扩展,提高复用,分层开发中,上层不用管具体的实现,大家都遵守共同的标准,使得开发变得容易,规范性更好在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的,对系统设计人员来讲就不那么重要了而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也转载 2020-07-09 17:50:06 · 108 阅读 · 0 评论 -
9、Lombok
使用步骤:在IDEA中安装Lombok插件在项目中导入Lombok的jar包<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version></dependency>在实体类上加注解即可@Data@AllArgsCo转载 2020-07-09 18:29:15 · 75 阅读 · 0 评论 -
10、Mybatis——多对一处理
文章目录10.1、数据库设计10.2、测试环境搭建多对一的理解:多个学生对应一个老师如果对于学生这边,就是一个多对一的现象,即从学生这边关联一个老师10.1、数据库设计CREATE TABLE `teacher` (`id` INT(10) NOT NULL,`name` VARCHAR(30) DEFAULT NULL,PRIMARY KEY (`id`)) ENGINE=INNODB DEFAULT CHARSET=utf8INSERT INTO teacher(`i转载 2020-07-12 11:07:21 · 137 阅读 · 0 评论 -
11、Mybatis——一对多处理
文章目录11.1、环境搭建11.2、按结果嵌套处理11.3、按查询嵌套处理11.4、小结11.5、注意比如:一个老师拥有多个学生!对于老师而言,就是一对多的关系!11.1、环境搭建与多对一一致,只需修改实体类@Datapublic class Student { private int id; private String name; private int tid;}@Datapublic class Teacher { private int id;转载 2020-07-12 13:42:30 · 120 阅读 · 0 评论 -
12、动态SQL
文章目录12.1、搭建环境12.2、IF语句12.3、choose(when,otherwise)12.4、trim(where,set)12.4.1、where标签12.4.2、set标签12.4.3、trim标签12.5 SQL片段12.6 Foreach什么是动态SQL:就是根据不同的条件生成不同的SQL语句12.1、搭建环境构建数据表CREATE TABLE `blog`(`id` VARCHAR(50) NOT NULL COMMENT '博客id',`title` VARCHAR(1转载 2020-07-12 21:25:27 · 125 阅读 · 0 评论 -
13、缓存
文章目录13.1、简介13.2、Mybatis缓存13.3、一级缓存13.4、二级缓存13.5、缓存原理13.6、自定义缓存-ehcache13.1、简介1、什么时缓存[ Cache ] ?存在内存中的临时数据。将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。2、为什么使用缓存?减少和数据库的交互次数,减少系统开销,提高系统效率。3、什么样的数据能使用缓存?经常查询并且不经常改转载 2020-07-14 15:53:32 · 98 阅读 · 0 评论