自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(16)
  • 收藏
  • 关注

原创 从java中的 AtomicInteger去看cas

我们在之前的文章中介绍过原子性问题。当时我们说过使用synchnorized关键字就可以保证安全。今天我们看看java中为我们提供的另一种实现原子类。我们也AtomicInteger 为例去看看源码。AtomicInteger先看这货的几个属性。unsafe是啥? valueOffset又是干什么的。我们放到后续再聊。通过上面的代码我们清晰的知道这个value 就是存储这个对象当前...

2020-03-27 00:22:17 272 1

原创 扒一扒synchronized的原理

在前面并发容器的学习中我们多次发现代码之中使用了Atomic包下的类,以及synchorized关键字,今天我们就来扒一扒 synchronized 关键字。synchronized 关键字使用的三种场景1.对于普通同步方法,锁是当前实例对象2.对于静态同步方法,锁是当前类的Class对象3.对于同步方法块,锁是Synchronized括号里配置的对象接下来我们来看看synchr...

2020-03-26 02:48:59 202

原创 JMM知识点总结(二)

今天来继续总结JMM的其他相关知识,通过上一篇文章我们已经大概知道了多线程情况下某些程序存在可见性问题。什么是可见性定义是:当一个线程修改了共享变量的值,其他线程能够看到修改的值。我们都知道java程序运行时,数据都存储在java运行时数据区(包括,虚拟机栈,方法区,堆,本地方法区,程序计数器等),而我们的可见性问题主要存在于堆。临时变量,或者静态变量,都存在方法区和栈之中都由各个线程独有...

2020-03-22 14:19:37 200

原创 JMM相关知识学习总结(一)

Java Memory Model在并发编程中需要处理的两个问题是:线程之间如何同步,以及线程之间如何通信。有两种主流的方案分别是共享内存和消息传递而我们的java采用的就饿时第一种共享内存模型来间接的实现,线程间的通信和同步。为什么需要JMM?让我们看一个简单的demo:这段代码的运行结果如下:可见程序进入了死循环并不能结束,问题出在了哪里呢?我们有两种推测,要么主线...

2020-03-21 22:21:20 255

原创 List and Set and Queue

今天总结一下其他集中容器Listlist应该是我们工作中最常用的数据结构了先来说说最常见的ArrayList ,一看名字就知道着家伙跟数组有关系。让我们来看看它的实现我们在使用ArrayList的时候都是尽情的 塞! 塞! 塞! 可是数组是有固定的长度的,它是怎么实现的呢? 让我们看看它的add方法...

2020-03-20 20:09:42 182

原创 Hashtable 与 ConcurrentHashMap 总结

上一篇简单介绍了众多map中的HashMap ,最后提及HashMap的最大缺点就是线程不安全。今天我们介绍两种线程安全的map容器,看它们是如何来解决线程安全的问题。问题:HashMap为什么线程不安全?jdk1.7时会出现环形链表导致死循环 --》元凶是在扩容时进行元素插入使用的是头插法(在1.8后使用尾插法解决了这个问题)jdk1.8时会出现元素覆盖的情况 --》当线程A,B同时...

2020-03-19 00:07:13 476

原创 map 容器学习 -- hashMap

map是一种常见的容器 ,此篇简单记载学习后的一些心得第一个问题:map这种结构是用来解决什么样的问题?看这样一个例子:假如我们希望将一些人名字的信息存储起来,首先我们想到使用数组存储这些元素String [] names = new String [10];names[0] = "张三";names[1] = "李四";//...接下来我们需要存储每个人的身...

2020-03-17 19:10:19 192

原创 spring源码解读 spring如何读取xml文件

本例以spring中的 ClassPathXmlApplicationContext 为例 : 1.介绍一下ClassPathXmlApplicationContext  : 从名字上就能看出这个applicationContext 是按照类路径读取文件的容器。如果想知道applicationContext 和 beanFactory 的区别请baidu, 例子 ClassPathXmlA

2017-05-03 16:52:32 495

原创 effective java 读书笔记

创建和销毁对象1.静态工厂方法替代构造器:构造器的缺点在于,1.对于上层调用者,有时候不知道该使用哪个构造器,同时也可能不太清楚构造器内参数的具体含义,因为构造器没有名称2.每次调用都会产生一个新的对象,会造成资源浪费3.返回类型只能是当前类型,不能体现多态使用工厂方法:1.可以使用比较具体的名字来让上层调用者知道该这个工厂方法产生的构造器到底是什么种类。2.可以通过单

2016-12-29 10:22:09 123

原创 利用iframe 异步文件上传

最近在项目中用到了文件上传功能 ,目前来说主流的上传控件很多uploadify webUploader等我们在正常做文件上传功能时,由于ajax不支持设置enctype ajax传递的类型为text(String或者JSON) 所以我们只能通过插件flash 或者 iframe进行类似功能实现,我在最近的项目中使用了iframe来实现该功能,话不多说上货:jsp 部分:选择

2016-07-13 13:44:07 229

原创 spring 常用配置

1.Bean的scope:spring 中常用的两个bean scope:singleleton 和 protoype 单例模式和每次都new一个新对象2.spring el表达式:@value注解的使用一些常用eg:@propertySource(classpath:xxx 在web-inf 的classes 路径下)@value("i love you")private Str

2016-07-11 22:56:44 215

原创 spring4.x读书笔记

spring4.x新特性 泛型依赖注入 springel表达式等,spring的两大核心概念 ioc 和 aop (1)ioc:首先为什么会出现ioc 它解决了什么样的问题 ,追溯到定义与实现分离 :由接口——〉工厂——〉ioc 主要分离了业务代码和功能代码的实现,将bean之间的关联从实现统一接口 到 从工厂批量生产bean 再到所有bean直接与容器发生关系,从而解决bean之间的依赖

2016-07-10 21:05:45 534

原创 object-c 学习笔记四

object-c中这个@interface 肯定会让许多 java

2014-08-21 07:42:43 368

原创 object-c 学习总结3

经过几天的休整,由于最近项目比较紧,所以有点忽略了object

2014-08-18 23:18:19 351

原创 object-c 学习总结2

整理一下si,再总结一部分

2014-08-14 00:09:38 295

原创 object-c 学习 知识点总结

想来也学习编程好长时间了,写博客确实sh

2014-08-13 21:40:42 499

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除