![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA基础
JAVA基础
qq_30831285
这个作者很懒,什么都没留下…
展开
-
spring事务,非事务方法与事务方法执行相互调用
写这篇文章的初衷呢就是最近遇到了一个spring事务的大坑。其实是自己掌握的事务这块知识点儿太薄弱啦。项目环境 sprinigboot下面开始问题描述,发生的过程有点长,想直接看方案的直接跳过哦~项目的业务是工作流审批接口,在接口实现类中A方法去调用B方法。A方法大致就是做了一个区分是一个流程审批还是批量审批(批量就循环调用),去调用审批方法B方法。然后B审批方法上面打了事务。然后批量审批...原创 2019-11-08 16:18:27 · 2504 阅读 · 0 评论 -
volatile和synchronized的区别
volatile和synchronized的区别volatile和synchronized特点首先需要理解线程安全的两个方面:执行控制和内存可见。执行控制的目的是控制代码执行(顺序)及是否可以并发执行。内存可见控制的是线程执行结果在内存中对其它线程的可见性。根据Java内存模型的实现,线程在具体执行时,会先拷贝主存数据到线程本地(CPU缓存),操作完成后再把结果从线程本地刷到主存。syn...原创 2019-09-24 15:27:03 · 70 阅读 · 0 评论 -
java中HashMap原理
1、为什么用HashMap?HashMap是一个散列桶(数组和链表),它存储的内容是键值对(key-value)映射HashMap采用了数组和链表的数据结构,能在查询和修改方便继承了数组的线性查找和链表的寻址修改HashMap是非synchronized,所以HashMap很快HashMap可以接受null键和值,而Hashtable则不能(原因就是equlas()方法需要对象,因为Has...原创 2019-09-20 15:53:13 · 95 阅读 · 0 评论 -
JAVA基础整合
1、Struts2和Struts1对比:1)实现方式不同:Struts1的Action类必须拓展Action类或者Action的子类,而Struts2的Action类可以不用实现任何;2)Struts2每次请求都生成一个Aciton实例,不存在线程安全的问题;3)Strut2较1相比为非侵入,不依赖Servlet API;4)Struts2更易测试,因为不依赖Servlet API;5...原创 2019-01-11 10:21:48 · 176 阅读 · 0 评论 -
JAVA基础整合
今天要谈的主题是关于求职,求职是在每个技术人员的生涯中都要经历多次。对于我们大部分人而言,在进入自己心仪的公司之前少不了准备工作,有一份全面细致面试题将帮助我们减少许多麻烦。在跳槽季来临之前,特地做这个系列的文章,一方面帮助自己巩固下基础,另一方面也希望帮助想要换工作的朋友。相关概念面向对象的三个特征封装,继承,多态,这个应该是人人皆知,有时候也会加上抽象。多态的好处允许不同类对象对同一...原创 2018-12-24 13:45:57 · 155 阅读 · 0 评论