首页 > 数据库技术 > 详细

MyBatis04&Oracle01

时间:2019-12-27 21:56:50      阅读:85      评论:0      收藏:0      [点我收藏+]

MyBatis的缓存【了解】

 

MyBatis除了可以完成对数据表数据增删改查,MyBatis自带了缓存机制。缓存可以加快查询效率。MyBatis的缓存有一级缓存和二级缓存。

 

一级缓存:SqlSession级别的缓存,一级缓存默认是开启的

二级缓存:namespace【Mapper】级别的缓存,默认是关闭的,需要手动开启。

 一级缓存

技术分享图片

 二级缓存

MyBatis的二级缓存的使用条件:

1.必须在mybatis的全局配置文件中开启二级缓存

技术分享图片

2.必须在对应mapper接口的sql映射文件中加一个cache标签

<cache/>

3.要求放入到二级缓存中的对象必须是实现了序列化Serializable的

技术分享图片

 

 

 4.必须是在一级缓存关闭的情况下,一级缓存中的数据才会跑到二级缓存中。

技术分享图片

 

 

 MyBatis的逆向工程

MyBatis的逆向工程是指:可以根据数据库中表直接生成表对应类,及操作类的Mapper接口和SQL映射文件。

MyBatis的逆向工程借助于MyBatis的生成器【MyBatis Generator:简称MBG】完成。

MyBatis的逆向工程:只能处理单表,对于有关联关系的表,没法直接处理。

例子:

技术分享图片

 

 

 技术分享图片

 

Oracle

数据类型:

varchar():字符串
date:时间类型
number(10,2):数字类型

模糊查询:LIKE:

like支持通配符:
-:任意一个字符
%:任意多个任意字符
转义字符:select * from emp where ename like _@_% escape @;

oracle中的函数:
单行函数:

处理字符串:UPPER()、LOWER()、INITCAP()、SUBSTR()、TRIM()、LENGTH()、REPLACE()。
SUBSTR(被截字符串,从哪个位置开始截取,截取的长度)
TRIM():去除前后空格
LENGTH():求长度
REPLACE(被替换字符串,‘要替换的字符串’,‘用来替换的字符串’)

处理时间:

日期类型只能进行加减操作,不能进行乘除操作。
· 日期 + 数字 = 日期,表示若干天之后的日期;
· 日期 – 数字 = 日期,表示若干天之前的日期;
· 日期 – 日期 = 数字,表示两个日期之间所经历的天数。

处理数值类型:

floor(),ceil()、abs()、sqrt()、power(2,3)

相互转换函数:

to_char()
to_date()
to_number()

通用函数:

nvl():类似于java中if语句
语法:数字 NVL(列,默认值)

decode():类似于java中switch...case语句
语法:数据 DECODE(列 | 数据,比较数据1,显示数据1,比较数据2,显示数据2 , …. [,默认返回])


多行函数【分组统计函数】

max、min、avg、count、sum    

count(*)与max(1):没区别:都是统计符合条件的行数
count(列):都是统计列部位null的行数
count(distinct 列):先去重,再统计行数

oracle分页:oracle不支持limit关键字

1.oracle要想实现分页必须借助于rownum
2.rownum不支持> 、>=、between...and
3.oracle分页借助于rownum的别名+子查询的方式

select *
from (
select rownum rn,empno,ename,job,sal 
from emp 
) tmp
where rn >=3 and rn <= 5

 


MyBatis04&Oracle01

原文:https://www.cnblogs.com/bai3535/p/12109729.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!