![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mybatis
来一杯热Java
不积跬步,无以至千里。不积小流,无以成江海。
展开
-
19.基于SSM如何实现分页
原创 2020-11-25 22:30:09 · 125 阅读 · 0 评论 -
18 Mybatis缓存介绍
1.缓存简介1.1 缓存技术是一种“以空间换时间”的设计理念,是利用内存空间资源来提高数据检索速度的有效手段之一。Mybatis包含一个非常强大的查询缓存特性,可以非常方便地配置和定制。MyBatis将数据缓存设计成两级结构,分为一级缓存、二级缓存,默认情况下只有一级缓存开启(SqlSession级别的缓存,也称为本地缓存),二级缓存需要手动开启和配置(namespace级别的缓存,也叫全局缓存),要启用全局的二级缓存,只需要在你的 SQL 映射文件中添加一行:<cache/>。&.原创 2020-05-15 17:49:09 · 1059 阅读 · 0 评论 -
17.Mybatis动态sql环境搭建及常用标签
1.什么是动态sql?动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL,可以彻底摆脱这种痛苦。使用动态 SQL 并非一件易事,但借助可用于任何 SQL 映射语句中的强大的动态 SQL 语言,MyBatis 显著地提升了这一特性的易用性。如果你之前用过 JSTL 或任何基于类 XML 语言的文本处理器,你对动态原创 2020-05-15 17:39:54 · 139 阅读 · 0 评论 -
16.Mybatis一对多处理
1.拷贝mybatis06的com.my包,resource下的配置文件2.删除StudentMapper.xml以及TeacherMapper.xml的sql3.删除测试类里的测试方法4.修改Student以及Teacher实体属性@Datapublic class Student { private int id; private String name; private int tid;}@Datapublic class Teacher ...原创 2020-05-15 17:33:11 · 167 阅读 · 2 评论 -
15.Mybatis多对一处理
1.查询所有学生信息以及对应的老师(多对一)1.1. StudentMapper接口编写查询方法Public interfaceStudentMapper{//查询所有学生信息以及对应的老师信息Public List<Student>getStudent();}1.2.StudentMapper.xml文件编写sql查询语句<select id="getStudent" resultType="Student">Select s.id,s.nam.原创 2020-05-09 18:03:57 · 286 阅读 · 0 评论 -
14.Mybatis复杂查询环境搭建
从学生角度(多对一):多个学生关联一个老师(关联) 从老师角度(一对多):一个老师有多个学生(集合)1.创建teacher表和student表,并插入数据CREATETABLE`teacher`(`id`int(10)NOTNULL,`name`varchar(30)DEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8INSERT I...原创 2020-05-09 16:48:14 · 123 阅读 · 0 评论 -
12.Mybatis使用注解实现增删改查(CRUD)
1.通过id查询用户1.1.UserMapper添加注解查询方法//通过id查新用户//方法存在多个参数,所有的参数前面都要加上@param("")注解@Select("select * from user where id=#{id}")User getUserById(@Param("id")intid);1.2.test编写测试方法@Test//通过id查询用户Public void getUserById(){SqlSession sqlSession=M..原创 2020-05-09 14:23:24 · 150 阅读 · 0 评论 -
11.Mybatis执行流程
1.加载配置文件String resource = "mybatis-config.xml";InputStream inputStream = Resources.getResourceAsStream(resource);2.实例化SqlSessionFactor...原创 2020-05-07 22:06:11 · 123 阅读 · 0 评论 -
10.使用Mybatis注解开发
1.拷贝Mybatis04的配置文件以及代码到Mybatis05,删除UserMapper.xml以及log4j.properties2.删除mybatis-config.xml的映射器<mappers>里的配置,以及修改日志输出为标准日志输出 <!-- 标准日志输出--> <setting name="l...原创 2020-05-07 22:03:58 · 87 阅读 · 0 评论 -
9.limit和RowBounds实现分页
1、Mysql的limit用法SELECT*FROMtableLIMIT[offset,]rows|rowsOFFSEToffsetLIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录...原创 2020-05-07 22:03:19 · 378 阅读 · 0 评论 -
7.解决属性名和字段名不一致的问题
1.创建子模块mybatis03,拷贝mybatis02的配置文件和测试代码2.运行测试3.修改User实体属性pwd为passwordpackage com.my.pojo;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import lo...原创 2020-05-04 14:24:45 · 261 阅读 · 0 评论 -
6.作用域(Scope)和生命周期
.作用域和生命周期是至关重要的,因为错误的使用会导致非常严重的并发问题。提示对象生命周期和依赖注入框架依赖注入框架可以创建线程安全的、基于事务的 SqlSession 和映射器,并将它们直接注入到你的 bean 中,因此可以直接忽略它们的生命周期。 如果对如何通过依赖注入框架使用 MyBatis 感兴趣,可以研究一下 MyBatis-Spring 或 MyBatis-Guice...原创 2020-05-04 14:18:01 · 241 阅读 · 0 评论 -
5.Mybatis详细配置解析
1.新建子模块mybatis021.1 复制mybatis01的reaources下面的mybatis-config.xml到mybatis021.2 复制mybatis01的包到mybatis02,删除UserMapper接口以及UserMapperxml里关于Map和模糊查询的相关代码1.3 复制mybatis01的test包下的代码到mybatis02的test包下,留下一个...原创 2020-05-04 14:11:41 · 416 阅读 · 0 评论 -
4.Mybatis的Map操作和模糊查询
1.通过Map添加用户1.1UserMapper添加addUser2(Map<String,Objext>,map)public interface UserMapper { // 查询所有用户 List<User> getUserList(); // 通过id查询 User getUserById(int id);...原创 2020-05-04 14:02:50 · 185 阅读 · 0 评论 -
3.mybatis增删改查(CRUD)
1.通过id查询用户 1.1UserMapper创建方法getUserById()package com.my.dao;import com.my.pojo.User;import java.util.List;/*** Description:** @author created by hyy* @date created on 2020/5...原创 2020-05-04 13:54:12 · 168 阅读 · 0 评论 -
2.第一个Mybatis程序
2.1.搭建环境 1.创建数据库mybatisCREATE DATABASE `mybatis`;2.创建表USE `mybatis`;CREATE TABLE `user`(`id` INT(20) NOT NULL PRIMARY KEY,`name` VARCHAR(30) DEFAULT NULL,`pwd` VARCHAR(30) DEFAULT ...原创 2020-05-04 13:44:17 · 107 阅读 · 0 评论 -
1.Mybatis简介
1.什么是Mybatis? MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。1....原创 2020-05-04 13:33:26 · 405 阅读 · 0 评论