
J2SE
myyate
这个作者很懒,什么都没留下…
展开
-
用i=i++ + ++i带你入门javap
用i=i++ + ++i带你入门javap关键字:java javap和作者联系:xiaozuidaizhi@sina.com============================================================================================ 摘要: javap是一个很好的深入查看程序内部运行机制的工具,不过它有不同于转载 2007-07-24 10:26:00 · 813 阅读 · 0 评论 -
数据、过程和接口
原文:http://blog.sina.com.cn/s/blog_4b6047bc010009cq.html我经常在胡思乱想一些关于软件编程的哲学问题。 从机器语言到汇编,从汇编到面向过程的语言,从面向过程的语言到面向对象的语言,它们实际都在描述三种实体:数据、过程和接口。只是每种领域语言的侧重点不同。数据是基础,是信息的载体。过程反映了数据上的变化和行为,是由数据被赋予信息内涵原创 2008-02-19 09:48:00 · 441 阅读 · 0 评论 -
Java并发编程-线程(二)
原文:http://blog.sina.com.cn/s/blog_4b6047bc0100099n.html 从一开始Java就被设计成支持并发编程的语言,java语言及其核心类库都有对并发编程的支持。从5.0开始,Java平台引入了一些高层的并发接口。本系列文章将尽可能的概括这些内容。进程与线程 并发编程模式中,有两个基本执行单元:进程与线程。进程和线程是现代操作系统的基本概念原创 2008-02-19 09:51:00 · 991 阅读 · 1 评论 -
BeanUtils.copyProperties时日期的拷贝
首先定义一个Converter的Date实现类import java.util.Date;import org.apache.commons.beanutils.ConversionException;import org.apache.commons.beanutils.Converter;import cn.sh.cares.commons.excel.util.Excel原创 2007-11-28 10:27:00 · 4375 阅读 · 1 评论 -
Java并发编程-概念(一)
原文:http://blog.sina.com.cn/s/blog_4b6047bc0100098g.html 并发编程是现代计算机软件最常见的编程模式,是操作系统到应用软件到分布式系统都要关心的问题,其核心目标是解决并行事件的资源共享和访问问题。 自从学生时代,我就一直在学习和并试图理解这些概念。尤其是在学操作系统时,曾经想得觉得自己脑壳都要爆炸了。许多东西是要随着知识和原创 2008-02-19 09:49:00 · 1127 阅读 · 1 评论 -
Java并发编程-同步(六)
原文:http://blog.sina.com.cn/s/blog_4b6047bc010009dc.html 线程除要对共享数据保证互斥性访问外,往往还需保证线程的操作按照特定顺序进行。解决多线程按照特定顺序访问共享数据的技术称作同步。同步技术最常见的编程范式是同步保护块。这种编程范式在操作前先检测某种条件是否成立,如成立则继续操作;如不成立则有两种选择,一种是简单的循环检测,直至此条原创 2008-02-19 09:55:00 · 692 阅读 · 0 评论 -
通过HttpURLConnection提交参数值
网上偶尔看到这个东西,看了自己写了一下。做个记录,希望以后有用。public class HttpConnectionPostTest { public static void main(String[] args) throws Exception { //设置代理,公司用的是代理上网 System.setProperty("proxySet", "tru原创 2008-02-26 10:21:00 · 1374 阅读 · 0 评论 -
instanceof运算符、Class的isInstance( )与isAssignableFrom
instanceof运算符 只被用于对象引用变量,检查左边的被测试对象是不是右边类或接口的实例。如果被测对象是null值,则测试结果总是false。 形象地:自身实例或子类实例 instanceof 自身类,返回true。 Class类的isInstance(Object obj)方法,obj是被测试的对象,如果obj是调用这个方法的class或接口原创 2007-12-05 09:15:00 · 664 阅读 · 0 评论 -
java.util.ConcurrentModificationException解决
今天组长提了一个问题注意点,说删除Set元素的时候,如果按照一下代码则会抛出异常: SetObject> bb = new HashSetObject>(); bb.add("23242"); bb.add(Integer.valueOf(45)); Iterator it = bb.iterator(); while(it.hasNext()) {原创 2007-12-17 09:33:00 · 5434 阅读 · 2 评论 -
空数组的表示方法
看EventListeners的源代码,发现 private PreDeleteEventListener[] preDeleteEventListeners = {}; private PreUpdateEventListener[] preUpdateEventListeners = {}; private PreInsertEventListener[]原创 2007-12-18 15:58:00 · 1331 阅读 · 0 评论 -
线程sleep()和wait()的区别
sleep()是让某个线程暂停运行一段时间,其控制范围是由当前线程决定,也就是说,在线程里面决定.好比如说,我要做的事情是 "点火->烧水->煮面",而当我点完火之后我不立即烧水,我要休息一段时间再烧.对于运行的主动权是由我的流程来控制. 而wait(),首先,这是由某个确定的对象来调用的,将这个对象理解成一个传话的人,当这个人在某个线程里面说"暂停!",也是 thisO转载 2008-03-15 13:42:00 · 2365 阅读 · 0 评论 -
取得类中属性的泛型类型
class GGG { private MapString, Double> field; public MapString, Double> getField() { return field; } public void setField(MapString, Double> field) { this.field = field;原创 2008-03-20 16:26:00 · 777 阅读 · 0 评论 -
更改文件后缀名
private void changeFilePostfix(File file, String postfix) { String filePath = file.getAbsolutePath(); String newFilePath = filePath.substring(0, filePath.lastIndexOf("."))原创 2008-01-15 10:38:00 · 663 阅读 · 0 评论 -
mht文件的3dus-ascii编码转换
在mht文件中,可以看到汉字的编码变了,如“中国”变为“中国”这种其实 是unicode码的10进制表示,我们在java中一般看到的unicode码都是16进制的。主要写个10进制unicode和16进制unicode转换程序,以后可以参考一下,这个对于这次项目中查询数据并根据模板导出到word中,解决了几周来的乱码问题。public class原创 2008-04-08 12:44:00 · 5020 阅读 · 2 评论 -
Java中根据模板导出数据到word的解决方案
我们需求如下:给你一个模板,里面有一个表格,标题已经给好,程序主要就是完成把数据填写到word中并提供给用户下载。 网上找了很久,发现主要两种开源包:POI和Jacob,Jacob首先被否决掉了,因为他最后必须运行在windows平台上。Excel导入导出我就是用的POI,但是POI中的word操作实在不行,读取还可以,写入数据远不能满足项目的需要。后面尝试诸如生成PDF然后原创 2008-01-17 16:38:00 · 25603 阅读 · 90 评论 -
POI根据Excel模板导出数据
Excel和Word数据导入导出通用程序今天已经完成了。把excel的部分代码贴过来吧。 public File export(Class dtoClass, Object[] dtos, int recordCountPerSheet) { Assert.notNull(dtoClass); Assert.isTrue(dtos instanceof D原创 2008-01-17 17:07:00 · 7134 阅读 · 13 评论 -
Java并发编程-常量对象(七)
原文:http://blog.sina.com.cn/s/blog_4b6047bc010009wz.html 在创建后状态不再发生改变的对象称作常量对象(Immutable Objects)。常量对象其可靠性使其广泛地用作开发简单可靠代码的策略。常量对象在开发并发程序中非常有用。由于创建后不能被改变状态,它们不会被线程干扰所破坏,不可能产生不一致的观察状态。 Java程序原创 2008-02-19 09:56:00 · 659 阅读 · 0 评论 -
Java并发编程-活性(五)
原文:http://blog.sina.com.cn/s/blog_4b6047bc010009da.html 前一节中提到不正确的使用互斥技术会导致各种活性问题。所谓程序活性是指并发应用程序能够按时完成动作的能力。常见活性问题主要有死锁(Deadlock)、饥饿(Starvation)和活锁(Livelock)。死锁 死锁是指多个线程为竞争某些共享资源而陷入无限等待状态。举个原创 2008-02-19 09:54:00 · 766 阅读 · 0 评论 -
Java并发编程-互斥(四)
原文:http://blog.sina.com.cn/s/blog_4b6047bc010009d4.html原子动作 前文讲到,不同线程的操作在访问共享数据时,会因为交织进行而导致线程干扰和内存一致性错误。大多数Java语句在编译成伪代码后都由多条虚拟机指令组成,这使它们有可能被其他线程的语句所分割交织。不能分割交织的操作乘称作原子动作,这些动作一旦发生,便不能在中途停止,要么完全发生原创 2008-02-19 09:53:00 · 2957 阅读 · 0 评论 -
Java性能优化(1)
Java性能(来源:java编程思想) “本附录由Joe Sharp投稿,Java语言特别强调准确性,但可靠的行为要以性能作为代价。这一特点反映在自动收集垃圾、严格的运行期检查、完整的字节码检查以及保守的运行期同步等等方面。对一个解释型的虚拟机来说,由于目前有大量平台可供挑选,所以进一步阻碍了性能的发挥。“先做完它,再逐步完善。幸好需要改进的地方通常不会太多。”(Steve McConnell的《转载 2007-07-24 12:10:00 · 542 阅读 · 0 评论 -
Java性能优化(2)
Java在九十年代中期出现以后,在赢得赞叹的同时,也引来了一些批评。赢得的赞叹主要是Java的跨平台的操作性,即所谓的”Write Once,Run Anywhere”.但由于Java的性能和运行效率同C相比,仍然有很大的差距,从而引来了很多的批评。 对于服务器端的应用程序,由于不大涉及到界面设计和程序的频繁重启,Java的性能问题看似不大明显,从而一些Java的技术,如JSP,Servlet,转载 2007-07-24 12:12:00 · 676 阅读 · 0 评论 -
NIO 学习笔记
在JDK 1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO API作为一个基于缓冲区,并能提供非阻塞(non-blocking)IO操作的API被引入。本文对其进行深入的介绍。转载 2007-07-24 15:59:00 · 630 阅读 · 0 评论 -
POI Excel整理
用POI的HSSF来控制EXCEL的研究 1.创建工作簿 (WORKBOOK) HSSFWorkbook wb = new HSSFWorkbook(); FileOutputStream fileOut = new FileOutputStream("workbook.xls"); wb.write(fileOut); fileOut.close();2.创建工作表(S原创 2007-09-18 15:43:00 · 1486 阅读 · 0 评论 -
Java中对日期的处理
Java在国际化和本地化方面做得相当出色。在这篇文章中我们主要向大家介绍如何使用java向不同时区或不同国家的人们显示时间。本文中主要涉及的类为 Java.util.Date Java.util.DateFormat Java.util.Locale Java.util.TimeZone 首先让我们来熟悉以下Locale类,请看下面的代码: import原创 2007-09-18 15:57:00 · 788 阅读 · 0 评论 -
java如何控制输出数字的格式
在java.text包中提供了这样的功能。下面首先看一个比较简单的例子:对于数字的格式化的几个常用的类: NumberFormat DecimalFormat import java.text.*; import java.util.Locale; public class FormatTest ...{ public static void mai原创 2007-09-18 16:01:00 · 3937 阅读 · 0 评论 -
JavaEye上关于异常的讨论
异常很早就看到了,不过一直没有把上面的帖子整理下来。今天不小心又看到了,就整理一下吧:)帖子:http://www.javaeye.com/post/9540 (为什么 Java 中要使用 Checked Exceptions ) jbaggio:原文:http://www.onjava.com/pub/a/onjava/2003/11/19/exceptions.html作者原创 2007-09-19 14:50:00 · 760 阅读 · 0 评论 -
Class,ClassLoader的getResource()和getResourceAsStream()区别
今天研究Spring源码中Resource的时候,用到其工具类ResourceUtils其中的getFile(String resourceLocation)。发现了Class和ClassLoader的这两个方法。先把我的工程目录贴到这儿吧,如下图:Java代码如下:public class ResourceTest ...{ public static Strin原创 2007-09-20 14:38:00 · 5913 阅读 · 0 评论 -
ClassLoader入门
链接:http://www.javaeye.com/topic/83978?page=1作者:calmness 与普通程序不同的是,Java程序(class文件)并不是本地的可执行程序。当运行Java程序时,首先运行JVM(Java虚拟机),然后再把Java class加载到JVM里头运行,负责加载Java class的这部分就叫做Class Loader。 在原创 2007-09-21 10:08:00 · 988 阅读 · 0 评论 -
深入理解interface和abstract class
转csdn,文章分析的确实不错 abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface转载 2007-10-19 16:03:00 · 484 阅读 · 0 评论 -
Java日期第一天最后一天
同学叫我帮他写个小util类,我以前也没弄过,写了先存这儿,以后估计自己也得用。 public abstract class DateUtils ...{ /** *//** * 取得日期所在周的第一天 * @param date * @return */ public static Date getFirstWeekDay(Date da原创 2007-09-26 13:53:00 · 1845 阅读 · 0 评论 -
java中生成文件的编码问题
今天下载了很多txt格式的书,准备放到手机里无聊的时候看看。可是在手机里显示竟然是乱码,原来txt默认文件编码是ASCII码,于是我把其中一个文件改成unicode码,拷到手机里居然就可以 正常显示。但是下载几十部书,每部书大概有20个txt文件,数量比较多,手工改的话估计吃不消,我就写了个java程序试着能否把文件默认格式转成unicode码格式。程序如下:/** * 给定一原创 2007-10-25 16:33:00 · 2192 阅读 · 0 评论 -
使用代理上网的情况下,如何使用java的URL
公司是用代理上网的,使用url.openConnection()的时候一直报连接超时的exception,我自己试了上网又是可以的,后来发现原来是使用代理的缘故。public class Test ...{ public static void main(String[] args) throws Exception ...{ //原创 2007-10-11 10:20:00 · 1035 阅读 · 0 评论 -
java实现图像缩略
//缩略图实现,将图片(jpg,gif,bmp等等)真实的变成想要的大小 import java.io.*; import java.util.*; import com.sun.image.codec.jpeg.*; import java.awt.image.*; import java.awt.*; import java.net.*; import java转载 2007-11-07 14:48:00 · 551 阅读 · 0 评论 -
Java中Uuid的实现
1、一种Native的实现,产生真正的Uuid,好像用的人挺多的。http://www.doomdark.org/doomdark/proj/jug/开源的,LGPL协议。是采用了Native的方式实现的,不过提供了不同的平台的实现。包括:FreeBSD_x86Linux_x86MacOSX_ppcSolaris_sparcWin_x86使用方式如下:import org.doomdark.uui转载 2008-01-28 08:41:00 · 1338 阅读 · 0 评论 -
Java并发编程-问题(三)
原文:http://blog.sina.com.cn/s/blog_4b6047bc010009co.html 线程之间共享数据引起了并发执行程序中的同步问题。那些数据是可能需要同步访问的呢?很简单,线程之间能够共享的数据,也就是对多个线程可见的数据。 Java的数据有两种基本类型内存分配模式(不算虚拟机内部类型,详细内容参见虚拟机规范):运行时栈和堆两种。由于运行时栈是线程所私原创 2008-02-19 09:52:00 · 1287 阅读 · 0 评论