自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (110)
  • 问答 (1)
  • 收藏
  • 关注

原创 java 位运算

[size=medium] java 中运算效率最快的算是位运算了,所以我们可以在程序中适当的运用位运算来加快效率。 位运算,实际是 将人类看的懂的十进制先转为 2进制,之后进行位运算。 包含 无符号和有符号。这里简单说下 无符号 位运算,以HashMap 源码中,hash值的计算为例进行分析。[/size] [code="java"] sta...

2014-09-30 14:41:54 105

原创 并发模式下的单例创建

[size=medium]单例模式的创建 分为很多种,这里就不一一列举,这里简单分析一下单例模式的效率和线程安全性。 传统的单例模式是[/size] [code="java"] package thread;public class SingletoDemo { public static SingletoDemo instance = null; ...

2014-09-29 16:20:20 104

原创 深入Java集合学习系列:ArrayList的实现原理

深入Java集合学习系列:ArrayList的实现原理转摘自:[url]http://zhangshixi.iteye.com/blog/674856[/url][size=medium]1. ArrayList概述:[/size] [size=medium] ArrayList是List接口的可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现...

2014-09-25 17:52:26 156

原创 java 虚拟机线程与操作系统内核线程之间的关系

java jdk 中 线程操作与虚拟机中线程操作之间的关系映射 在多cpu处理器中,一个cpu 可以映射多个 KLT指令集,一个KLT 又可以映射多个轻量级线程LWP,这里的 cpu KLT LWP 都是系统级的成员,一个轻量级线程 又对应着多个用户线程。 线程的实现方式可以有多种 1 内核线程实现 直接由操作系统内核支持的线程,内核通过操纵调度器来吧任...

2014-09-23 15:13:40 629

原创 将博客搬至CSDN

将博客搬至CSDN

2014-09-22 12:00:57 146

原创 所谓高手程序员犯下的错误

看下面一段代码,这是一个网上程序员写下的一段代码,摘录而来,你能根据[url]http://annan211.iteye.com/blog/2118115[/url]来分析其出错的原因吗?[code="java"]package com.ccb.framework.enums;import java.util.Collections;import java....

2014-09-19 11:46:04 114

原创 java 类加载器与程序加载实例分析

java 类加载器 可以分为 根加载器 扩展加载器 应用加载器 用户自定义加载器(继承自 java.lang.ClassLoder) 查看一个类是被何种加载器 可以使用以下代码 [code="java"] public class ClassLoder { public static void main(String[] args) ...

2014-09-19 11:25:05 141

原创 java 自动拆箱的陷阱

先看代码[code="java"] public class IntegerDemo { public static void main(String[] args) { Integer a = 1; Integer b = 1; Integer c = 128; Integer d = 128; Integer.valueOf(a);...

2014-09-18 15:50:55 83

原创 java 数字与字节的转换(IP与字节的转换)

网络传输中,Java 采用字节形式,所以涉及到字节与其他数据类型的转换。本文以IP 为例进行讨论。先看代码本例 是,接收一个IP,转换为二进制数据传输,再转换为IP,IP-->Binary-->IP[code="java"]package com.mkyong.core; public class BitwiseExample { publi...

2014-09-18 14:55:54 1531

原创 java 语法糖 分析(一,泛型与类型擦除)

语法糖是一种计算机术语,是为了更加方便理解计算机语言或者说更便于编程而存在的,对编码的功能没有影响。 严格来说,几乎所有的人类编码,都算是语法糖的体现,只有计算机指令除外。 但是本文为了更好理解语法糖,站的角度略微不同。 在Java语言里,类型转换是无法预期的,有些时候 在编译期 编译器并不知道此类型转换能否成功,许多的转换异常 ClassCastException...

2014-09-18 11:14:46 121

原创 java CountDownLatch 实例

Java的concurrent包里面的CountDownLatch其实可以把它看作一个计数器,只不过这个计数器的操作是原子操作,同时只能有一个线程去操作这个计数器,也就是同时只能有一个线程去减这个计数器里面的值。 你可以向CountDownLatch对象设置一个初始的数字作为计数值,任何调用这个对象上的await()方法都会阻塞,直到这个计数器的计数值被其他的线程减为0为止。 ...

2014-09-15 18:07:16 93

原创 java 多线程之 CyclicBarrier

CyclicBarrier (周期障碍)类可以帮助同步,它允许一组线程等待整个线程组到达公共屏障点。CyclicBarrier 是使用整型变量构造的,其确定组中的线程数。当一个线程到达屏障时(通过调用 CyclicBarrier.await()),它会被阻塞,直到所有线程都到达屏障,然后在该点允许所有线程继续执行。与CountDownLatch不同的是,CyclicBarrier 所有公共线程都到...

2014-09-13 19:25:09 99

原创 java CyclicBarrier 循环阻塞

java CyclicBarrier 循环阻塞

2014-09-12 22:43:31 117

原创 java 多线程的锁消除

Java 中使用同步 来保证数据的安全性,但是对于一些明显不会产生竞争的情况下,Jvm会根据现实执行情况对代码进行锁消除以提高执行效率。比如下面一段代码[code="java"] package thread;public class SynchronizedDemo { public void fuck(){ DataDemo demo = new Data...

2014-09-12 18:31:31 150

原创 java锁的种类以及辨析(一):自旋锁

[code="java"][/code]Java的多线程安全是基于Lock机制(或者隐式锁synchronized)实现的,而Lock的性能往往不如人意。原因是,monitorenter与monitorexit这两个控制多线程同步的bytecode原语,是JVM依赖操作系统互斥(mutex)来实现的。互斥是一种会导致线程挂起,并在较短的时间内又需要重新调度回原线程的,较为消耗资源的操作。...

2014-09-12 16:22:45 130

原创 Java锁的种类以及辨析

锁作为并发共享数据,保证一致性的工具,在java平台有多种实现(如 synchronized 和 ReentrantLock等等 ) 。这些已经写好提供的锁为我们开发提供了便利,但是锁的具体性质以及类型却很少被提及。本系列文章将分析Java中常见的锁以及其特性,为大家答疑解惑。1、自旋锁2、自旋锁的其他种类3、阻塞锁4、可重入锁5、读写锁6、互斥...

2014-09-12 15:15:19 127

原创 java Semaphore 信号量详解和实例

生产者线程用于往链表里添加节点,数个工作线程从链表取出节点并处理。对于一般的mutex_lock,mutex_unlock方式,如果这一段时间没有工作,那么工作线程将会不停的调用lock,unlock操作。而这样的操作毫无疑义。在这里系统给我们提供了另外一种同步机制,信号灯,Semaphore。Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证...

2014-09-12 11:51:28 264

原创 当我们做设计写代码的时候,如果我们多花一些时间去思考一下,我们就可以少一些代码...

当我们做设计写代码的时候,如果我们多花一些时间去思考一下,我们就可以少一些代码(参看“多一些时间少一些代码”)。如果我们在一开始多思考一下,不要急着马上去用迭代的方式认识世界,多思考一下怎么把复杂的东西解藕,把复杂的东西简化,怎么做出一个优雅的设计,怎么让我们的程序少一些tricky的东西,怎么让我们的程序变得更简洁,更清楚,更直,在一开始思考一下未来需求可能的变化,未来软件需要怎么测试,未来的系...

2014-09-12 11:19:30 164

原创 java 动态代理实例

[code="java"]package dynamic;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;public class DynamicProxy { interface IHello{...

2014-09-11 19:06:15 117

原创 Java 读写锁demo

java 读写锁 原理 和 实例[code="java"]package thread;import java.util.ArrayList;import java.util.List;import java.util.Random;import java.util.concurrent.locks.ReentrantReadWriteLock;public cla...

2014-09-11 15:27:55 306

原创 java 缓存原理 与 实例

java 缓存原理 与 实例原理就很简单了,每次需要数据的时候,先去Map 里面看看有没有,有的话就拿出来,没有的话就去数据库找或者构造一个实例,避免了系统额外的开销。伪代码下面这段代码是借鉴别人的,基本原理和过程就是这样。下面代码的解读是 构造一个 线程安全的 ConcurrentHashMap,get方法 每次去拿数据,拿得到的话 就直接返回,如果拿不到 我先把对象锁上(这...

2014-09-11 11:13:56 100

原创 java 语言的静态多分派和动态单分派 的特性

[code="java"][/code]Java 语言的静态多分派和动态单分派特性。先来熟悉概念: 静态多分派: 静态分派 意思是 所有依赖静态类型来定位方法执行版本的分派过程就叫做静态分派,静态分派最典型的应用就是方法重载。 动态单分派: 动态单分派 意思是 根据运行期实际类型确定方法执行版本的分派过程叫做动态分派,动态分派最典型的应用就是方法重写。...

2014-09-10 18:23:43 217

原创 字节码验证 的高度对jvm的优化

程序员对虚拟机的优化大多集中在堆栈的分配以及和内存大小的调节的层面上,在这个层面上的调节也是jvm影响最大的部分。但是我们仍然可以从比较细的层面上对jvm进一步优化。 稍微进一步,是对 方法区,Java虚拟机栈,本地方法栈,堆,甚至程序计数器方面进行点滴的优化。 再小一点,我们先来理解一个概念。 在虚拟机执行子系统中存在一个类加载过程,这个过程包含加载、验证、准备、解析、和初始化,当然...

2014-09-09 16:08:18 326

原创 接口与类的真正区别

接口与类不存在区别,除了字面修饰符不同外,其真正区别是: 当一个类在初始化时,编译器要求其父类全部都已经初始化;在一个接口初始化时,并不要求其所有的父类接口都实现初始化,只有在真正使用到父类接口的时候,才会去初始化。...

2014-09-09 14:50:16 98

原创 jvm 初始化static 变量的类顺序

[code="java"] class Nolization{ static{ System.out.println("Nolization init"); } public static int value = 123;} class Contant extends Nolization{ static{ System.out.println...

2014-09-09 14:42:34 249

原创 java static 类型变量定义技巧

[code="java"] java 变量的定义非常重要,在一定程度上可以减轻服务器压力,提升服务器响应速度。 今天以简单的static 标识符入手。 Java 规范中 定义的static 标识符,这里简单点分析,修饰变量时分为 全局静态变量和局部静态变量,修饰类的时候 ,也可以分为 静态类和内部静态类。这里不再赘述。 变量的定义,直到虚拟机解析的时候才真正具有现实意义,所以...

2014-09-05 18:33:31 207

原创 eclipse 启动参数配置

参数见附件

2014-09-05 16:44:18 127

原创 too many open files 异常

每个Socket 连接都有 Receive 和 send 两个缓冲区,分别占大粤 37KB 和 25KB 的内存,连接多的话这块内存占用也比较客观。如果无法分配,则可能会抛出 IOException:Too many open files 异常。...

2014-09-05 14:08:16 100

原创 高性能硬件上的程序部署策略

[code="java"] 一个15万pv、天左右的在线文档类型网站最近更换了硬件系统,新的硬件为4个cpu,16GB物理内存,操作系统为 64位的 CentOS 5.4 ,Resin作为服务器。 管理员选用了 64位的 jdk 1.5,通过-Xmx,-Xms 将堆固定在12GB,使用一段时间后,出现了卡B现象,长时间无响应。 监控发现卡B是由于GC停顿导致的。虚拟机运行在Ser...

2014-09-04 18:12:30 191

原创 jsp 页面 查看线程堆栈状况

jsp 页面 查看线程堆栈信息状况 具体见 附件

2014-09-04 15:53:47 186

原创 jvm 本地方法栈(native Method stacks) 基本概念

Java 虚拟机 运行时数据区域 一般可区分为 :方法区,堆,Java虚拟机栈,本地方法栈和程序计数器。 其中Java虚拟机栈 为虚拟机执行Java 方法服务,本地方法栈是为虚拟机使用道德native方法服务的。 根据不同的虚拟机厂商的实现方式,对本地方法栈的定义也不相同,比如sun 默认的虚拟机hotSpot 就直接把 本地方法栈和 虚拟机栈合二为一。...

2014-09-03 15:38:16 264

原创 jvm 栈 基本概念

java 程序员 通常把java程序运行时的内存 分为 堆内存和栈内存,其实这是一种非常粗糙的分类方式。java 虚拟机 将字节码文件编译为 机器码的时候,在执行具体方法的同时,会创建一种栈帧,叫 java 虚拟机栈帧,用于存储局部变量表,操作栈,动态连接,方法出口等信息。而普通程序员所说的 栈内存 就是指本处的 帧栈里面的 局部变量表。局部变量表存放了编译期可知的8种基本数据类型(64位...

2014-09-03 15:10:28 269

原创 4个线程,2个每次加1,两个每次减1

[code="java"]package threadTest;public class MultiThreadShareDemo { public static void main(String[] args) throws Exception { Data data = new Data(); Plus p = new Plus(data); Cu...

2014-09-01 23:44:21 149

Java-Jimmy Qing.docx

Java-Jimmy Qing.docx

2024-01-16

CV-Jimmy Qing.pptx

CV-Jimmy Qing.pptx

2024-01-16

CV-Jimmy Qing.docx

CV-Jimmy Qing.docx

2024-01-16

Candidate - Jimmy Qing.pptx

Candidate - Jimmy Qing.pptx

2024-01-16

db2驱动包 db2jcc4.jar db2jcc4.jar db2java.jar db2jcc-javax.jar db2j

db2驱动包 db2jcc4.jar db2jcc4.jar db2java.jar db2jcc_javax.jar db2jcc_license_cisuz.jar db2jcc_license_cu.jar db2policy.jar,压缩包无加密,可以放心下载,良心资源。

2023-05-25

prometheus monitor 是什么

prometheus monitor 是什么

2023-04-03

ELKB touch 是什么

ELKB touch 是什么

2023-04-03

postman 测试11111

postman 测试11111

2023-02-09

微软认证 微软认证 微软认证

微软认证 微软认证微软认证

2022-05-16

Chrome vimium 插件 chrome 浏览器实现上下左右键盘操作

Chrome vimium 插件 1.66版本,拖进去就用,中国人不骗中国人

2022-05-13

英语口语练习 , 英语口语2000句

英语口语练习 , 英语口语2000句,别的网站需要几十到几百,这里几乎免费。

2022-05-06

PDF 拆分工具包,可指定每页拆分数量

PDF 拆分工具包,可指定每页拆分数量,只需要三个参数,1 是源文档 2 是原文档总页数 3 是拆分多少页生成一个新的文档

2022-01-26

AZ900 中文翻译 英文对照版本

AZ900 中文翻译 英文对照版本,因原PDF 存在少数截图情况,不好翻译,但是这部分都是很简单的试题。

2022-01-25

AZ 900 英文原版,有答案和解释

2021年7月份版本,相当新,有答案有注解有答案说明,非常好,本人正在做中文版的翻译,等到OK了,欢迎下载。

2022-01-24

sqlserver connection issue fix.txt

32位和64位 java6 连接sqlserver2012或者2016 出现 Caused by: javax.net.ssl.SSLHandshakeException: Unsupported curveId: 29  以及 DH key size must be multiple of 64, and can only range from 512 to 1024 以及其他问题

2021-12-05

naimigaite.rar

naimigaite.rar

2021-03-29

data-migration-tool.rar

data-migration-tool.rar

2021-03-29

cert 证书样例测试测试好

cert 证书实例

2019-08-27

paho mqtt MQ

The Eclipse Paho project provides open-source client implementations of MQTT and MQTT-SN messaging protocols aimed at new, existing, and emerging applications for the Internet of Things (IoT).

2019-02-19

rowset_jdbc.jar

rowset_jdbc.jar

2017-01-06

java 反编译工具 jd-gui

java 反编译工具 jd-gui

2017-01-06

sysbench-0.4.12.tar.gz

mysql 测试工具 sysbench 0.4.12 版本

2016-12-15

mysql性能测试工具

mysql 性能测试工具sysbench 0.4.12.10版本

2016-12-15

MySQL-python-1.2.5.zip

MySQL-python-1.2.5.zip

2016-12-12

JacksonJAR

JacksonJAR

2016-03-06

sysbench-0.5.tar.gz

sysbench-0.5.tar.gz

2015-06-15

android 版本更新 精简版

android 版本更新 简单易用

2015-05-14

android 版本更新 简单易用

android 版本更新 简单易用

2015-05-14

androidMenu

android menu菜单 option button

2015-05-12

cas3.5.2单点登录文档详细配置

cas3.5.2单点登录文档详细配置

2015-03-17

conquer_1.5

Conquer-Responsive Admin Dashboard Template build with Twitter Bootstrap 3.0 5 种颜色可选,过百个模板页面,65个JQuery插件,包括图表、表格、地图、消息中心、监控面板等后台管理项目所需的各种组件,完美兼容IE8等各种浏览器。手机,平板,电脑等等,都可以用,自动适应屏幕! 演示地址: http://www.keenthemes.com/preview/index.php?theme=conquer 另外推荐Metronic V1.5.4模版: http://download.csdn.net/detail/lmw136329859/6591781

2015-03-16

jvm虚拟机规范和入门资料

jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料jvm虚拟机规范和入门资料

2014-09-17

深入java虚拟机

深入jvm

2014-09-03

深入理解Java虚拟机

深入理解Java虚拟机

2014-09-03

Python3程序开发指南.第二版

Python3程序开发指南.第二版

2014-08-29

Spring技术内幕:深入解析Spring架构与设计原理 第2版

Spring技术内幕:深入解析Spring架构与设计原理 第2版

2014-08-29

深入Java多线程和并发编程

深入Java多线程和并发编程

2014-08-25

高性能高并发服务器架构1.pdf

高性能高并发服务器架构1.pdf

2014-08-25

j2ee核心模式第二版

j2ee核心模式第二版

2014-08-15

highstock 绘制K线图

highstock 绘制K线图 拿别人的 但是功能确实强大,值得学习,谢谢作者贡献。 highstock 绘制K线图 highstock 绘制K线图

2014-07-11

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

TA关注的人

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