![](https://img-blog.csdnimg.cn/20200816003101879.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Mybatis
mybatis学习笔记
Jiang锋时刻
这个作者很懒,什么都没留下…
展开
-
MyBatis学习笔记——01简介
一. 什么是Mybatis1. 说明MyBatis 是一款优秀的持久层框架它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software原创 2020-08-16 00:42:11 · 121 阅读 · 0 评论 -
MyBatis学习笔记——02第一个Mybatis程序
一. 搭建环境1. 创建数据库sql语句# 创建表create database mybatis;use mybatis;create table people( id int(10) primary key, name varchar(16) default null, pwd varchar(32) default null)engine=innodb default charset=utf8;# 插入数据insert into people(id, name, pwd)原创 2020-08-16 20:54:36 · 148 阅读 · 0 评论 -
MyBatis学习笔记——03CRUD
一. namespacenamespace中的包名要和 Dao/mapper 接口的包名一致!<mapper namespace="com.hjf.dao.PeopleMapper"> ...</mapper>二. select语句1. 说明select: 查询语句id: 对应方法名resultType: sql语句执行的返回值类型(完整的名称)parameterType: 参数类型2. 代码编写接口/** * 获取人员信息列表 * @re原创 2020-08-16 21:36:16 · 88 阅读 · 0 评论 -
MyBatis学习笔记——04配置解析
一. 核心配置文件MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。configuration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境变量)transactionManager(事务管理器)dataSource(数据源)databas原创 2020-08-17 23:20:26 · 106 阅读 · 0 评论 -
MyBatis学习笔记——05解决属性名和字段名不一致的问题
一、 问题数据库中的字段新建一个项目,拷贝之前的,测试实体类字段不一致的情况public class User { private int id; private String name; private String password;}测试出现问题// select * from mybatis.user二. 解决方法:方法1. 起别名(不推荐)<select id="getUserList" resultTyp原创 2020-08-19 09:38:35 · 92 阅读 · 0 评论 -
MyBatis学习笔记——06使用注解开发
一. 面向接口编程大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 , 上层不用管具体的实现 , 大家都遵守共同的标准 , 使得开发变得容易 , 规范性更好在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的,对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在原创 2020-08-19 09:51:21 · 112 阅读 · 0 评论 -
MyBatis学习笔记——07多对一和多对一
一. 多对一1. 说明多个学生,对应一个老师对于学生这边而言, 关联 … 多个学生,关联一个老师 【多对一】对于老师而言, 集合 , 一个老师,有很多学生 【一对多】2. 案例1. 数据表准备Student表CREATE TABLE `student` ( `id` int(10) NOT NULL, `name` varchar(30) DEFAULT NULL, `tid` int(10) DEFAULT NULL, PRIMARY KEY (`id`),原创 2020-08-20 13:23:34 · 108 阅读 · 0 评论 -
MyBatis学习笔记——08动态SQL
1. IF标签和where标签1. 说明当满足if条件时, 会将if中的sql语句加入到SQL中where只有当其中的条件至少满足一个时才会生效where可以自动删掉条件中多余的and, 而不能添加缺失的and2. 案例<select id="queryArticleIF" resultType="article" parameterType="map"> select * from article <where> <if te原创 2020-08-23 21:15:09 · 91 阅读 · 0 评论 -
MyBatis学习笔记——09Mybatis缓存
一. 说明MyBatis包含一个非常强大的查询缓存特性,它可以非常方便地定制和配置缓存。缓存可以极大的提升查询效率。MyBatis系统中默认定义了两级缓存:一级缓存和二级缓存默认情况下,只有一级缓存开启。(SqlSession级别的缓存,也称为本地缓存)二级缓存需要手动开启和配置,他是基于namespace级别的缓存。为了提高扩展性,MyBatis定义了缓存接口Cache。我们可以通过实现Cache接口来自定义二级缓存二. 一级缓存1.介绍一级缓存也叫本地缓存:原创 2020-08-23 22:14:39 · 99 阅读 · 0 评论 -
MyBatis学习笔记——10练习题(01)环境搭配
一. 数据库创建smbms_bill表CREATE DATABASE `smbms`;USE `smbms`;CREATE TABLE `smbms_bill` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `billCode` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '账单编码', `productName` varchar(20) C原创 2020-08-19 09:57:15 · 226 阅读 · 0 评论 -
MyBatis学习笔记——11练习题(02)相关代码
零. 说明这些问题都是狂神Mybatis课程中所出示的题, 由于没有相应的文件, 就通过视频自己整理了这29个问题后面的SQL都是自己根据其课程中所学习到的内容自己完成的在上一篇博客的配置文件中已经设置了自动提交, 所以测试代码中都没写提交的代码测试代码中也没有写关闭线程的操作, 因为这和做这些题目不是很相关如果在观看过程中发现了一些问题, 欢迎交流狂神课程链接, 强烈推荐一. UserUserMapper.javapackage com.hjf.dao.user;import原创 2020-08-19 10:14:41 · 274 阅读 · 0 评论 -
MyBatis-Plus学习笔记——01概述及快速开发
需要的基础: Mybatis, Spring, SpringMVCMybatisPlus可以节省我们大量工作时间, 所有的CRUD代码它都可以自动化完成一. 概述1. 简介MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。2. 特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CRUD 操作:.原创 2020-09-29 21:11:21 · 155 阅读 · 0 评论 -
MyBatis-Plus学习笔记——02CRUD
一. 插入1. insert: 插入1. 案例方式1@Testvoid test01(){ User user = new User(8L, "user08", 23, "user08@qq.com"); userMapper.insert(user);}方式2@Testvoid test02(){ User user = new User(); user.setName("user02"); user.setAge(8); use原创 2020-09-29 21:26:25 · 101 阅读 · 0 评论 -
MyBatis-Plus学习笔记——03性能分析插件和条件构造器
一. 性能分析插件我们平时的开发中, 会需要一些慢SQL, 测试!Mybatis-Plus也提供了性能分析插件, 如果超过这个时间就会停止运行!使用性能分析插件, 可以帮助我们提高效率导入插件// SQL执行效率插件@Bean// 设置dev 和test环境开启, 保证我们的效率@Profile({"dev", "test"})public PerformanceInterceptor performanceInterceptor(){ PerformanceInterce原创 2020-09-29 21:36:21 · 88 阅读 · 0 评论 -
MyBatis-Plus学习笔记——04代码生成器
一. 案例导入依赖<dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.0</version></dependency><!--因为后面的配置中使用了Swagger--><!-- https://原创 2020-09-29 21:34:37 · 166 阅读 · 0 评论