Java
文章平均质量分 62
Trinea
http://www.trinea.cn
展开
-
java远程端口调试
修改monitor和agent代码,测试需要debug远程agent发送的信息,在agent jvm启动参数中加入debug字段 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8887 参考:http://download.oracle.com/javase/1.4.2/docs/toold...原创 2011-04-13 09:38:33 · 210 阅读 · 0 评论 -
eclipse中查看Java源代码
在eclipse中对于自己的代码可以通过按住Ctrl的同时单击名称跳入相应源码中 但eclipse默认没有添加java源代码目录,比如点击Thread会提示source not found,而在开发中了解Java源代码又是技术成长必要的。jdk默认是附带源码zip包的(jdk按装目录下的src.zip文件),我们可以通过添加源码在eclipse中查看。 在提示source not ...2012-01-16 23:25:38 · 141 阅读 · 0 评论 -
多线程使用中的一些好习惯
本文主要介绍个人在多线程使用和调优中总结一些线程使用比较好的习惯,方便大家在线程出现问题时排查,好习惯是高效率的基础几个习惯分别为设置线程名,处理interrupt、使用ThreadLocal其他下次再写吧 1、设置线程名使用过VisualVM或其他java自带工具或是thread dump的朋友都能体会到如果线程没有设置名称,要进行性能问题排查和调优那是相当头大的一件事,下面...2012-01-17 00:24:16 · 130 阅读 · 0 评论 -
对象数组或list排序及Collections排序原理
常需要对list进行排序,小到List<String>,大到对自定义的类进行排序。不需要自行归并或堆排序。简单实现一个接口即可。本文先会介绍利用Collections对List<String>进行排序,继而讲到Collections.sort的原理,再讲到如何对自定义类进行排序,最后会介绍利用Collections sort对自定义对象进行排序的另外一种方法,...2011-11-09 22:42:22 · 173 阅读 · 0 评论 -
异常处理的最佳实践[转载]
之前一直对异常处理比较疑惑,通常有点随心所欲而没有规范统一的处理标准。这次的项目提供全网的基础服务,认真学习了下异常处理的规范,正好看到了下面的文章,相见恨晚 原文如下,主要需要掌握,分清Checked exception和Unchecked exception;保持封装性统一对外提供异常; 不做没必要的封装处理。使用时记得finally释放资源; 不要使用异常作控制流程之用; 处理...原创 2012-05-15 17:01:14 · 117 阅读 · 0 评论 -
Junit单测代码中java序列化失败的解决
本文主要介绍在Junit单元测试中序列化时出现的java.io.NotSerializableException如何解决。关于序列化可以参见http://trinea.iteye.com/blog/1020511 以下是Junit单测中的一段代码,主要功能是序列化一个接口变量interface GetDataInterface extends Serializable { ...2012-05-17 00:38:37 · 129 阅读 · 0 评论 -
maven常用插件配置和使用
最新内容见:Maven常用插件配置和使用 本文主要是介绍maven的几个常见第三方插件(cobertura、findbugs、source、assembly、插件开发)配置和使用,接http://trinea.iteye.com/blog/1290898 maven本质上是一个插件框架,它的所有工作都交给插件来做,每个插件可以有多个goal。除了自带的插件之外还有很多比较成熟...2012-05-17 20:14:01 · 132 阅读 · 0 评论 -
jetty.io.EofException java.io.IOException: Broken pipe
在apache + mod_proxy + jetty下,单台服务器,50并发情况下,jetty异常Caused by: org.eclipse.jetty.io.EofException at org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:912) at org....2011-11-17 22:33:53 · 885 阅读 · 0 评论 -
Junit单元测试中获得spring bean
主要介绍单元测试中获得bean的三种方法,以及各自的优劣。其实跟开发时获得bean方法一样,如下:a.通过ClassPathXmlApplicationContext得到ApplicationContext,再getBeanb.通过set函数获得beanc.启用直接对保护类型属性变量进行注入的机制日常应用中推荐大家使用第二、三中方法。尤其对于bean较多时,使用第三种可以方便省事...2011-11-23 11:44:21 · 431 阅读 · 0 评论 -
windows机器性能监控
主要介绍一般windows系统监控,以及Windows Server中如何进行系统监控 1、一般windows系统监控windows下在命令行输入perfmon回车启动性能监控,可以监控.net CLR、Cache、DB、Event、Http Server、Network、Processor等等,主要就是通过添加Counters来监控 2、windows Server系统监...2011-11-24 18:55:34 · 153 阅读 · 0 评论 -
java 利用spring JavaMailSenderImpl发送邮件,支持普通文本、附件、html、velocity模板...
本文主要介绍利用JavaMailSenderImpl发送邮件。首先介绍了发送一般邮件,然后介绍了发送富文本(html)邮件及以velocity为模板发送邮件。 邮件发送分为为三步:创建邮件发送器、编写邮件、发送邮件。 Spring的JavaMailSenderImpl提供了强大的邮件发送功能,可发送普通文本邮件、带附件邮件、html格式邮件、带图片邮件、设置发送内容编码格式、设置...2011-11-25 20:59:50 · 588 阅读 · 0 评论 -
maven用途、核心概念、用法、常用参数和命令、扩展
最新内容见:Maven介绍,包括作用、核心概念、用法、常用命令、扩展及配置 本文由浅入深,主要介绍maven的用途、核心概念(Pom、Repositories、Artifact、Build Lifecycle、Goal)介绍、用法(Archetype意义及创建各种项目)、maven常用参数和命令以及简单故障排除、maven扩展(eclipse、cobertura、findbugs、插件...2011-12-05 19:15:07 · 165 阅读 · 0 评论 -
Hudson 插件编写
Hudson是一个开源的持续集成工具,由于其强大的扩展性(插件)而著名,允许用户定制build的各个step,steps如下:SCM checkout - Based on SCM type, source code is checked outPre-build - Invoked to indicate that the build is startingBu...2011-12-10 00:10:19 · 131 阅读 · 0 评论 -
总结的一些Java公用函数库
最新内容建议直接访问原文:Android常用的工具类 主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java。目前包括HttpUtils、DownloadManagerPro、ShellUtils、PackageUtils、PreferencesUtils、JSONUtils、FileUtils、ResourceUtils、StringUtils、ParcelUtil...原创 2012-06-18 15:41:17 · 659 阅读 · 0 评论 -
PreloadDataCache支持预取的数据缓存,使用简单,支持多种缓存算法,支持不同网络类型,扩展性强...
最新内容建议直接访问原文:PreloadDataCache支持预取的数据缓存,示例APK地址:TrineaAndroidDemo 本文主要介绍一个支持自动向前或向后获取新数据的缓存的使用及功能。Android图片内存缓存可见ImageCache。 主要特性:(1).使用简单 (2).可自动预取新数据 (3).可选择多种缓存算法(包括FIFO、LIFO、LRU、MRU、LFU...原创 2012-06-18 15:44:51 · 337 阅读 · 0 评论 -
腾讯微博java(android) api
由于现在腾讯微博提供的java(android) sdk功能过弱,自己搞了个java sdk包,同样适用于android。包含腾讯微博目前提供的95%的api,几乎所有主要功能api,用法简单(微博、评论、转发、私信同一个实体类),方便扩展(可以根据自己需要修改源代码或是继承QqTSdkService类,当然为了后续依然能升级版本建议采用继承的方式)。 下面介绍源码地址和jar包地址...2011-12-15 00:50:02 · 270 阅读 · 0 评论 -
多线程安全问题案例1 单例注入的类中含非线程安全属性
在50个线程并发的情况下出现数组越界异常,经排查原因为某一个类为单例注入,但含有非线程安全属性。详细如下 1、异常现象:数据越界java.lang.ArrayIndexOutOfBoundsException: 1 at org.apache.oro.text.regex.Perl5Matcher.__findFirst(Unknown Source) at org.a...2011-11-04 14:03:31 · 160 阅读 · 0 评论 -
JDK自带VM分析工具jps,jstat,jmap,jconsole
一、概述 SUN 的JDK中的几个工具,非常好用。秉承着有免费,不用商用的原则。以下简单介绍一下这几种工具。(注:本文章下的所有工具都存在JDK5.0以上版本的工具集里,同javac一样,不须特意安装) 。 我一共找到以下四个工具:重点看看jconsole和jmap。Java代码 jps :与unix上的ps类似,用来显示本地的...原创 2011-04-08 16:56:38 · 117 阅读 · 0 评论 -
spring事务处理
在进程数据库操作时候经常需要将多个数据库操作作为一个事务处理, 1、比如delete操作必须删除级联表的相关数据,update操作必须修改级联表的相关数据,insert操作必须在级联表中插入相应数据。如银行数据的安全性 2、一个数据库表的多次delete、update、insert操作(当然这个可以用存储过程处理) 本次操作需要删除多次执行结果,但要做到一个删除失败,其他的...原创 2011-04-13 13:36:57 · 118 阅读 · 0 评论 -
java动态获得实例类型并创建实例
在java编程中经常遇到这样的问题1、已经一个类的实例,判断这个实例是不是某个类的对象;2、已知一个类的实例,想创建一个和此实例类型相同的对象,尤其当这个实例类型可能动态的时候。 介绍一个关键字和两个函数instanceof关键字用于判断一个引用类型变量所指向的对象是否是一个类(或接口、抽象类、父类)的实例。示例见newInstance; getClass() Re...2011-04-14 17:32:25 · 154 阅读 · 0 评论 -
jsch channel exec Java命令失败
第二次碰到这个问题了,第一次是用jsch远程启动一个脚本,脚本中的java命令始终无法使用这次是执行jps命令返回结果为空字符串,而secureCRT执行jps可以看见java进程。 channel = session.openChannel("exec");((ChannelExec) channel).setCommand(command); 最终改为 f...2011-04-15 17:07:14 · 1090 阅读 · 0 评论 -
转义字符的干扰
在js和java中\被当作转义字符,如\"表示" 1、js向java传递数据 - 字符转义如果从js中向java中post一个字符串其中还有\"则被当作"处理需要对string进行处理。 function processEscapeCharacter(inputStr) { return ((inputStr.length > 0) ? inputStr.repl...原创 2011-04-25 11:35:54 · 106 阅读 · 0 评论 -
Java Serializable的理解和总结
IBM上的一篇文章http://www.ibm.com/developerworks/cn/java/j-lo-serial/index.html主要讲了序列化id的作用(序列化和反序列化,Façade 模式)、静态变量的序列化(属于类的属性而不是对象属性,并不被序列化)、父类的序列化(没有继承自Serializable,必须有无参构造函数,默认赋为类型初始值)以及Transient关键字、特...原创 2011-04-27 23:05:35 · 120 阅读 · 0 评论 -
java eclipse pom文件修改编译
mvn eclipse:cleanmvn eclipse:eclipsemvn -Dwtpversion=2.0 eclipse:eclipsemvn clean install -Dmaven.test.skipmark一下免得每次找 指定antxmvn clean install -DuserProp=antx.properties ...原创 2011-05-18 19:52:00 · 361 阅读 · 0 评论 -
File类移动文件和文件夹
对于文件夹和文件的移动,File类未提供直接的move函数。只提供了renameTo函数进行重命名,delete函数删除文件及空文件夹。利用这两个函数我们可以进行文件和文件夹的移动。 moveFile移动源文件到目的文件夹。注意使用renameTo而不是读取文件所有内容,在目的地址新建文件的效率高很多。因为renameTo相当于修改了快捷方式,并没有增加磁盘io。只是修改磁盘一个区域索引地...原创 2011-05-23 21:27:48 · 629 阅读 · 0 评论 -
jad 反编译 class文件
用jad反编译了下新浪微博的提供的开放api代码,jad是多款java反编译工具的内核,但其本身没有图形界面 首先下载jad,然后解压,解压后含有jad.exe和Readme.txt由于jad没有图形界面,使用命令行方式反编译 本次使用的命令是jad -o -r -s java -d sina sinaWeiboAndroid-20110614/**/*.class-o...2011-09-01 23:42:37 · 130 阅读 · 0 评论 -
java 的 System 和 Runtime
java的System获得系统环境信息以及java信息。java的Runtime获得运行时信息。而且这些函数的运行效率都超高,执行时间都在纳秒级。函数代码如下 获得环境信息 private static void getEnv() { for (Map.Entry<String, String> enviromentPara : System.geten...2011-05-24 21:02:56 · 137 阅读 · 0 评论 -
Jps介绍以及解决jps无法查看某个已经启动的java进程问题
对于jps较熟悉可以直接查看第二部分的分析 1、jps的作用jps类似linux的ps命令,不同的是ps是用来显示进程,而jps只显示java进程,准确的说是当前用户已启动的部分java进程信息,信息包括进程号和简短的进程command。 2、某个java进程已经启动,用jps却显示不了该进程进程号这个问题已经碰到过两次了,所以在这里总结下。现象:用ps -ef|...原创 2011-10-14 17:38:48 · 1609 阅读 · 0 评论 -
java.lang.OutOfMemoryError: unable to create new native thread
工作中碰到过这个问题好几次了,觉得有必要总结一下,所以有了这篇文章,这篇文章分为三个部分:认识问题、分析问题、解决问题。 一、认识问题:首先我们通过下面这个 测试程序 来认识这个问题:运行的环境 (有必要说明一下,不同环境会有不同的结果):32位 Windows XP,Sun JDK 1.6.0_18, eclipse 3.4,测试程序:Java代码 im...原创 2011-03-15 10:38:11 · 208 阅读 · 0 评论 -
java性能调优工具介绍Visualvm
很乱的记了点东西,详细待补充 首先需要介绍下VisualVM即java程序监控和简单的profile能力于一体,同时不同于java自带的jvisualvm,功能强大的多,是性能调优的极佳工具。(java1.6后续版本jvisualvm功能同visualvm已经相近) visualvm主页:http://visualvm.java.net/特性:先看一下对一个java程...2011-10-26 11:41:19 · 182 阅读 · 0 评论 -
java性能调优工具介绍-Jstatd
jstatd是一个rmi的server应用,用于监控jvm的创建和结束,并且提供接口让监控工具(如visualvm)可以远程连接到本机的jvms。注意是jvms,就是说运行jstatd命令后可以用监控工具监控本用户(运行jstatd命令的用户)所有已经启动的java程序。原理应该也是同jps一样,读取/tmp/hsperfdata_userName/这样目录下的java程序信息,具体可以查看htt...2011-10-26 14:51:50 · 222 阅读 · 0 评论 -
jar包直接运行
习惯了web工程开发后,对于一个简单的jar包如何运行呢。java -cp JavaMainTest-1.0-SNAPSHOT.jar com.XXX.JavaMainTest -Xms512m -Xmx512m -XX:MaxPermSize=128m其中JavaMainTest-1.0-SNAPSHOT.jar为jar路径com.XXX.JavaMainTest为类...原创 2011-04-06 10:06:08 · 156 阅读 · 0 评论 -
Android 开源库获取途径整理
最新内容请见原文: http://www.trinea.cn/android/android-open-project-summary/ 介绍目前收藏 Android 开源库比较多的 GitHub 项目、网站、Twitter、App 及如何获取最新的 Android 开源库。1. GitHubAndroid 开源项目汇总Android 优秀开源项目实现原理解析把这两个放在前面,...2014-08-20 02:14:10 · 230 阅读 · 0 评论