自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

攻城狮Luke

Java技术专家,同名公众号【攻城狮Luke】

  • 博客(20)
  • 资源 (34)
  • 收藏
  • 关注

原创 张老师:java读写锁

简介 ReadWriteLock(读写锁),为我们提供了在某些并发访问场景的操作更加高效,读写锁的目标就是可以同时多个线程并发执行读操作,写操作等待,当写操作获得执行时,所有其他线程的读操作和写操作都将等待。总结就是:读读不互斥,读写互斥,写写互斥,写读互斥。例子import java.util.HashMap;import java.util.Map;import java.ut

2016-03-31 17:27:39 441

转载 Java内存模型总结

Java的并发采用的是共享内存模型(而非消息传递模型),线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信。多个线程之间是不能直接传递数据交互的,它们之间的交互只能通过共享变量来实现同步是显式进行的。程序员必须显式指定某个方法或某段代码需要在线程之间互斥执行。1、多线程通信1.1 内存模型Java线程之间的通信由

2016-03-31 12:06:48 427

转载 高可用&负载均衡常用架构

下面总结一下常用的高可用复杂均衡架构模式。1. 客户端切换。客户端配置多个服务器地址。如果发生某个服务器无法访问或者使用异常,客户端就切换到其它服务器上。优点:简单,高效,可以在业务层面检测服务可用性缺点:需要提前配置。Mysql connect 这样做load balance 和failed over .在JDBC连接上可以

2016-03-30 14:18:07 1841

转载 Java Executors(线程池)

Sun在Java5中,对Java线程的类库做了大量的扩展,其中线程池就是Java5的新特征之一,除了线程池之外,还有很多多线程相关的内容,为多线程的编程带来了极大便利。为了编写高效稳定可靠的多线程程序,线程部分的新增内容显得尤为重要。   有关Java5线程新特征的内容全部在java.util.concurrent下面,里面包含数目众多的接口和类,熟悉这部分API特征是一项艰难的学习过程。

2016-03-29 10:57:43 396

转载 Java四种线程池的使用

Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行。

2016-03-29 10:54:15 341

原创 张老师:5.6.线程范围内共享技术

