JavaSE
青鸟天空
四年Java开发经验,具有扎实Java功底及较强的开源代码学习能力;三年的产品研发维护经验,具有良好的编码规范及团队沟通合作能力;性格沉稳具有强烈的责任心与进取意识,专注Java领域技术发展。<br/>虽然职业是程序员,但也十分活跃,在高德2012、2013年年会上均参加唱歌节目。由于去年结婚因此准备前往南京、上海等武汉周边城市工作。希望与拥有Java相关软件产品的公司共同发展。
展开
-
JDK1.6自带工具介绍
基本工具javac :Java编程语言编译器java :启动Java应用程序javadoc :API文档生成apt :注释处理工具appletviewer :applet运行和调试jar :创建原创 2012-10-23 22:13:37 · 2694 阅读 · 0 评论 -
Google guava
Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,包括 collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, 等等. 这些高质量的 API 可以使你的JAVa代码更加优雅,更加简洁,让你工作更加轻松愉悦。下面我原创 2014-04-30 19:11:40 · 1305 阅读 · 0 评论 -
java.sql.BatchUpdateException
异常信息:java.sql.BatchUpdateException: 批次处理 0 insert into xxx (id, ...) values (44, ...) 被中止,呼叫 getNextException 以取得原因。org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(Abstr原创 2013-10-17 18:15:14 · 40533 阅读 · 5 评论 -
Java图片处理
jmagick.jar是一个jni的图片处理包,与jdk有强依赖,不同版本也会存在不兼容问题,在windows上只有32位的动态库(dll),不推荐使用。EasyImage是一个图片制作的第三方Jar包,可以做所有基础的图片操作:转换,裁剪,缩放,选择等;可以结合很多总操作,创造出很酷的效果;操作简单等thumbnailatorThumbnailator 是一个为Jav原创 2014-06-30 19:47:38 · 1242 阅读 · 0 评论 -
google protostuff
Google 的protobuf是一个优秀的序列化工具,跨语言、快速、序列化后体积小。protobuf的一个缺点是需要数据结构的预编译过程,首先要编写.proto格式的配置文件,再通过protobuf提供的工具生成各种语言响应的代码。由于java具有反射和动态代码生成的能力,这个预编译过程不是必须的,可以在代码执行时来实现。有个protostuff(http://code.google.c原创 2014-06-30 19:51:52 · 2859 阅读 · 0 评论 -
java关于Integer的几个相等测试题
之前看过很多关于String相等的测试题,突然发现Integer相等的题目有时也让人感觉很出乎意料,感兴趣可以先猜猜,再运行结果,看看跟你猜想的结果是否一致。如果你完全独对了,还劳烦留言说说为什么,共同分享学习。题目如下:Integer i1 = 100; Integer i2 = 100; Integer i3 = new Integer(100); In原创 2014-07-23 10:00:08 · 1326 阅读 · 2 评论 -
Java获取系统属性及环境变量
当程序中需要使用与操作系统相关的变量(例如:文件分隔符、换行符)时,Java提供了System类的静态方法getenv()和getProperty()用于返回系统相关的变量与属性,getenv方法返回的变量大多于系统相关,getProperty方法返回的变量大多与java程序有关。 系统属性和环境变量都是名称与值之间的映射。两种机制都能用来将用户定义的信息传递给 Java进程。环境变原创 2012-11-01 13:12:53 · 13465 阅读 · 1 评论 -
canal安装部署
1、准备:github:https://github.com/alibaba/canal里面有包括canal的文档,server端 client端的 例子 源码包等等。2、canal概述:canal是应阿里巴巴存在杭州和美国的双机房部署,存在跨机房同步的业务需求而提出的。早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求。不过早期转载 2014-11-25 12:05:16 · 6821 阅读 · 1 评论 -
经典推荐 - hive编程指南[书签版]
推荐本hive的书,手工加的封面和书签,值得一看,值得拥有!下载地址:http://download.csdn.net/detail/bbirdsky/8300267原创 2014-12-26 09:53:36 · 4885 阅读 · 1 评论 -
JavaMelody性能监控工具
Java性能监控的工具非常多,像JDK自带的JConsole、VisualVM以及各种Analyzer分析工具等,这些工具大部分只能分析CPU、内存、线程、堆栈。JavaMelody 不仅可以能够分析CPU、内存,还可以对Java EE应用程序进行:用户Session数量、JDBC连接数、HTTP请求、SQL请求、JSP页面与业务接口方法(EJB3、Spring、 Guice)的执行数量,原创 2014-12-30 10:29:21 · 3088 阅读 · 0 评论 -
Java处理正则表达式特殊字符转义
正则需要转义字符:'$', '(', ')', '*', '+', '.', '[', ']', '?', '\\', '^', '{', '}', '|'异常现象: java.util.regex.PatternSyntaxException: Dangling meta. character '*' near index 0解决方法: 对特殊字符加\\转义即可。原创 2015-04-29 16:53:42 · 96213 阅读 · 1 评论 -
System.exit()方法的作用
查看java.lang.System的源代码,我们可以看到System.exit()这个方法等价于Runtime.exit(),代码如下:/** * Terminates the currently running Java Virtual Machine. The * argument serves as a status code; by convention, a nonze原创 2015-06-11 19:58:12 · 35093 阅读 · 0 评论 -
GC垃圾收集算法
GC判断对象是否存活算法1> 引用计数算法2> 根搜索算法(GC Root)GC垃圾收集算法1> 标记清除算法(Mark-Sweep):分为标记和清除两个阶段,首先标记出可以回收的对象,标记完后统一回收。缺点如下: a) 效率低:标记和清除过程效率都不高; b) 空间问题:清除之后产生大量不连续的内存碎片。原创 2015-08-09 16:43:37 · 2960 阅读 · 0 评论 -
Hadoop生态图
Hadoop已经成长为一个庞大的体系,只要和海量数据相关的领域都能看到Hadoop的身影,以下是Hadoop生态系统中出现的各种数据工具。1、这一切,都起源自Web数据爆炸时代的来临2、数据抓取系统:Nutch3、海量数据怎么存,当然是用分布式文件系统:HDFS4、数据怎么用呢,分析,处理5、MapReduce框架,让你编写代码来实现对大数据的分析工作6、非结构化数据(日志原创 2014-03-14 15:17:14 · 3809 阅读 · 1 评论 -
JDK源码包结构分类
最近查看JDK源码时,无意间发现几个类在陌生包里:com.sun.*、sun.*、org.*,google了一把总结了下以备他人搜索,如内容有误欢迎指正!Jre库包含的jar文件(jdk1.6):resources.jar、rt.jar、jsse.jar、jce.jar、charsets.jar、dnsns.jar、localedata.jar等共10个jar文件,其中reso原创 2013-12-04 17:16:30 · 13783 阅读 · 1 评论 -
java.lang.String类分析
前言字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生。在很多面试题中经常用String大做文章,只要掌握了String特性,对付它们就不再是困难了。1、从根本上认识java.lang.String类和String池首先,我建议先看看String类的源码实现,这是从本质上认识String类的根本出发点。从源码中原创 2012-12-11 16:27:34 · 6252 阅读 · 0 评论 -
Java性能优化小技巧
前言局部决定整体。一个应用的整体性能取决于每个组件的性能。下面是一些帮助你提高应用性能的Java编程技巧。1、避免重复创建对象为什么:1>更少的对象会需要更少的垃圾回收2>使用的空间越少,应用的性能越好怎么做:1>重复利用一个对象,而不是在每次需要的时候都去创建一个功能一样的对象;(这样做)String s = “No longer silly”;(原创 2013-01-21 11:00:39 · 880 阅读 · 0 评论 -
Java实现斐波那契数列
为了应付软考,补补基础知识,特记录下以备后用。斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)。以下是Java代码实现(递归与递推两种方式):import java.util.Scanner;/** * Fibona原创 2013-05-23 11:57:45 · 60837 阅读 · 10 评论 -
java import的机制[转载]
[原文地址:http://zhaohe162.blog.163.com/blog/static/3821679720101120104444895/]java中有两种包的导入机制,总结如下:1、单类型导入(single-type-import): 例如 import java.io.File;2、按需类型导入(type-import-on-demand):例如 import java.转载 2013-01-11 10:15:36 · 790 阅读 · 0 评论 -
SSH与Java
[原文地址:http://andrius.miasnikovas.lt/2009/07/ssh-with-java/] 最近,我需要做一些基于SSH-2协议操纵服务器的Java客户端程序。有相当多Java的SSH库可以选择。通常我喜欢尽可能使用BSD许可,所以我想我将会用Ganymed的SSH-2作为尝试。它很简单易用。下面是一个简短的例子如何连接到服务器使用的私钥,并执翻译 2013-07-11 16:29:43 · 6516 阅读 · 2 评论 -
Java中Unsafe类
[原文地址:http://aswang.iteye.com/blog/1741871]在阅读AtomicInteger的源码时,看到了这个类:sum.msic.Unsafe,之前从没见过。所以花了点时间google了一下。 Unsafe的源码:http://www.docjar.com/html/api/sun/misc/Unsafe.java.html Unsafe源码中转载 2013-08-21 11:28:18 · 2170 阅读 · 0 评论 -
Java endorsed
今天突然看到这样的一个面试题:能否自已写个类也叫java.lang.String?能否自已写个类也叫java.util.ArrayList?第一个问题,答案相对简单:自己定义java.lang.String类语法上没有错误,但由于JVM类加载器的父委托机制,JVM只会加载jre.jar中的java.lang.String。如果调用自定义String类中方法,会出现三种情况:原创 2013-09-23 10:32:22 · 2717 阅读 · 0 评论 -
Java全半角转换
全角转半角规则:1、全角空格为12288,半角空格为32特殊处理;2、其他字符半角(33-126)与全角(65281-65374)的对应关系是相差65248。Java全半角转换代码:/** * StringUtils * * @author tongqian.zhang */public class StringUtils { /** * 判断字原创 2013-09-27 13:30:45 · 3983 阅读 · 0 评论 -
Java代码性能分析工具
1、Java程序性能分析1>Jconsole:JDK自带2>VisualVM :加强性能分析工具参考资料:http://jiajun.iteye.com/blog/8101502、Android程序性能分析1>traceView:Android自带参考资料:http://blog.csdn.net/iris0123456/articl原创 2013-11-07 15:03:34 · 3531 阅读 · 0 评论 -
Effective Java笔记(第二章)
最近,在看Effective Java这本书,感觉还不错,记点笔记以备后用。package bbsky.effectivejava.chapter02;import java.math.BigInteger;import java.util.Random;/** * StaticFactoryMethod * * 第1条:考虑用静态工厂方法代替构造器 * * 静态工原创 2013-11-24 22:48:05 · 1307 阅读 · 0 评论 -
Eclipse插件的四种安装方法
1、在eclipse的主目录(ECLIPSE_HOME, 比如在我的机器上安装的目录是:D:\eclipse)有一个plugins的目录,这种方法的插件安装非常简单,只要将插件copy到这个目录下就可以 了。比如我有一个weblogic的插件(bea站点上可以下载),解压缩之后得到得到一个目录: 【com.bea.eclipse.weblogic_1.1.1】,我就将这个目录直接放到%ECLI原创 2013-11-30 22:58:47 · 1149 阅读 · 0 评论 -
Swing GUI线程安全问题
Swing提供一组“轻量级”(全部是 Java 语言)组件,尽量让这些组件在所有平台上的工作方式都相同。是单线程、线程不安全的。现象1:当点击了开始按钮,画面就卡住了。按钮不能点击,进度条没有被更新,输入框上也没有任何信息。原因分析:Swing是线程不安全的,是单线程的设计,所以只能从事件派发线程访问将要在屏幕上绘制的Swing组件。ActionListener的actionPer原创 2013-11-30 22:55:27 · 2787 阅读 · 0 评论 -
Object类源码分析
Object类Object类是类层次结构的根类。Object类是每一个类的超类。所有对象,包括数组,都实现了这个类的方法。 Object类属于java.lang包,所有类都直接或间接继承Object类,在Jdk1.6版本中Object类共有11个方法。 Object类中有很多native方法,也称为本地方法,具体是用C(C++)在动态库中实现的,然后通过JNI调用。源码分析package jav原创 2017-02-14 15:47:01 · 1403 阅读 · 0 评论