- 博客(24)
- 收藏
- 关注
原创 mybatis-plus学习笔记-简单使用
一、基本步骤1.配置数据库2.建立实体User3.建立Mapper接口,继承BaseMapper4.启动类使用MapperScan扫描dao包(或者配置设置)5.注入bean,使用方法
2020-05-21 11:27:43
100
原创 lombok学习笔记
一、概述Lombok项目是一个Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来消除Java类中的大量样板代码。仅五个字符(@Data)就可以替换数百行代码从而产生干净,简洁且易于维护的Java类。二、常用注解:@Data: 注解在类,生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。@Setter :注解在类或字段,注解在类时为所有字段生成setter方法,
2020-05-21 10:51:04
102
原创 mybatis-plus学习笔记-概述
mybatis-plus一、概述只做增强不做改变热加载、代码生成、分页、性能分析等功能快速进行 CRUD 操作二、导入<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <versio...
2020-05-21 10:17:05
113
原创 mybatis学习笔记-注解开发
1.mybatis中针对CRUD的注解一共四个@Select@Insert@Update@Delete2.步骤 (1)配置:(2)注解使用在接口使用select注解(3)dao接口处注解建立实体类属性与数据库表对应关系(4)使用表3.多表查询@One注解:一对一关联查询@Many注解:一对多关联查询fetchType属性设置eager和lazy4.注解使用二级缓存:第一步第二步加注解...
2020-05-21 10:15:56
106
原创 mybatis学习笔记-缓存
1.什么是缓存存在于内存中的临时数据2.为什么使用缓存减少与数据库的交互次数,提高执行效率3.什么样的数据能使用缓存经常查询且不常改变的。数据的正确与否影响不大的4.mybatis中的一级缓存和二级缓存一级缓存:指的是mybatis中SqlSession对象的缓存。当我们执行查询之后,查询的结果会同时存入到SqlSession为我们提供的一块区域中。该区域是个map,当我们查询相同的数据,会先在sqlsession中查询是否存在,存在则直接使用。SqlSession对象消失时,一级缓
2020-05-21 10:11:52
118
原创 mybatis学习笔记-延迟加载
问题:在一对多中,当我们有一个用户,有100个账户查询用户时,查出关联的账户时机应该是何时使用,何时查询查询账户时,查出关联的用户时机应该是直接跟着账户一起查明延迟加载:在使用数据时才发起查询,按需加载(懒加载)立即加载:不管用不用,只要调用方法就发起查询常规情况下,默认是立即加载下图开启mybatis支持延迟加载<settings> <setting name="lazyLoadingEnabled" value="true"/> &l
2020-05-21 10:10:13
79
原创 mybatis学习笔记-多表查询
关系映射,主表实体应该包含从表实体的集合引用 private List<Account> accounts; public List<Account> getAccounts() { return accounts; } public void setAccounts(List<Account> accounts) { this.accounts = accounts; } private User user;
2020-05-21 10:07:00
89
原创 mybatis学习笔记-动态SQL
1.if标签2.where标签:可以自动处理下一个and<select id="findUserByCondition" resultMap="userMap"> select * from user where 1=1 <where> <if test="username != null"> AND username =#{username} <
2020-05-21 10:05:19
67
原创 mybatis学习笔记-连接池
1.概述连接池是一个用于存储连接的容器,可以减少获取连接所需要的时间。容器就是一个集合对象,该集合必须是线程安全的,不能两个线程拿到同一连接。该集合还必须实现队列的特性:先进先出。2.mybatis中的连接池mybatis连接池提供了3中方式的配置:配置的位置:主配置文件SqlMapConfig.xml中的dataSource标签,type属性就是表示采用何种连接池方式。type属性的取值:POOLED 采用传统的javax.sql.DataSource规范中的连接池,mybatis中有
2020-05-21 10:03:25
92
原创 mybatis学习笔记-基本使用
1.mapper约束//mapper约束 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">2.单表crud操作3.参数与返回值1.查询全部<select id="findAll" resultType="com.zs.domain.User"> select *
2020-05-21 10:00:56
128
原创 mybatis学习笔记-dao实现类方法执行过程分析
1.dao实现类查询方法执行过程分析@Override public List<User> findAll() { //1.根据factory获取sqlsession对象 SqlSession session =factory.openSession(); //2.调用SqlSession中的方法,实现查询列表 List<User>users=session.selectList("com.zs.dao.IUserDao.fi
2020-05-21 09:59:40
213
原创 mybatis学习笔记-环境搭建
步骤(1)建maven工程并导入坐标(2).创建实体类和dao的接口(3).创建mybatis的主配置文件SqlMapConfig.xml(4).创建映射配置文件IUserdao.xml(若是基于注解,移除映射配置文件,在dao接口使用@Select注解,同时在SqlMapConfig 的mapper中使用class属性指定dao接口的全限定类名)(5).入门案例:(mybatis-day0101、mybatis-day0102、mybatis-day0103)1.读取配置文件2
2020-05-21 09:55:49
129
原创 mybatis学习笔记-概述
1.什么是框架框架结合了设计模式,可以动态的写程序。它定义了整体结构,类和对象的分割,各部分的主要责任,类和对象怎么协作,以及控制流程。框架预定义了这些设计参数,以便于应用设计者或实现者能集中精力于应用本身的特定细节。2.三层架构表现层:展示数据业务层:处理业务持久层:和数据库交互3.持久层技术解决方案JDBC技术:(是一种用于执行SQL语句的Java API,为多种关系数据库提供统一访问)Connection连接PreparedStatement命令发送器ResultSet处理语句
2020-05-21 09:52:15
127
原创 mysql学习笔记-变量
变量:系统变量:全局变量会话变量自定义变量:用户变量局部变量一、系统变量说明:变量由系统提供,不是用户定义,属于服务器层面(1)使用的语法:全局变量用global会话级别用session,不写默认为session1.查看所有的系统变量show global | 【session】 variables;2.查看满足条件的部分系统变量show global | 【session】 variables like ‘%char%’;3.查看指定的某个系统的变量的值select @@
2020-05-16 18:01:46
79
原创 mysql学习笔记-视图
视图(虚拟表)含义:虚拟表,和普通表一样使用mysql5.1版本后新特性,通过表动态生成的数据好处:重用sql语句简化复杂的sql操作,不必知道细节保护数据,提高安全性一、创建视图语法:create view 视图名 as 查询语句;例:CREATE VIEW v1 ASSELECT last_name,department_name,job_titleFROM employees eJOIN departments d ON e.department_id = d.depar
2020-05-16 16:34:54
103
原创 mysql学习笔记-标识列
select max(id) from tablename2.SELECT LAST_INSERT_ID() 函数LAST_INSERT_ID 是与table无关的,如果向表a插入数据后,再向表b插入数据,LAST_INSERT_ID会改变。在多用户交替插入数据的情况下max(id)显然不能用。这时就该使用LAST_INSERT_ID了,因为LAST_INSERT_ID是基于Connec...
2020-05-16 10:50:53
228
原创 mysql学习笔记-常见约束
约束(1)一种限制,用于限制表中的数据的准确和可靠性(2)分类(6类)not null:非空default:默认,保证当前字段有默认值primary key:主键unique:唯一check:检查约束(mysql中不支持)foreign key:外键,限制两表外键数据的一致性(3)添加约束的时间:1.创建表时2.修改表时(4)约束的添加分类:1.列级约束六大约束语法上都支持,但外键约束没有效果2.表级约束除非空,默认,其它的都支持(5)主键与唯一的异同:两者都是唯一的,且
2020-05-15 17:37:46
101
原创 mysql学习笔记-数据定义语言DDL
DDL(数据定义语言)创建:create修改:alter删除:drop一、库的管理库的创建CREATE DATABASE books;CREATE DATABASE IF NOT EXISTS books;库的修改RENAME DATABASE books TO newbook;(报错,这个命令应该适用于5.1.7到5.1.23版本)更改库的字符集ALTER DATABASE books CHARACTER SET gbk;库的删除DROP DATABASE IF EXISTS
2020-05-15 15:47:17
162
原创 mysql学习笔记-数据操作语言DML
DML语言(数据操作语言)插入:insert修改:update删除:delete一、插入(1)方法一经典插入insert into 表名(列名,…)value (值1,…);1.插入的值的类型要与列的类型一致或兼容2.不可以为null的列必须插入值,可以为null的可插入null或不插入3.列的顺序可以调换4.列数和值的个数必须一致5.可以省略列名,默认所有列(2)方法二insert into 表名 set 列名=值,列名=值,…INSERT INTO beauty SET id
2020-05-15 11:19:27
84
原创 mysql学习笔记-数据查询语言DQL
DQL:Data QueryLanguage 数据查询语言标准语法一、基础查询语法:select 查询列表 from 表名;1.查询字段特点(1)查询列表可以是:表中的字段,常量值,表达式,函数(2)查询的结果是一个虚拟的表格例:(1)查询表中的单个字段SELECT last_name FROM employees;(2)查询表中的多个字段SELECT last_name ,...
2020-05-14 17:38:41
192
原创 Redis学习笔记-基础
一、数据库简述NoSQL(Not-Only SQL)泛指非关系型的数据库,作为关系型数据库的补充。作用:应对基于海量用户和海量数据前提下的数据处理问题。特性:可扩容,可伸缩大数据量下高性能灵活的数据模型高可用常见NoSQL数据库:RedismemcacheHBaseMongoDB二、信息的保存1.商品基本信息(MySQL)名称价格厂商2.商品附加信息(Mongo...
2020-05-11 15:14:25
178
原创 mysql学习笔记-入门
一、数据库的作用1.持久化数据到本地2.可以实现结构化查询3.使用完整的管理系统统一管理易于查询二、数据库相关概念1.DB数据库(database):保存了一系列有组织的数据2.DBMS数据库管理系统(Database Management System):数据库是通过DBMS创建和操作的容器3.常见的数据库管理系统:mysql,oracle,db2,sqlserver4.D...
2020-04-27 11:06:38
80
原创 idea快捷键、模板与设置
1.Alt+Insert2./**+回车 注释3.Ctrl+/ 注释4.Ctrl+Alt+t5.Ctrl+a 全部6.Ctrl+c 复制7.Ctrl+v 粘贴8.Ctrl+z 回溯9.Ctrl+y 取消回溯10.Ctrl+Alt+l 代码格式化
2020-04-27 09:43:23
259
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人