![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
wuhua1024
这个作者很懒,什么都没留下…
展开
-
Innodb与MyISAM存储引擎的区别
没有摘要哈哈哈原创 2022-10-27 22:57:31 · 460 阅读 · 0 评论 -
ABA问题的解决
什么是ABA问题?ABA问题是发生在CAS过程当中的下面以一个例子来表示:假如有两个线程A,B,两个线程都从主内存中获取了某个对象的值为value1,当进行CAS的时候A首先把value1更换成了value2。因为线程B可能没有CPU资源调度导致行动缓慢,这个时候A又再次的将value2变量改变回了value1。当B线程有CPU执行权的时候进行CAS的时候,原来自己获得的是value1主内存里面的还是value1就进行更新自己要更新的值。但是value1已经被A线程修改过,虽然可以修改成功,但这个违背原创 2022-04-14 21:56:19 · 2750 阅读 · 0 评论 -
Java CAS概述
CAS是什么?CAS表示比较并交换,它是一条cpu并发原语指令。我们在多线程开发环境当中不免会使用到AtomicInteger类来保证多线程安全性例如: AtomicInteger atomicInteger = new AtomicInteger(3); atomicInteger.getAndIncrement();点进去getAndIncrement()方法里面会有public final int getAndIncrement() { //valueOffset是内存偏移原创 2022-04-14 16:21:02 · 102 阅读 · 0 评论 -
双端检索实现单例模式
详情请看代码public class SingletonDemo { private static volatile SingletonDemo instance = null; public SingletonDemo(){ System.out.println(Thread.currentThread().getName() +"我是构造方法SingletonDemo()"); } public static SingletonDemo getInstan原创 2022-04-13 16:30:55 · 367 阅读 · 0 评论 -
volatile的三大特性:可见性、非原子性、禁止指令重排
以下代码验证volatile的可见性可不保证原子性可见性解释:当自己创建的线程还没有修改num值时,一直在while里面循环,当5秒休眠完成后修改成功,因为可见性,主线程知道已经num修改完毕跳出while循环不保证原子性解释如果是保证原子性的那么num将会变成20000,实际上会num会比20000少,因为n++的时候被其他的线程打断了,若要保证原子性可以使用AtomicInteger代替。详情请看代码表示class Number{ volatile int num = 0;原创 2022-04-13 15:54:11 · 395 阅读 · 0 评论 -
leetCode-02
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。/* class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } ListNode(int原创 2022-02-28 22:20:10 · 243 阅读 · 0 评论 -
leetCode每日一题
两数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。//方法一、(暴力法) int[] twoSum(int[] nums, int target) { int nLength = nums.length; for(int i = 0 ; i<nLength ; i++){原创 2022-02-28 20:17:03 · 43 阅读 · 0 评论 -
SSM的整合
SSM的整合1.先创建数据库2.导入JAR包3.创建包4.创建实体类5.编写dao层6.编写service层7.编写mybatis-config.xml8.spring整合mybatis9.spring整合service层10.编写spring-mvc.xml文件11.Spring配置整合12.编写web.xml14.编写controller与视图层15.运行结果总结1.先创建数据库数据自行插入2.导入JAR包这里是用jar包,也可以用maven导包那样更方便注意out目录下也到导包不然整原创 2021-05-13 17:26:49 · 120 阅读 · 0 评论 -
Spring 学习日记
Java Spring 框架学习日记1新的征程新的征程新的一学期就到了,这个学期需要学习三个框架,ssm : Spring + Spring MVC +MyBatis第一堂Spring课下来,我感觉框架就是通过另一种方式来简化编程的。第一堂课学了控制反转,学了一节课,懵懵懂懂,以我的理解就是如果你要干一件活,你可以自己干,或者你可以叫第三方来干,来达到同样的效果然后就学到了Spring IOC容器IOC容器可以通过两个接口来实现控制反转BeanFactory//加载配置文件的时候不会去创建原创 2021-03-25 22:23:41 · 163 阅读 · 0 评论