
Java
文章平均质量分 69
vba_2001
暂时不知道写什么
展开
-
Twitter的分布式自增ID算法Snowflake实现分析及其Java、Php和Python版
在分布式系统中,需要生成全局UID的场合还是比较多的,twitter的snowflake解决了这种需求,实现也还是很简单的,除去配置信息,核心代码就是毫秒级时间41位+机器ID 10位+毫秒内序列12位。该项目地址为:https://github.com/twitter/snowflake是用Scala实现的。python版详见开源项目https://github.com/eran转载 2014-09-05 21:48:03 · 2654 阅读 · 0 评论 -
mybatis select语句缓存使用注意事项
工作中遇到一个select语句缓存问题(可提交读隔离级别下select语句没有读取到其它事物更新后的结果),场景如下:数据库:mysqlUser表结构: 隔离级别:read committed(可提交读)Mapper文件: 代码如下: 执行结果: 问题:虽然我们把mysql隔离级别设置为read com转载 2014-09-05 10:57:03 · 2270 阅读 · 0 评论 -
Java 8:HashMap的性能提升
HashMap是一个高效通用的数据结构,它在每一个Java程序中都随处可见。先来介绍些基础知识。你可能也知道,HashMap使用key的hashCode()和equals()方法来将值划分到不同的桶里。桶的数量通常要比map中的记录的数量要稍大,这样每个桶包括的值会比较少(最好是一个)。当通过key进行查找时,我们可以在常数时间内迅速定位到某个桶(使用hashCode()对桶的数量进行取模)以及要转载 2014-04-25 11:14:00 · 625 阅读 · 0 评论 -
JAVA JNI的基本总结一箩筐
JNI的基本原理** 在Java中调用C库函数开发流程------在Java代码中通过JNI调用C函数的步骤如下:第一步: 编写Java代码第二步: 编译Java代码第三步: 生成C语言头文件第四步: 编写C代码第五步: 生成C共享库第六步: 运行Java程序*** 第一步 编写Java代码JNI方法是在Java代码中声明的。在Java类中,使用转载 2014-04-24 11:31:02 · 996 阅读 · 0 评论 -
Spring中@Autowired注解、@Resource注解的区别
转载地址:http://www.chinasb.org/archives/2011/06/2443.shtmlSpring不但支持自己定义的@Autowired注解,还支持几个由JSR-250规范定义的注解,它们分别是@Resource、@PostConstruct以及@PreDestroy。 @Resource的作用相当于@Autowired,只不过@Autowired按byTyp转载 2012-07-20 12:19:30 · 644 阅读 · 0 评论 -
Singleton模式与双检测锁定(DCL)
转载地址:http://www.blogjava.net/zellux/archive/2008/04/07/191365.html该篇文章讲叙传说中认为能够解决高并发带来的单例锁的double check lock由来以及问题.我现今实现的方法见一个单例模式看OOP教材时,提到了一个双检测锁定(Double-Checked Lock, DCL)的问题,但是书上没有多介绍,只是原创 2012-07-20 11:59:49 · 620 阅读 · 0 评论 -
缓存系统MemCached的Java客户端优化历程
转载地址:http://www.infoq.com/cn/articles/memcached-javaMemcached 是什么?Memcached是一种集中式Cache,支持分布式横向扩展。这里需要解释说明一下,很多开发者觉得Memcached是一种分布式缓存系统,但是其实Memcached服务端本身是单实例的,只是在客户端实现过程中可以根据存储的主键做分区存储,而这个区就是Memca转载 2012-07-12 18:13:17 · 504 阅读 · 0 评论 -
GC的类型以及对应日志的解释
转载地址:http://wangscu.iteye.com/blog/603347 在大型的java运用中,要进行程序调优,指定一个合适的垃圾回收机制是必不可少的,那如何可确定某gc是否使得程序最优化呢?我们可以查看jvm打印出 的gc日志来分析,并做出进一步优化,而目前并没有一篇文章明确的指明java中各种gc算法打印出日志的格式,以及如何阅读。所以接下来本文将试着边介 绍各种转载 2012-07-12 18:01:24 · 987 阅读 · 0 评论 -
介绍Java GC种类,并更换 调优GC
转载地址:http://blog.csdn.net/roland101/article/details/2203461 调整JVM GC(Garbage Collection),可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当转载 2012-07-12 17:54:11 · 513 阅读 · 0 评论 -
JDK NEW TOOLS——jps、jinfo、jstat、jmap、jconsole
转载地址:http://blog.csdn.net/roland101/article/details/2188585最近压力测试和调优Liferay portal,所以需要找到一种工具,可以比较好的监测VM工具。本来想使用商用工具,但偶然间发现SUN 的JDK中新添了几个工具,并且非常好用。秉承着有免费,不用商用的原则。开始使用新的JDK工具,以下简单介绍一下这几种工具。(注:本文章下的所有转载 2012-07-12 17:53:36 · 475 阅读 · 0 评论 -
调优JVM内存,并解决OutOfMemoryError,StackOverflowError等异常问题
转载地址:http://blog.csdn.net/roland101/article/details/2197444 JVM 调优,首先应从内存开始,尤其是在真正的的web服务部署的时候。因为真正的web服务会比开发的时候花费更多的内存,用来处理多用户并发的情况。本人多次吃过这方面的亏,所以整理一下,希望能给别人以帮助。 这个年头变啦,内存变得如大白菜,每个新转载 2012-07-12 17:50:25 · 1424 阅读 · 0 评论 -
简单理解Java GC与幽灵引用
转载地址:http://developer.51cto.com/art/200906/128189.htmJava中一共有4种类型的引用:StrongReference、SoftReference、WeakReference以及PhantomReference (幽灵引用), 这 4 种类型的引用与Java GC有着密切的关系, 让我们逐一来看它们的定义和使用场景。1. Stron转载 2012-07-12 17:49:24 · 550 阅读 · 0 评论 -
java中垃圾回收机制(GC)
转载地址:http://idreamland.iteye.com/blog/244277在java语言中GC 即垃圾收集机制是指jvm用于释放那些不再使用的对象所占用的内存。java语言并不要求jvm有gc,也没有规定gc如何工作。不过常用的jvm都有gc,而且大多数gc都使用类似的算法管理内存和执行收集操作。 垃圾收集的目的在于清除不再使用的对象。gc通过确定对象转载 2012-07-12 17:40:57 · 917 阅读 · 0 评论 -
Linux下的Memcached安装与JAVA客户端连接Memcached
Linux下Memcache服务器端的安装memcached现在版本为1.4.13,可以去http://memcached.org/下载最新版本.因为memcached底层通信是有libevent实现的,所以还需要去下载它.下载地址为http://libevent.org/.也可以通过wget直接下载1.分别把memcached和libevent下载回来,放到 /tmp 目原创 2012-07-12 17:06:54 · 733 阅读 · 0 评论 -
Tomcat 常用优化和配置
转载地址:http://hi.baidu.com/lhbmqq/blog/item/9d8f49afd6741cf8faed506f.html1、JDK内存优化:Tomcat默认可以使用的内存为128MB,Windows下,在文件{tomcat_home}/bin/catalina.bat,Unix下,在文件{tomcat_home}/bin/catalina.sh的前面,增加如下设置转载 2012-07-09 02:39:40 · 413 阅读 · 0 评论 -
基于 HTTP 长连接的“服务器推”技术
转载地址:http://hi.baidu.com/widebright/item/0fad577cb16189376e29f6a8在这里看到了所谓的“服务器推“技术CSDN和《程序员》杂志主办的连续第四届SD2.0(软件开发2.0)大会---盛大资深研究员钱宏武:转换思维可实现更多 http://news.csdn.net/a/20101210/283436.html 文章里转载 2012-06-19 13:57:22 · 1782 阅读 · 0 评论 -
CSDN一个bug
上传图片时发现一个bug1,2,3都是同一张图.但是上传时1,2出现了问题.后检查了下图片格式原因是上传图片后缀为.jpg.而查看文件头却是png所以导致文件上传报错.将文件后缀改为png后,错误消失.总结:根据经验,实际问题出在图片上传时没有正确的判断图片格式(如读取文件头),而是武断判断文件后缀做处理.而根据Java的api,实际上并不需要判断这原创 2012-06-19 13:50:25 · 402 阅读 · 0 评论 -
pinyin4j的使用
转载地址:http://lavasoft.blog.51cto.com/62575/178320pinyin4j是一个功能强悍的汉语拼音工具包,主要是从汉语获取各种格式和需求的拼音,功能强悍,下面看看如何使用pinyin4j。本人以前用AscII编码提取工具,效果不理想,现在用pinyin4j简单实现了一个。功能还不是很完美,陆续再改进吧。import net.so转载 2012-06-15 13:08:23 · 414 阅读 · 0 评论 -
浅谈Selector创建机制
转载地址:http://ari.iteye.com/blog/1039014前段时间阅读mina源码时,理解Selector实例化机制细节有点疑惑疑惑,主要是SelectorProvider的细节实现方面。通常创建一个Selector,通过静态open方法创建一个实例。代码如下:Selector selector = Selector.open();观察JDK源码发转载 2012-06-14 12:17:05 · 511 阅读 · 0 评论 -
jsoup Cookbook
转载地址:http://www.open-open.com/jsoup/入门1. 解析和遍历一个HTML文档如何解析一个HTML文档:String html = "First parse" + "Parsed HTML into a doc.";Document doc = Jsoup.parse(html);(更详细内容可查看 解析一个HTML字符串转载 2012-06-06 12:21:31 · 721 阅读 · 0 评论 -
Jelastic--支持java的PaaS
转载地址:http://www.cnblogs.com/htynkn/archive/2012/01/19/hello_Jelastic.html最开始使用的是gae,被墙以后转战sae。虽然sae用着也不错,但是php用着始终没有java熟悉。在网上游荡时发现Jelastic,虽然是测试版,但是功能什么的毫无含糊,用着也很方便。地址:http://app.jelastic.ser转载 2012-06-05 15:11:49 · 1152 阅读 · 1 评论 -
反射实现 AOP 动态代理模式(Spring AOP 的实现 原理)
转载地址:http://www.blogjava.net/DoubleJ/archive/2008/03/04/183796.html好长时间没有用过Spring了. 突然拿起书.我都发现自己对AOP都不熟悉了.其实AOP的意思就是面向切面编程.OO注重的是我们解决问题的方法(封装成Method),而AOP注重的是许多解决解决问题的方法中的共同点,是对OO思想的一种补充!还是拿人家转载 2012-06-05 15:02:06 · 349 阅读 · 0 评论 -
对Memcached的使用的总结
转载地址:http://hi.baidu.com/zzeric/blog/item/067263fa4362541fa9d31157.html1. Memcached + Tomcat自定义SessionManager方案,采用分布式缓存+本地缓存的方式,在非Sticky Session模式下,可能会出现本地缓存不一致的情况。如:假定用Apache进行非StickySessio转载 2012-05-30 17:08:41 · 597 阅读 · 0 评论 -
淘宝的CheckStyle 1.0.2版
转载地址:http://www.searchtb.com/2011/01/coding-better-java-with-checkstyle.html "-//Puppy Crawl//DTD Check Configuration 1.2//EN" "http://www.puppycrawl.com/dtds/configuration_1_2.dtd转载 2012-05-15 16:06:10 · 403 阅读 · 0 评论 -
netty3.2.3源码分析-ClientBootstrap启动分析
转载地址:http://www.blogjava.net/alex-zheng/articles/339908.html在看完了server端的启动,再来看client端的启动过程是怎么进行的。例子是TelentServer对应的TelentClient直接看connect方法public ChannelFuture connect(final SocketAddress remo转载 2012-05-08 12:23:04 · 1138 阅读 · 0 评论 -
netty3.2.3源码分析--ServerBootstrap启动分析
转载地址:http://www.blogjava.net/alex-zheng/articles/339552.html这里首先分析下ServerBootstrap的启动过程,在netty中,channel可以看成是socketchannel的抽象channelpipeline里存放着channelhandler,channelpipeline根据不同的channelevent触发对应转载 2012-05-08 12:03:44 · 1111 阅读 · 0 评论 -
使用ETags减少Web应用带宽和负载
转载地址:http://www.infoq.com/cn/articles/etags最近,大众对于REST风格应用架构表现出强烈兴趣,这表明Web的优雅设计开始受到人们的注意。现在,我们逐渐理解了“3W架构(Architecture of the World Wide Web)”内在所蕴含的可伸缩性和弹性,并进一步探索运用其范式的方法。本文中,我们将探究一个可被Web开发者利用的、鲜为人知的转载 2012-05-04 15:14:05 · 296 阅读 · 0 评论 -
JAVA Socket超时浅析
转载地址:http://blog.csdn.net/sureyonder/article/details/5633647JAVA Socket超时浅析 套接字或插座(socket)是一种软件形式的抽象,用于表达两台机器间一个连接的“终端”。针对一个特定的连接,每台机器上都有一个“套接字”,可以想象它们之间有一条虚拟的“线缆”。JAVA有两个基于数据流的套接字类:ServerSoc转载 2012-05-02 17:58:27 · 333 阅读 · 0 评论 -
解决用run-jetty-run锁住css,js文件的问题。
转载地址:http://dengyin2000.iteye.com/blog/246774开发中用run-jetty-run插件启动jetty调式tapestry5应用。tapestry5的live class loader用起来非常爽, 不管你改page class还是html模板都不用重启server。 但是有一个例外,那就是jetty起来之后css, js文件会被jetty锁住, 然后用转载 2012-05-02 17:32:57 · 460 阅读 · 0 评论 -
SVN由1.6更新到1.8后出现问题
org.apache.subversion.javahl.ClientException: The working copy needs to be upgradedsvn: Working copy ‘E:\aliyun-spirit\spiritmap0916′ is too old (format 10, created by Subversion 1.6)原因是我在svn是低版转载 2012-03-21 12:47:22 · 1575 阅读 · 0 评论 -
Maven编译时跳过Test
在使用Maven编译项目时发现,会因为Test过不去而失败.所以maven提供了跳过Test的执行参数. mvn install -Dmaven.test.skip=true 对于eclipse的使用者就更简单了.右键项目,在"Run As"中选择"Maven build...".弹出"Run Configurations"对话框.在"Goals"里面写上"install原创 2012-03-07 14:35:35 · 1014 阅读 · 0 评论 -
Comet技术在项目中的使用
转载地址:http://my.oschina.net/ITBoy/blog/23927Comet是一种服务器端推的技术,所谓服务器端推也就是当有事件要通知给某个用户的时候,是由服务器端直接发送到用户的浏览器。服务器端Push目前一般有两种方式,HTTP streaming和Long polling。详细的介绍可以看这里 http://en.wikipedia.org/wiki/Pu转载 2012-03-02 10:54:11 · 591 阅读 · 0 评论 -
Netty使用初步
转载地址:http://www.kafka0102.com/2010/06/161.html并详见该帖讨论版。1、简介Java1.4提供了NIO使开发者可以使用Java编写高性能的服务端程序,但使用原生的NIO API就像Linux C中网络编程一样,还是需要做IO处理、协议处理等低层次工作。所以,就像C服务端程序大量使用libevent作为网络应用框架一样,Java社区也转载 2012-02-29 17:45:51 · 380 阅读 · 0 评论 -
深入浅出Netty
帖不了ppt,csdn不支持object对象,只能帖地址了。http://www.searchtb.com/2011/03/dive_into_netty.html转载 2012-02-29 17:41:33 · 413 阅读 · 0 评论 -
慕然回首,却发现JVM字节码原来如此。。。。。
转载地址:http://blog.csdn.net/zj831007/article/details/7181058一、万能的Hello World, 现身吧:[html] view plaincopypackage com.jian; public class Test { public static void main(Str转载 2012-02-29 17:22:37 · 456 阅读 · 0 评论 -
Closure类和继承
转载地址:http://blog.csdn.net/zj831007/article/details/6831127前面章节中的模块都不是以面向对象形式写的,但是在Closure中许多模块是,尽管Javascript支持基于原型编程,Closure库以原型来实现类的编程。为了管理内存,用传统的复制对象来创建对象。许多Javascript开发者都回避使用面向对象,他们认为本身的弱类型是很转载 2012-02-29 17:17:53 · 769 阅读 · 0 评论 -
Closure常用工具类
转载地址:http://blog.csdn.net/zj831007/article/details/6821611Closure库包含很多常用工具类,对于一个新的框架,最大的问题是怎么根据你的需要找到相应功能的函数。本章将介绍库中大多数工具类,这将是对类库的一个很好的开始点,通过本章学习,你将能理解库的组织形式,也能告诉你怎么查找本章中未提到的函数。Closure库中每个文件转载 2012-02-29 17:17:00 · 719 阅读 · 0 评论 -
Closure基本库
就像第一章例子所描述一样,javascript文件通过base.js引导Closure库,在base.js中创建了goog根对象,所有其它的Closure库属性都存在于对象下。因为定义在base.js 中的所有函数对使用Closure库的任何javascript库都是可用的,因此,这称为基本Closure库。本章会详细讲解这些基本内容。通过对base.js中的api的讲述,本章也会引领读者转载 2012-02-29 17:15:36 · 713 阅读 · 0 评论 -
Closure javascript注解
转载地址:http://blog.csdn.net/zj831007/article/details/6801110Closure Library原始代码都有注释,其中一些都有特殊的格式,并被Cloure Compiler处理。理解这些注解对阅读Closure代码有很大帮助,本书将有这些例子。本章介绍的JSDoc标记和类型表达式都可以在Clsure代码中找到。google在http:/转载 2012-02-29 17:14:52 · 598 阅读 · 0 评论 -
Closure介绍
转载地址:http://blog.csdn.net/zj831007/article/details/6798021参考地址:https://developers.google.com/closure/Closure是一套开发富客户端的javascript工具。其中每一个工具都是在Apache 2.0 license下开源的,并且由google开发,维护。Closure已经被goo转载 2012-02-29 17:12:50 · 577 阅读 · 0 评论