- 博客(19)
- 资源 (52)
- 论坛 (10)
- 收藏
- 关注
转载 深入学习Java内存模型JMM
【1】JMM简介① JMMJava内存模型简称JMM(Java Memory Model),是Java虚拟机所定义的一种抽象规范,用来屏蔽不同硬件和操作系统的内存访问差异,让java程序在各种平台下都能达到一致的内存访问效果。② 主内存(Main Memory)主内存可以简单理解为计算机当中的内存(一部分),但又不完全等同。主内存被所有的线程所共享,对于一个共享变量(比如静态变量,或是堆...
2018-12-28 12:22:10
763
原创 查看java文件汇编代码与字节码
【1】命令与虚拟机参数ThreadDemo源码如下:class ThreadDemo implements Runnable{ // 这里,使用volatile修饰flag private volatile boolean flag = false; @Override public void run() { try { ...
2018-12-28 11:07:07
1892
转载 多线程并发之volatile的底层实现原理
上篇博文从内存可见性看Volatile、原子变量和CAS算法提到了volatile保证内存可见性和CAS算法。本篇博文着重学习volatile的底层实现原理。【1】回顾volatilevolatile相当于是轻量级的synchronized。如果一个变量使用volatile,则它比使用synchronized的成本更加低,因为它不会引起线程上下文的切换和调度。通俗点讲就是说一个变量如果用vo...
2018-12-28 10:29:53
2520
原创 多线程并发之CyclicBarrier(栅栏)使用详解
【1】CyclicBarrier简介CyclicBarrier,是JDK1.5的java.util.concurrent并发包中提供的一个并发工具类。翻译为中文为“篱栅”意思,也就是栅栏。① JavadocCyclicBarrier是一个同步辅助类,它允许一组线程相互等待直到所有线程都到达一个公共的屏障点。CyclicBarrier在涉及一定大小的线程的程序而这些线程有时必须彼此等待的情况下...
2018-12-26 14:44:09
3790
原创 JDK各个版本发布时间和版本名称
版本名称发行日期JDK 1.0Oak(橡树)1996-01-23JDK 1.11997-02-19JDK 1.1.4Sparkler(宝石)1997-09-12JDK 1.1.5Pumpkin(南瓜)1997-12-13JDK 1.1.6Abigail(阿比盖尔–女子名)1998-04-24JDK 1.1.7Brutus(布...
2018-12-26 11:12:38
30781
2
原创 JavaSE中注解(Annotation)详细介绍与实例
【1】注解相关概念① 基本概念Java 注解用于为 Java 代码提供元数据。作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的。Java 注解是从 Java5 开始添加到 Java 的。那么什么是元数据?元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),或者说是用于提供某种资源的有关信息的结构数据(st...
2018-12-20 16:49:32
588
原创 JDK1.8新特性(三)使用详情
继JDK1.8新特性(一),JDK1.8新特性(二)后继续学习JDK1.8新特性。【7】Optional 类final修饰的Optional<T> 类(java.util.Optional) 是一个容器类,代表一个值存在或不存在,原来用null 表示一个值不存在,现在Optional 可以更好的表达这个概念。并且可以避免空指针异常。常用方法:Optional.of(T t)
2018-12-19 17:36:47
1031
原创 JDK1.5,1.6,1.7,1.8,1.9,1.10,1.11的新特性整理
JDK1.5,1.6,1.7,1.8,1.9,1.10,1.11的新特性整理
2018-12-19 11:50:45
6662
1
原创 JDK1.8新特性(二)
继上篇博文JDK1.8新特性(一)后,继续学习。Java8中有两大最为重要的改变。第一个是Lambda 表达式;另外一个则是Stream API(java.util.stream.*)。Stream 是Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API 对集合数据进行操作,就类似于使用SQL 执行的数据...
2018-12-18 10:17:33
331
转载 MySQL调优-为什么老司机建议MySQL列属性尽量用 NOT NULL
本文测试环境:MySQL5.7,Engine=InnoDB,charset=utf8。【1】简解先看一段官方的话:很多表都包含可为null(空值)的列,即使应用程序并不需要保存null也是如此,这是因为可为null是列的默认属性。通常情况下最好指定为Not null,除非真的需要存储null值。如果查询中包含可为null的列,对MySQL来说更难优化,因为可为null的列使得索引、索引统计和...
2018-12-12 21:03:29
2394
原创 JDK1.8新特性(一)
【1】底层数据结构改变jdk1.8 中对集合的底层结构做了调整。如HashMap从1.7的数据+链表的形式调整为数据+链表+红黑树。ConcurrentHashMap从分段机制+数组+链表+红黑树到CAS+数组+链表+红黑树。这里先简要记录,后续会详解Map的原理与区别。【2】JVM内存调整jdk1.8中去掉了方法去(永久代),使用元空间(MetaSpace)代替,后者使用直接内存(物...
2018-12-12 17:11:50
2718
原创 数据库事务中调度串行化、冲突可串行化、前趋图(优先图)
延续上篇博文一文读懂Spring事务和MySQL事务与锁我们继续学习。通常数据库事务是并发执行的(如果你的数据库隔离级别非serializable)),但是这里需要注意两点:必须保证事务并发执行的正确性;必须用正确的方法调度执行事务的并发操作;这里就引入了一个概念:调度。【1】调度① 调度定义多个事务的读写操作按时间排序的执行序列:T1:r1(A)w1(A)r1(B)w1(B)...
2018-12-10 21:35:49
20996
2
转载 Java面向对象设计七大原则
【1】概述① 单一职责原则(Single Responsibility Principle)每一个类应该专注于做一件事情。② 里氏替换原则(Liskov Substitution Principle)超类存在的地方,子类是可以替换的。③ 依赖倒置原则(Dependence Inversion Principle)实现尽量依赖抽象,不依赖具体实现。④ 接口隔离原则(Interface ...
2018-12-09 18:29:21
670
原创 解决stackoverflow打开慢不能注册登录
这里使用的时火狐浏览器(Firefox),chrome暂未找到解决办法。① 安装Firefox浏览器② Firefox浏览器访问https://addons.mozilla.org/zh-CN/firefox/addon/decentraleyes/③ 添加插件Decentraleyes...
2018-12-07 10:45:57
295
原创 队列同步器AQS-AbstractQueuedSynchronizer 原理分析
【1】AQS 简单介绍AQS的全称为(AbstractQueuedSynchronizer),这个类在java.util.concurrent.locks包下面。其是AbstractOwnableSynchronizer的子类:AQS是一个用来构建锁和同步器的框架,使用AQS能简单且高效地构造出应用广泛的大量的同步器,比如我们提到的ReentrantLock,Semaphore,其他的诸...
2018-12-06 11:12:15
1052
转载 JUC 中的 Atomic 原子类总结
继该篇博文从内存可见性看Volatile、原子变量和CAS算法后继续学习JUC中的原子类。【1】原子类概述Atomic 翻译成中文是原子的意思。在化学上,我们知道原子是构成一般物质的最小单位,在化学反应中是不可分割的。在我们这里 Atomic 是指一个操作是不可中断的。即使是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰。所以,所谓原子类说简单点就是具有原子/原子操作特征的...
2018-12-05 16:42:57
1441
原创 细究Java类加载机制和Tomcat类加载机制
【1】概述与分类类加载器主要分为两类,一类是 JDK 默认提供的,一类是用户自定义的。① JDK 默认提供三种类加载器Bootstrap ClassLoader 启动类加载器:每次执行 java 命令时都会使用该加载器为虚拟机加载核心类。该加载器是由 native code 实现,而不是 Java 代码,加载类的路径为 <JAVA_HOME&
2018-12-05 14:34:06
703
原创 Hibernate5中实体映射命名策略
对象模型到关系数据库的映射的一部分是将对象模型中的名称映射到相应的数据库名称。Hibernate将此视为2阶段过程:第一阶段是从域模型映射中确定正确的逻辑名称。逻辑名可以由用户显式指定(使用@Column或 @Table例如),也可以由Hibernate通过ImplicitNamingStrategy契约隐式确定 。其次是将此逻辑名解析为PhysicalNamingStrategy合约定义...
2018-12-04 16:11:38
3597
原创 细琢磨,try catch finally 执行顺序与返回值
try catch finally 常见格式如下:try{//应用代码}catch(Exception e){//异常捕捉处理}finally{//资源释放、流关闭等等}通常执行顺序:try有异常时,try-catcy-finallytry无异常时,try-finally那么如果有返回值呢?try catch finally 每个部分均有return语句呢...
2018-12-01 09:58:34
1126
ApacheCXFWebServiceDevelopment.pdf
2036-04-08
SpringBoot整合Dubbo和Zookeeper升级版
2018-11-09
SpringBoot+thymeleaf+UEditor+不修改上传路径.zip
2020-02-04
PHP课程设计图书管理系统、学生成绩管理系统、学生宿舍管理系统
2020-11-27
XP系统下的FileZilla客户端和服务端
2016-12-22
Netty权威指南 第2版 带书签目录 高清完整版.pdf
2018-11-20
webservice基于JDK演示service与client以及所需jar
2017-11-02
hibernate-validator-5.0.0.CR2-dist.zip
2016-08-14
DubboOPS项目和管理后台jar包
2018-11-07
Struts2Spring4Hibernate4整合
2018-11-07
[谷粉分享]尚硅谷Hadoop生态大数据系列
2018-08-10
流烟默的留言板
发表于 2020-01-02 最后回复 2020-04-17
字符串对象和常量池的头疼问题,求大神赐教!!!!
发表于 2018-09-03 最后回复 2020-01-04
【CSDN官方】编辑博客,图片最近经常上传失败,很让人郁闷!!!
发表于 2018-05-10 最后回复 2019-09-24
【CSDN出大BUG了】个人分类和专栏合并就合并吧,为什么都不显示了?
发表于 2019-08-26 最后回复 2019-08-27
上传资源不小心留了自己QQ号,麻烦帮我删除
发表于 2019-01-21 最后回复 2019-01-21
【】CSDN博客】-大白模板-失效,文章列表与个人资料显示与博客设置不一致!!!
发表于 2018-09-01 最后回复 2018-09-06
SprintBoot2.0注册自定义Filter同一个请求被拦截两次
发表于 2018-08-08 最后回复 2018-08-09
Spring Cloud Eureka单机环境下,为什么容易触发自我保护模式?
发表于 2018-07-23 最后回复 2018-07-26
我就想问问,控制台异常输出和debug视图的读取顺序
发表于 2017-02-21 最后回复 2017-03-28
求大神帮忙 怎样将二叉树输出 明天急用 我的源代码输出的不对
发表于 2012-05-24 最后回复 2016-08-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