Java
Rain
...
展开
-
开源的网络服务框架:Apache Etch 1.4.0 发布
Apache Etch是一个开源、跨平台、语言和传输方式独立的网络服务框架,可用来构建和使用网络服务。Etch提供的工具集包括一个网络服务描述语言、一个编译器和与各种语言进行绑定的库。它具有传输方式独立的特性,允许开发者根据需求使用不同的传输方式。它的目标是使得开发者能够快捷的定义和访问轻量、集中的服务,并可以使用相似的方式进行组合和部署服务。使用Etch可以使得开发、访问服务相比使用其他开发工具转载 2014-08-13 14:04:16 · 766 阅读 · 0 评论 -
Applet签名
1、生成密钥库keytool -genkey -keystore 你要的名字.store -alias 别名2、导出密钥keytool -export -keystore 你要的名字.store -alias 别名 -file 别名.cer3、签名jarsigner -keystore 你要的名字.store 待签名的.jar 别名原创 2011-12-19 15:34:34 · 688 阅读 · 0 评论 -
JTree用法及JTree使用经验总结
JTree用法及JTree使用经验总结import java.awt.Dimension;import java.awt.Color;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTree;imp转载 2011-11-22 11:11:19 · 844 阅读 · 0 评论 -
Ubuntu9以上手动安装Netbeans菜单乱码
<br />1、在你的jdk安装目录下的jre/lib/fonts/下新建fallback目录<br />2、将/usr/share/fonts/truetype/wqy/wqy-zenhei.ttc拷贝到你的jdk安装目录下的jre/lib/fonts/fallback下<br />3、进入fallback目录运行如下命令:<br /> sudo mkfontdir<br /> sudo mkfontscale原创 2011-05-16 15:06:00 · 682 阅读 · 0 评论 -
java.lang.OutOfMemoryError: PermGen space及其解决方法
<br /><br />1、<br />PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。说说为什么会内存益出:这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对Per转载 2011-01-03 23:46:00 · 680 阅读 · 0 评论 -
JVM 性能调整的一些基本概念
<br /><br />作者 徐永久 <br /><br />本文是我在工作中调整 Solaris 8 上的 WebLogic 6.0SP2 中遇到诸多问题后,查阅相关资料而产生的一些概念,罗列出来,或许对您有所帮助。这并不代表,笔者推荐您使用 WebLogic 和 Solaris 的组合,相反,笔者欢迎相关 Tomcat 性能调整方面的心得。笔者在 Sun Tech Day 上和 Bea 公司的相关人员讨论后,认为 Bea 对 Open Source 和 Free Software 缺乏必要的远见。转载 2011-01-03 23:48:00 · 620 阅读 · 0 评论 -
Java串口通讯
Java串口通讯 串行通讯协议有很多种,像RS232,RS485,RS422,甚至现今流行的USB等都是串行通讯协议。而串行通讯技术的应用无处不在。可能大家见的最多就是电脑的串口与Modem的通讯。记得在PC机刚开始在中国流行起来时(大约是在90年代前五年),那时甚至有人用一条串行线进行两台电脑之间的数据共享。除了这些,手机,PDA,USB鼠标、键盘等等都是以串行通转载 2010-04-14 16:55:00 · 1118 阅读 · 0 评论 -
2008年终盘点-十大惊艳Java应用程序
2008年终盘点-十大惊艳Java应用程序 Java是一个十分伟大的语言和平台,可以编写出任何类型的应用。它开放、快速、强大,可以运行在任意平台上,相比任何其它语言,它可以完成更多领域中应用程序的编写,本文将为大家介绍用Java编写的十大惊艳应用程序。 10、无线传感器开发环境Sun SPOT Sun SPOT设备是一个小巧的无线实验平台,通过电池供电。转载 2009-01-07 12:44:00 · 691 阅读 · 0 评论 -
介绍 JDesktop Integration Components
介绍 JDesktop Integration Components用 JDIC 在桌面应用程序中集成本机操作系统特性文档选项<!--document.write(打印本页);//-->打印本页<!--document.write(转载 2008-11-05 16:49:00 · 1277 阅读 · 0 评论 -
Java获得系统时间错乱的问题
今天发现系统获得的时间和真实的时间差了一个时区,但是系统是和服务器自动同步时间的。先以为是服务器的时间错了,后来发现服务器时间和时区都没有错。最后google发现原来是jvm的默认时区错了。解决方法也很简单,指定jvm的时区,给jvm加入如下参数:-Duser.timezone=GMT+08原创 2012-02-15 14:53:04 · 1116 阅读 · 0 评论 -
Class invariant violation
java.lang.IllegalStateException: Class invariant violationat org.apache.log4j.LogManager.getLoggerRepository(LogManager.java:199)at org.apache.log4j.LogManager.getLogger(LogManager.java:228)at o原创 2012-02-29 09:37:55 · 5921 阅读 · 3 评论 -
JVM调优
1. Heap设定与垃圾回收Java Heap分为3个区,Young,Old和Permanent。Young保存刚实例化的对象。当该区被填满时,GC会将对象移到Old区。Permanent区则负责保存反射对象,本文不讨论该区。JVM的Heap分配可以使用-X参数设定,-Xms初始Heap大小-Xmxjava heap最大值转载 2011-01-03 23:49:00 · 660 阅读 · 0 评论 -
Spring AOP嵌套调用
在做日志的时候,我通常是用aop的方式,以降低耦合性,保证业务代码的干净。之前一直使用的挺好。今天开发反映在嵌套调用的时候日志没有起作用。场景如下:A调用B.a方法,B.a上的拦截是有用的。B.a里调用了B.b,在B.b上也同样有拦截注解,但是没有起作用。其实这个没起作用是很正常的,因为Spring aop是基于bean的,而B.a里调用B.b,其中这个B已经不是spring中的代原创 2013-12-10 15:01:29 · 2610 阅读 · 0 评论 -
jvm分析 记录下
监视gc信息 5000是间隔多少毫秒采集一次信息jstat -gcutil 5680 5000导出jvm日志 5680是pidjmap -dump:file=d:\jvm.log 5680原创 2013-10-29 20:50:59 · 906 阅读 · 0 评论 -
struts-cleanup过滤器的作用
struts-cleanup org.apache.struts2.dispatcher.ActionContextCleanUp struts-cleanup *.action REQUEST FORWARD 该过滤器的作用是帮我们清楚缓存。一般在做文件上传的时候需要加上这原创 2013-03-25 09:58:24 · 2293 阅读 · 0 评论 -
Linux下安装JDK
首先当然是下载Linux版的JDK可以在www.sun.com上下载我下载的版本是1.6假设我们下载下来的文件是jdk-6u10.bin在命令行下进入文件所在目录,我的是home/myuser/Software/键入chmod u+x .jdk-6u10.bin然后键入 ./jdk-6u10.bin看到协议,一直敲Down键或者Enter键最后看到Do you原创 2008-10-05 22:38:00 · 610 阅读 · 0 评论 -
使用WRAPPER制作JAVA程序为WINDOWS服务 留着看看
使用一个第三方的软件将java写的应用注册成为windows的服务。比如说james,activeMQ,hsql db,MSQL等,注册成为了服务后,不用每天对着一个CMD的DOS窗口,也不用每天启动了电脑后去启动这些程序,也是一件比较爽的事情。用到的第三方的软件是java service wrapper,1.下载 下载地址是http://wrapper.tanuki转载 2012-08-29 18:24:48 · 1151 阅读 · 0 评论 -
Java多线程引起的系统时间变快
看来我又孤弱寡闻了,今天有客户反映,我们的系统启动后系统时间跑快了。我先还觉得好笑。做这多年了第一次碰到。后来实验了下,真的有如此现象,问下google。看来我out了。确实在多线程的情况下,休眠时间小于10ms会有次现象发生。这个是jvm的一个bug。原来客户的服务器一直是linux的。现在大多是windows的。不知道linux上是不是也会有这个问题。解决办法也很简单,要么原创 2012-07-17 17:05:34 · 1281 阅读 · 2 评论 -
@Transactional事务注解指定该注解采用的事务管理器
Spring版本必须是在3.x后,因为2.x里的@Transcation注解是不支持多数据源的。3.x后我们可以通过限定名来指点,该注解采用的事务管理器。如果不指定默认会使用名为“transationManager”的事务管理器。废话不多说,上样例: ... ... 我们通过qualifier原创 2012-07-02 15:17:35 · 4431 阅读 · 0 评论 -
eclipse生成javadoc时出错:编码GBK的不可映射字符
导出javadoc报错,估计是字符集问题。解决方法:project->Generate Javadoc然后一路next,只到在VM里面输入-encoding UTF-8 -charset UTF-8就ok了原创 2012-07-05 16:48:28 · 2437 阅读 · 0 评论 -
实现Castor数据绑定,把 Java 对象绑定到 SQL 数据库
导读: 级别: 高级 Brett McLaughlin(brett@newInstance.com), 作家兼编辑, OReilly Media Inc. 2008 年 4 月 30 日 通过前面的介绍,您已经了解到 Castor 实现 Java? 对象和 XML 之间的转换是多么灵活。Castor 还有更多的功能,包括将这些 Java 对象转化成 SQL 数据库中原创 2008-06-19 14:07:00 · 1209 阅读 · 0 评论 -
java的逆波兰式算法
package expression; import java.io.*; import java.util.*; public class Expression { private ArrayList expression = new ArrayList();// 存储中序表达式 private ArrayList right =转载 2008-05-30 13:10:00 · 1266 阅读 · 1 评论 -
Java字符编码转换
JVMJVM启动后,JVM会设置一些系统属性以表明JVM的缺省区域。user.language,user.region,file.encoding等。 可以使用System.getProperties()详细查看所有的系统属性。如在英文操作系统(如UNIX)下,可以使用如下属性定义强制指定JVM为中文环境 -Dclient.encoding.override=GBK -Dfile.encoding转载 2008-01-21 22:59:00 · 3614 阅读 · 0 评论 -
Java SE 6 新特性: XML API 与 Web 服务
Service Provider 机制对 于同一个功能,不同的厂家会提供不同的产品,比如不同品牌的轮胎、插头等。在软件行业,情况也是如此。比如,对于数据的加密解密,不同的厂家使用不同的算 法,提供强度各异的不同软件包。应用软件根据不同的开发需求,往往需要使用不同的软件包。每次更换不同的软件包,都会重复以下过程:更改应用软件代码 -> 重新编译 -> 测试 -> 部署。这种做法一般被称为开发时绑转载 2007-11-06 10:25:00 · 862 阅读 · 0 评论 -
Java SE 6 新特性: 编译器 API
新 API 功能简介JDK 6 提供了在运行时调用编译器的 API,后面我们将假设把此 API 应用在 JSP 技术中。在传统的 JSP 技术中,服务器处理 JSP 通常需要进行下面 6 个步骤: 分析 JSP 代码; 生成 Java 代码; 将 Java 代码写入存储器; 启动另外一个进程并运行编译器编译 Java 代码; 将类文件写入存转载 2007-11-06 10:18:00 · 712 阅读 · 0 评论 -
Java SE 6 新特性: 对脚本语言的支持
Java 脚本 API 概述 脚本引擎 脚本引擎就是指脚本的运行环境,它能能够把运行其上的解释性语言转换为更底层的汇转载 2007-11-06 10:23:00 · 1116 阅读 · 0 评论 -
Java SE 6 新特性: Java DB 和 JDBC 4.0
Java DB:Java 6 里的数据库新 安装了 JDK 6 的程序员们也许会发现,除了传统的 bin、jre 等目录,JDK 6 新增了一个名为 db 的目录。这便是 Java 6 的新成员:Java DB。这是一个纯 Java 实现、开源的数据库管理系统(DBMS),源于 Apache 软件基金会(ASF)名下的项目 Derby。它只有 2MB 大小,对比动辄上 G 的数据库来说可谓袖珍转载 2007-11-06 10:20:00 · 734 阅读 · 0 评论 -
Java SE 6 新特性: HTTP 增强
概述Java 语言从诞生的那天起,就非常注重网络编程方面的应用。随着互联网应用的飞速发展,Java 的基础类库也不断地对网络相关的 API 进行加强和扩展。在 Java SE 6 当中,围绕着 HTTP 协议出现了很多实用的新特性:NTLM 认证提供了一种 Window 平台下较为安全的认证机制;JDK 当中提供了一个轻量级的 HTTP 服务器;提供了较为完善的 HTTP Cookie 管理功转载 2007-11-06 10:10:00 · 653 阅读 · 0 评论 -
Java SE 6 新特性: Instrumentation 新功能
Instrumentation 简介利 用 Java 代码,即 java.lang.instrument 做动态 Instrumentation 是 Java SE 5 的新特性,它把 Java 的 instrument 功能从本地代码中解放出来,使之可以用 Java 代码的方式解决问题。使用 Instrumentation,开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和转载 2007-11-06 10:09:00 · 679 阅读 · 0 评论 -
Thinking in Java笔记之初始化清理
第四章 初始化清理1. 重载函数的参数匹配。 a. 传入的实际参数类型小于方法中声明的形式参数类型,实际参数的类型就会被提升。但char除外,如果没有恰好接受char的方法,就会把char提升为int。 b. 传入的实际参数类型大于方法中声明的形式参数类型,就得显示的类型转换,否则会报错。但这种窄化转换会丢失信息。2. 在构造器中调用构造器。 如果一个类中有多个构造器,你可以在一个构造器中调用原创 2006-09-21 14:22:00 · 961 阅读 · 0 评论 -
Thinking in java笔记之控制程序流
控制程序流1. 打印输出 可用相应数据类型(基本类型)的打印语句打印字符串和数字 如: int i = 10; float f = 10.9f; printInt("Integer:", i); printFloat("Float:", f); Random rand = new Random(); int i; double d; long l; i = rand.NextInt();原创 2006-09-15 16:38:00 · 966 阅读 · 0 评论 -
java编码转换的详细过程
常见的JAVA程序包括以下类别:*直接在console上运行的类(包括可视化界面的类)*JSP代码类(注:JSP是Servlets类的变型)*Servelets类*EJB类*其它不可以直接运行的支持类这些类文件中,都有可能含有中文字符串,并且常用前三类JAVA程序和用户直接交互,用于输出和输入字符,如:在JSP和Servlet中得到客户端送来的字符,这些字符也包括中文字符。无论这些JAVA转载 2008-01-21 22:56:00 · 9449 阅读 · 1 评论 -
实现 Castor 数据绑定,第 2 部分: 编组和解组 XML
2007 年 12 月 27 日本系列的上一期文章中,我们下载、安装和设置了 Castor。本文将介绍如何把 Java™ 类转化成 XML 然后再把 XML 转换回 Java 代码,以及 Castor 的工作原理,如何保证类的设计适应这种 API。需要准备什么开始之前需要保证具备了本文所需要的前提条件。确保满足这些要求最简单的办法就是按照 本系列第一篇文章(链接参见本文 参考资料 部分转载 2008-02-01 11:04:00 · 978 阅读 · 0 评论 -
Swing中弹出对话框
今天回答不个swing中弹出框的问题,自己也把弹出框整理下.Swing中的弹出式对话框是用JOptionPane实现的, 通过showXXXDialog()来显示.其方式都是静态的.弹出框的样式一共有四种:ConfirmDialog:确认对话框(有类似Yes,No等按钮的那种).你也可以传不同的参数进去来改变显示的按钮和iconInputDialog:文本输入对话框Messa原创 2008-01-31 14:35:00 · 6861 阅读 · 0 评论 -
JavaScript中confirm方法的重载
script language=javascript> function window.confirm(str)...{ str=str.replace(//g, "&chr(39)&").replace(/ | | /g, "&VBCrLf&"); execScript("n = msgbox("+ str +", vb原创 2008-01-18 09:52:00 · 2956 阅读 · 0 评论 -
实现 Castor 数据绑定,第 3 部分: 模式之间的映射
使用 Castor 映射文件级别: 高级Brett D. McLaughlin, Sr. (brett@newInstance.com), 作家兼编辑, OReilly Media, Inc.2008 年 3 月 03 日在阅读了本系列的第 1 部分和第 2 部分之后,您应该已经熟悉如何使用 Castor 把 XML 转换成 Java™,然后再把 Java 转换回 XML。在转载 2008-04-09 16:25:00 · 1059 阅读 · 0 评论 -
把安装好的netbeans拷贝到另一个机器下使用要修改的内容
一个个的找。找到了慢慢补全。暂找到这一个,改了后可以进去运行,自己写个简单的程序运行也没问题1.etc/netbeans.conf下设置netbeans_jdkhome 2.如果是在windows系统下要把 C:/Documents and Settings/%username%/.netbeans 这个目录也拷贝下来. 虽然这个目录不拷贝,在新的机器上也能运行,它也会自动的生成原创 2008-01-11 16:43:00 · 1131 阅读 · 0 评论 -
让java程序自带jre
用java开发程序,发布时总要考虑的问题就是怎么在使用者的机器上装好jre。要考虑的问题很多:使用者有没有能力独自安装jre,使用者已有的jre 和我们需要的版本是不是一致,会不会出现版本问题,等等。使用.net要考虑的问题就少些。现在.net clr似乎已经很普及了,看好多d版的 win xp都会自己安装最新的.net clr,而且似乎它的安装界面也比jre友好些。彻底解决安装jre的问题的方案转载 2008-01-11 09:34:00 · 1697 阅读 · 0 评论 -
在桌面应用程序中实现 Beans 和数据绑定
在桌面应用程序中实现 Beans 和数据绑定 <!--google_ad_client = "pub-2332279788637932";//300x250, 创建于 07-12-5google_ad_slot = "9916274731";google_ad_width = 300;google_ad_height = 250;//-->转载 2007-12-25 11:03:00 · 1811 阅读 · 0 评论 -
使用 dom4j 解析 XML
导读: 未显示需要 JavaScript 的文档选项 级别: 初级 Deepak Vohra(dvohra09@yahoo.com), Web 开发人员 2004 年 4 月 01 日 dom4j 是一种解析 XML 文档的开放源代码 XML 框架。本文介绍如何使用包含在 dom4j 中的解析器创建并修改 XML 文档。 dom4j API 包含一个解析 XML 文原创 2008-02-02 08:50:00 · 889 阅读 · 1 评论