- 博客(14)
- 收藏
- 关注
原创 基于Redis实现分布式锁
@Autowiredprivate RedisTemplate redisTemplate;public Object getRedisLock() { UUID uuid = UUID.randomUUID(); // 添加k,v返回true,表示获取锁成功 Boolean lock = redisTemplate.opsForValue().setIfAbsent("lock", uuid, 300, TimeUnit.SECONDS); Map<String, S.
2021-03-08 16:00:56
110
原创 MyBatis的一级缓存和二级缓存
一级缓存 MyBatis对缓存提供支持,但是在没有配置的默认的情况下,它只开启一级缓存(一级缓存只是相对同一个SqlSession而言)。在使用**同一个SqlSession和同一条SQL**在缓存数据没有超时和刷新的情况下,第二次执行同一条SQL时直接可以到缓存中拿数据。也就是说一级缓存只在SqlSession级别,但是各各SqlSession是隔离的所以,其它新的SqlSession无法共享这个缓存。二级缓存 二级缓存可以克服一级缓存无法共享缓存的问题。 二级缓存存在于SqlSessionFa
2021-02-24 17:42:52
147
原创 MyBatis初始化步骤及生命周期
生命周期SqlSessionFactoryBuild通过读取Cinfiguration(xml,java编码)用来构建SqlSessionFactory的所以构建完后,因该将SqlSessionFactoryBuild回收。所以他的生命周期在方法的局部。SqlSessionFactorySqlSessionFactory是用来创建SqlSession的,而SqlSession就是一个会话,相当于JDBC中的Connection。程序每次访问数据库时就需要SqlSessionFactory创.
2021-02-24 11:51:35
159
原创 在Linux下安装JDK
第一步去Oracle官网下载Linux版的JDK点击进入:Oracle官网本人这里选择的是JDK8进行安装2. 第二步:1、在Linux下新建一个文件夹,命令 :mkdir /home/java 新建文件路径按自己习惯就好了。2、然后把JDK压缩包上传(复制)到Linux新建的文件夹下。3、解压JDK压缩包,命令:tar -zxvf 压缩包的文件名4、配置环境变量,命令:vim /etc/profile添加环境变量配置:5、修改解压后的JDK文件中的bin/java文件权限限制,命令.
2020-12-24 19:51:47
319
2
原创 二分排序法
二分查找法: 经典的查找算法,高级的二叉树、B树、B+数都是基于二分法。二分插入法: 基于二分查找法,来实现插入排序。动态演示图: 橙色为已排序,蓝色为未排序。/** * 二分法插入排序 */ public void dichotomyInsertSort(){ int[] arr = {12,22,8,100,66,89,45,0,67,88}......
2020-04-21 20:00:21
1906
原创 简单解释事物的概念和四大特性
定义:把一系列的SQL操作打包成一个完整的单元,要么都成功要么都失败。保证数据的一致性。ACID(四大特新)原子性(atomicty):事物是一个完整的操作。要么都执行要么都不执行。一致性(consistency):当事物完成时,数据必须处于一致状态。隔离性(isolation):对数据的各种操作事物必须是彼此隔离的,事物是独立的,不会影响其他事物。持久性(durability):事物...
2020-04-18 17:14:22
3316
1
原创 JavaScript中在不知道json数据中有几个属性、属性名的情况下,如何遍历对象的属性和值
//对象var object= { 属性1:值1, 属性2:值2, 属性3:值3}//遍历for(var obj in object){ console.log("属性名=" + obj + ",属性值=" + object[obj ]);}
2020-04-18 16:22:19
574
原创 final、finally、方法finalize()这三种的不同
final:被final修饰的类、属性、方法,表示不可变、最终的。finally:try catch finally代码块中始终要被执行的代码。finalize():清理类对象时,要执行的代码。被GC调用,清理内存。...
2020-04-18 15:52:01
168
原创 Error和Exception有什么区别
这两个异常都是java.lang.Throwable的子类Error:是无法恢复的错误。比如类加载时找不到、内存溢出OutOfMenmeryError,程序自身无法解决的异常。Exception:是可以恢复的异常。可以使用try catch代码块处理。...
2020-04-18 15:42:40
231
原创 Session和Cookie有什么联系
Seesion是服务内存中的一个对象。它用于回话跟踪。Seesion ID的存储和传递需要依赖于浏览器的Cookie。Cookie是浏览器的一种持久化存储技术。
2020-04-18 15:37:32
189
原创 JRE、JDK、JVM、JIT之间的不同
JRE:java的运行环境,有了JRE的电脑就可以运行java程序。JDK:java开发的工具包,JDK里面包含了JRE,以及开发工具、javac编译器。JVM:java虚拟机,java代码和操作系统的中间层,可以实现java代码跨平台、内存的管理等等一些优化。JIT:即时编译器,把class中的字节码翻译成CPU上可以直接执行的二进制指令。新的JITjjinj...
2020-04-18 15:03:55
819
原创 值类型是否可以赋NULL值?
int类型是值类型在初始化时未给他赋值,但是系统会自动为他赋一个最小值也就是0,所以值类性不存在NULL值。NULL是一种引用类型只能赋值给引用类型。但是我们可以用==NULLABLE<值类型>==将值类型转为引用类型。...
2019-12-06 16:40:52
744
原创 Spring中经常用到的注解提交方式@Postmapping、@GetMapping、@PutMapping、DeleteMapping
Spring4.3中引进了{@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping} 来帮助简化常用的HTTP方法的映射 并更好地表达被注解方法的语义1、@GetMapping对应注解@RequestMapping(value = “/get/{id}”, method = RequestMethod.GET)作...
2019-11-18 17:01:06
5352
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人