简介如上图,Connection必须是线程访问内共享,否则事务提交将出现错乱。线程内共享的意思就是每个线程拥有独立的一份数据,相互不干扰,如上图每个线程拥有独立的Connection。总结起来就是:线程内共享,线程外独立。示例1public class A { private ThreadLocal tlInteger = null; public

2016-03-29 09:11:31 363

原创 张老师:4.传统线程同步通讯技术

问题子线程循环10次,主线程循环100次,又子线程循环10次,主线程循环100次,如此循环50次,写出代码实现。 代码实现/** * 将线程需要同步的资源包装在一个类里面, * 不要由外层代码去控制资源同步,这样做的好处是易维护和高内聚。 * @author liujun */public class Busnice { /**是否是到子线程执行了*/ priva...

2016-03-28 10:51:18 472

转载 使用ThreadLocalRandom产生并发随机数

Java 7之前我们使用Math.random()产生随机数,使用原子变量来保存当前的种子,这样两个线程同时调用序列时得到的是伪随机数,而不是相同数量的两倍。ThreadLocalRandom是JDK 7之后提供并发产生随机数,能够解决多个线程发生的竞争争夺。ThreadLocalRandom不是直接用new实例化,而是第一次使用其静态方法current()。从Math.r

2016-03-23 09:34:18 2432

转载 DelayQueue 队列

DelayQueue----一种有序队列,特点就是只有在队列中的元素到期后才能取出。              1.内存中哪些对象到了超时时间,需要从内存中清除出去。              2.服务器连接中有哪些连接很长时间未操作,需要关闭这些连接              3.任务中有哪些到了执行时间,该进行调度了。简单的方法就是写一个线程不断去检查每

2016-03-22 10:01:38 1078

转载 应用多级缓存模式支撑海量读服务

缓存技术是一个老生常谈的问题,但是它也是解决性能问题的利器,一把瑞士军刀;而且在各种面试过程中或多或少会被问及一些缓存相关的问题,如缓存算法、热点数据与更新缓存、更新缓存与原子性、缓存崩溃与快速恢复等各种与缓存相关的问题。而这些问题中有些问题又是与场景相关,因此如何合理应用缓存来解决问题也是一个选择题。本文所有内容是跟读服务缓存相关,不会涉及写服务数据的缓存。本文也不考虑内容型应用前置的CDN架构

2016-03-21 17:16:11 839

原创 阻塞式线程安全列表

import java.util.concurrent.LinkedBlockingDeque;import java.util.concurrent.TimeUnit;public class Client implements Runnable { private LinkedBlockingDeque list; public Client(LinkedBlockingDe

2016-03-21 12:17:31 464

原创 非阻塞式线程安全列表

import java.util.concurrent.ConcurrentLinkedDeque;public class AddTask implements Runnable { private ConcurrentLinkedDeque list; public AddTask(ConcurrentLinkedDeque list) { this.list = list;

2016-03-21 12:12:19 483

原创 java同步代码块和同步方法的区别

2016-03-17 11:01:51 1463

转载 简单介绍Java中Comparable和Comparator

Comparable 和 Comparator是Java核心API提供的两个接口,从它们的名字中,我们大致可以猜到它们用来做对象之间的比较的。但它们到底怎么用,它们之间有又哪些差别呢?下面有两个例子可以很好的回答这个问题。下面的例子用来比较HDTV的大小。看完下面的代码,相信对于如何使用Comparable和Comparator会有一个更加清晰的认识。Comparable一个实现了

2016-03-16 09:57:02 532

转载 Java获取来访者IP

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或192.168.1.110,而并不是客户端的真实IP。  经过代理以

2016-03-16 09:18:27 869

转载 公司请你来干嘛?

公司请你来做什么?    1、请你来是解决问题而不是制造问题    2、如果你不能发现问题或解决不了问题,你本人就是一个问题    3、你能解决多大的问题,你就坐多高的位子    4、你能解决多少问题,你就能拿多少薪水    5、让解决问题的人高升,让制造问题的人让位,让抱怨问题的人下课    问题就是你的机会    公司的问题:就是你改善的

2016-03-15 15:44:27 812

转载 java书籍推荐

个人认为看书有两点好处:能出版出来的书一定是经过反复的思考、雕琢和审核的,因此从专业性的角度来说,一本好书的价值远超其他资料对着书上的代码自己敲的时候方便“看完书之后再次提升自我的最好途径是看一些相关的好博文“,我个人认为这是学习的第二步,因为一本书往往有好几百页,好的博文是自己看书学习之后的一些总结和提炼,对于梳理学习的内容很有好处,当然这里不是说自己的学习方法,就不再扯下去了。

2016-03-14 09:07:42 727

转载 Linux Screen 超简单用法

场景:ssh 连接到远程服务器上,临时开一个 Jetty 的 HTTP 服务,但是 PUTTY 没多久就自己 inactive 了,很不方便。想找个方法让程序一直运行在后台,想关闭的时候再连一次 PUTTY 去关。查了一下用 screen 可以很方便的进行这个操作,有点像虚拟屏幕的管理。用法:非常简单,只要在原始的命令之前加上 screen 即可:$screen java

2016-03-13 18:08:16 897

转载 Tomcat配置https及访问http自动跳转至https

https介绍:   HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据

2016-03-08 17:32:12 2101

转载 Tomcat配置SSL(单向认证)

注:本文只说明单向认证,这里设置为false单向认证:客户端向服务器发送消息,服务器接到消息后,用服务器端的密钥库中的私钥对数据进行加密,然后把加密后的数据和服务器端的公钥一起发送到 客户端,客户端用服务器发送来的公钥对数据解密,然后在用传到客户端的服务器公钥对数据加密传给服务器端,服务器用私钥对数据进行解密,这就完成了客户端 和服务器之间通信的安全问题,但是单向认证没有验证客户端的合法性

2016-03-08 14:45:36 458

2018新版postman

Postman能很方便请求get、post等等各种请求,特别是post请求,不能直接放到网页上显示,而使用工具就能很方便看到返回的数据

2018-11-30

nginx-1.8.0.tar.gz

高性能Web服务器,2015最新版,官方版

2015-10-30

Hibernate4.2API.chm

Hibernate4.2API.chm,官方文档,chm格式,非常方便

2015-10-14

jquery.scrollLoading.js

jquery.scrollLoading.js实现图片延迟加载

2015-07-20

Android实现多点触控自由伸缩

博客:http://blog.csdn.net/u010739551/article/details/45876063

2015-05-20

Gradle in Action

Gradle in Action,全面细致地介绍了Gradle,是学习Gradle最好的书籍

2015-04-05

gradle官方文档

gradle官方文档,2015年最新版,详细介绍gradle非常好的书籍,

2015-04-05

仿微信群聊组合头像

仿微信群聊组合头像,2015年最新版(企业版)

2015-04-02

TCP-IP详解卷3:TCP事务协议,HTTP,NNTP和UNIX域协议.pdf

TCP-IP详解卷3:TCP事务协议,HTTP,NNTP和UNIX域协议.pdf

2015-02-11

Genymotion-ARM-Translation.zip

Genymotion-ARM-Translation.zip,解决Genymotion无法运行程序问题,2015年官方最新版

2015-01-30

仿QQ空间底部导航栏动画效果

2015年最新企业级,仿QQ空间底部导航栏动画效果

2015-01-27

仿微信语音输入

2015年最新版,Android仿微信语音输入

2015-01-27

HTML5参考文档(2014年最新版)

HTML5参考文档(2014年最新版),最全最新的HTML5参考文档,企业版HTML5参考文档,W3CShool的

2014-09-15

PackageManager实例

PackageManager实例,内容包含ApplicationInfo、PackageInfo、ResolveInfo、ActivityInfo的实例

2014-09-11

MD5加密例子

MD5加密算法,MD5加密,匹配实例,MD5加密算法,MD5加密,匹配实例。

2014-09-07

Fragment嵌套ViewPager

Fragment嵌套ViewPager,实现底部菜单导航,加上嵌套ViewPager实现Fragment嵌套多个Fragment效果

2014-08-27

AIDL进程间传输复杂数据(2014年企业版)

经典企业级AIDL进程间传输复杂数据的例子

2014-08-04

AIDL最佳实践例子(2014年)

AIDL最佳实践例子(2014年),2014年最新版

2014-08-02

2014最新版Android企业级文件上传功能

2014最新版年Android企业级文件上传功能,内部含有文档注释说明,让你轻松掌握Andorid文件上传功能

2014-07-03

最新版Mac OS X操作系统镜像安装文件

最新版Mac OS X操作系统镜像安装文件,是4G文件InstallESD.iso镜像文件的下载种子,2014年最新版

2014-06-16

Android多线程断点续传下载(2014企业版)

Android多线程断点续传下载(2014企业版),企业商业软件开发用到的Demo

2014-05-25

Android对Zip文件的加压和解压

最新版非常好的Andorid解压和加压zip文件的企业级Demo,用人格保证不仅能用,而且最好用,积分值10分,你可以嫌它贵,但你千万别后悔,你将错过学习Android加压、解压zip最好的资料!

2014-05-24

TTSDemo实例代码

TTSDemo实例代码,很好的TextToSpeech的Demo代码

2014-05-24

Android反编译工具包(2014最新版)

Android反编译工具包(2014最新版),里面的工具是2014年最新版的,反编译更全面,更容易

2014-05-18

深入理解Android卷一

深入剖析Andorid源码!!深入理解Android,非常好的Android工具书

2014-05-07

Android 仿 窗帘效果 和 登录界面拖动效果 (Scroller类的应用

Android 仿 窗帘效果 和 登录界面拖动效果

2014-05-07

Android微信源代码

微信Andorid客户端源码、界面效果非常好!!!

2014-05-07

Android项目源码(手机安全卫士)

手机安全卫士开发案例解析(源码),手机安全卫士开发案例解析(源码)

2014-04-07

空空如也

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

TA关注的人

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