![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 77
Quito.Gao
这个作者很懒,什么都没留下…
展开
-
MyBatis最佳实践
动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL,可以彻底摆脱这种痛苦。原创 2023-01-25 09:15:00 · 397 阅读 · 0 评论 -
ORM框架的发展历史与MyBatis的高级应用
ORM( Object Relational Mapping) ,也就是对象与关系的映射,对象是程序里面的对象,关系是它与数据库里面的数据的关系,也就是说,ORM框架帮助我们解决的问题是程序对象和关系型数据库的相互映射的问题O:对象M:映射R:关系型数据库Hibernate的出现大大简化了我们的数据库操作,同时也能够更好的应对更加复杂的业务场景,Hibernate具有如下的特点根据数据库方言自定生成SQL,移植性好自动管理连接资源。原创 2023-01-19 13:43:58 · 283 阅读 · 0 评论 -
Java中HashMap的get和put算法时间复杂度空间复杂度是多少?
Java中HashMap的get和put算法时间复杂度空间复杂度是多少?在JDK8之前在JDK8之后解释在JDK8之前用单链表HashMap作为一个桶来储存存在哈希碰撞的元素。无论是get还是put方法,步骤都可以分为第一步找桶(找桶时间都为O(1),可以忽略),第二步在桶内进行操作(查找或者插入),首先最好的情况为没有任何哈希碰撞的情况,即所有元素分配在不同的桶,最坏的情况为所有元素碰撞在一起,即全部被分配在同一个桶。所以情况复杂度如下:GET最好情况:O(1)GET最坏情况:O(N) (即原创 2021-12-10 14:20:45 · 5605 阅读 · 5 评论 -
java中的锁:synchronized
java中的锁机制synchronizedJava对象头在Hotspot虚拟机中,对象在内存中的布局分为三块区域:对象头、实例数据和对齐填充;Java对象头是实现synchronized的锁对象的基础,一般而言,synchronized使用的锁对象是存储在Java对象头里。class oopDesc { friend class VMStructs; private: volatile markOop _mark;//理解为对象头 union _metadata {原创 2021-12-10 13:38:38 · 280 阅读 · 0 评论 -
MySql数据库MVCC和锁机制
数据库行锁表锁和锁竞争##查看自动提交模式show session variables like ‘autocommit’;show global variables like ‘autocommit’;– 修改自动提交 为手动提交set global autocommit=0;SET SESSION autocommit=0;– 索引项– 开启事务BEGIN TRANSACTION;SELECT * FROM member WHERE id = 1 for UPDATE;COMMIT原创 2021-12-08 11:35:06 · 724 阅读 · 0 评论 -
CompletableFuture 使用实例
List<String> list=new ArrayList(); list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); List<Object> result = new ArrayList();CompletableFuture<List<Object>>[] futures = new CompletableFut...原创 2021-11-25 15:43:38 · 1019 阅读 · 0 评论 -
事务与分布式事务
事务与分布式事务事务的基本概念本地事务Undo Log 如何保障事务的原子性?Redo Log如何保障事务的持久性?事务的四个隔离级别事务在项目中的应用(@transactional注解)@Transactional注解可以作用于哪些地方?几种常见的失效场景事务传播机制注解实现原理分布式事务什么是分布式事务典型场景理论基础BASE定理分布式事务分类刚性事务柔性事务一图搞懂 分布式事务事务的基本概念事务是由一组操作构成的可靠的独立的工作单元,事务具备ACID的特性,即原子性、一致性、隔离性和持久性。本地原创 2021-11-25 12:23:18 · 3087 阅读 · 0 评论 -
27道大厂高频Spring面试题,95%的人答不上
27道大厂高频Spring面试题1. 什么是Spring框架?Spring框架有哪些主要模块?2. 使用Spring框架能带来哪些好处?3.什么是控制反转(IOC)?什么是依赖注入?4.在Java中依赖注入有哪些方式?5.BeanFactory和ApplicationContext有什么区别?6. Spring提供几种配置方式来设置元数据?7.如何使用XML配置的方式配置Spring?8.Spring提供哪些配置形式?9.怎样用注解的方式配置Spring?10.请解释Spring Bean的生命周期?11.转载 2021-07-30 18:16:43 · 216 阅读 · 0 评论