
J2se点滴
文章平均质量分 70
qking93415981
这个作者很懒,什么都没留下…
展开
-
Java同步机制!
自:http://blog.youkuaiyun.com/cswei1021/archive/2005/05/31/385213.aspxJava对多线程的支持与同步机制深受大家的喜爱,似乎看起来使用了synchronized关键字就可以轻松地解决多线程共享数据同步问题。到底如何?――还得对synchronized关键字的作用进行深入了解才可定论。总的说来,synchronized关键字可以作为函数的转载 2007-08-16 17:14:00 · 467 阅读 · 0 评论 -
线程池的介绍及简单实现
服务器程序利用线程技术响应客户请求已经司空见惯,可能您认为这样做效率已经很高,但您有没有想过优化一下使用线程的方法。该文章将向您介绍服务器程序如何利用线程池来优化性能并提供一个简单的线程池实现。 线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在J转载 2007-09-27 13:37:00 · 915 阅读 · 0 评论 -
jftp通过sftp协议上传文件
jftp是一个支持多协议的网络传输工具,包括ftp,sftp等package upload.multi;import java.io.InputStream;import net.sf.jftp.net.SftpConnection;import com.sshtools.j2ssh.configuration.SshConnectionProperties;public class SF原创 2007-10-12 14:13:00 · 952 阅读 · 0 评论 -
使用svnClientAdapter编程控制上传下载已经实现
public class SvnClientUtil { private SvnConfig config; private ISVNClientAdapter svnClient; private SvnClientUtil(){} public SvnClientUtil(SvnConfig config)throws SVNClientException{原创 2007-11-02 17:59:00 · 978 阅读 · 0 评论 -
java获取本机的ip地址
可以用如下代码: InetAddress inet = InetAddress.getLocalHost(); System.out.println("本机的ip=" + inet.getHostAddress());在window下面可以工作。在linux下返回127.0.0.1。主要是在linux下返回的是/etc/hosts中配置的lo原创 2008-01-09 10:20:00 · 421 阅读 · 0 评论 -
java 执行操作系统命令
java 执行操作系统命令,包括输出信息的获取和超时判断 package com.ctoc.web.msgtools.smtplog;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;public cla原创 2008-01-09 17:01:00 · 498 阅读 · 0 评论 -
java 类路径说明
Thread.currentThread().getContextClassLoader().getResource("")Log4jConfigUtil.class.getClassLoader().getResource("");//Log4jConfigUtil类的类加载器,加载class的根路径ClassLoader.getSystemResource("");//当前类加载器,加载cla原创 2008-10-21 17:28:00 · 1286 阅读 · 0 评论 -
JSON JavaBean 互转工具
在json.org上面可以看到现在java方面的支持json的开源项目很多。最近稍微看了下gson和json-lib,第一次使用印象如下:1、gson提供了一个JSONJavaBean相互转换的框架,采用了java中的reflect,同时类型转换要求比较严格, 如果是图方便最好还是用json-lib。第一眼就没看出来怎么用,后来才发现://json->java String src原创 2008-10-22 14:13:00 · 3617 阅读 · 0 评论 -
创建按照加入顺序排序的map
大家都知道treemap是有序的map,不过默认是 自然序,有时需要按照添加顺序进行排序的map,其实只需要加入一个自定义的 Comparator即可 、 static class DftComparetor implements Comparator{ List l = new LinkedList(); public int compare(String o原创 2009-01-07 11:48:00 · 936 阅读 · 0 评论 -
java 运算速度问题
以下几个循环 执行时间有较大不同 public class TestOp{ @Test public void test(){ for(int j =0;j<10;j++){ int times = 10000; long s = System.nanoTime(); for(int i=0;i<times ;i++){} long e1 = S原创 2009-04-28 17:58:00 · 429 阅读 · 0 评论 -
构建可扩展的Java EE应用(二)
当并发用户数明显的开始增长,你可能会不满意一台机器所能提供的性能,或者由于单个JVM实例gc的限制,你没法扩展你的java应用,在这样的情况下你可以做的另外的选择是在多个JVM实例或多台服务器上运行你的系统,我们把这种方法称为水平扩展。请注意,我们相信能够在一台机器的多个JVM上运行系统的扩展方式是水平扩展方式,而非垂直扩展方式。JVM实例之间的IPC机制是有限的,两个JVM实例之转载 2009-04-29 11:45:00 · 334 阅读 · 0 评论 -
Java 理论与实践: 正确使用 Volatile 变量
volatile 变量使用指南 级别: 中级 Brian Goetz (b转载 2007-09-29 17:52:00 · 450 阅读 · 0 评论 -
守护线程(Daemon)
守护线程(Daemon)Java有两种Thread:“守护线程Daemon”与“用户线程User”。我们之前看到的例子都是用户,守护线程是一种“在后台提供通用性支持”的线程,它并不属于程序本体。从字面上我们很容易将守护线程理解成是由虚拟机(virtual machine)在内部创建的,而用户线程则是自己所创建的。事实并不是这样,任何线程都可以是“守护线程Daemon”或“用户线程Use转载 2007-09-27 14:56:00 · 1158 阅读 · 0 评论 -
java----volatile, 用更低的代价替代同步
//简单同步代码:public class MyTestThread extends MyTest implements Runnable { private boolean _done = false; public synchronized boolean getDone() { return _done; } public synchronized转载 2007-09-29 17:32:00 · 415 阅读 · 0 评论 -
非阻塞IO典型例子
Java 非阻塞IO常用于高性能的服务器程序。对于阻塞式IO常常需要多个线程来处理客户端的请求,由于线程的开销较大,往往使服务器性能下降很快。而非阻塞IO只需几个线程就可以胜任大量的请求。对于p2p软件(例如BT软件),也常常使用非阻塞IO,来实现文件交换。 下面是一个典型的非阻塞IO程序。客户端向服务器端发起10个连接,服务器端向每个客户端发送”Hello”,并打印出来。转载 2007-05-23 20:28:00 · 847 阅读 · 0 评论 -
Java操作XML文件 dom4j 篇
在项目中,我们很多都用到了xml文件,无论是参数配置还是与其它系统的数据交互。今天就来讲一下Java 中使用dom4j来操作XML文件。我们需要引入的包://文件包 import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileWriter; //工具包 import java.util.It原创 2007-08-24 08:26:00 · 550 阅读 · 0 评论 -
非阻塞套接字(Nonblocking Sockets) 概述
Giuseppe Naccarato 著 张明星 译09/04/2002非阻塞套接字(Nonblocking sockets),自J2SE 1.4版引入,它允许网络通信在应用程序和没有阻塞的进程中使用套接字。在这篇文章中,将详细介绍什么是Nonblocking sockets,怎样工作及其用途。由于JSR 51的面世,从Java 1.4起,程序员便能用一组新的API来进行I/O操作。自2000转载 2007-05-23 20:59:00 · 598 阅读 · 0 评论 -
java动态加载jar包
package com.te.classloader;import java.io.File;import java.io.PrintStream;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.net.MalformedURLException;import java.net.URL;imp原创 2007-08-29 14:01:00 · 2593 阅读 · 0 评论 -
java 自定义事件
package com.te.event.other;import java.util.EventObject;/** * Title: 事件处理类,继承了事件基类 * Description: * Copyright: Copyright (c) 2005 Company: * cuijiang * * @author not attributable * @version 1.0 *转载 2007-08-29 14:45:00 · 3802 阅读 · 2 评论 -
dom4j读XML
package test;import java.util.Iterator;import java.util.List;import org.dom4j.Attribute;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.DocumentHelper;import org.dom原创 2007-09-14 14:33:00 · 1188 阅读 · 0 评论 -
彻底解决xml读写乱码问题
读写xml时中文乱码是很常见的事,先总结了一个读写工具类:package xmlRw;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStreamReader;import java.io.OutputStreamWriter;im原创 2007-09-14 15:23:00 · 1031 阅读 · 0 评论 -
java面试题
第一,谈谈final, finally, finalize的区别。QUOTE: final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中原创 2007-09-17 11:24:00 · 300 阅读 · 0 评论 -
Java内部类
<!--.unnamed1 { padding-top: 6px; padding-right: 6px; padding-bottom: 6px; padding-left: 6px}--> 提起Java内部类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是转载 2007-09-17 11:26:00 · 333 阅读 · 0 评论 -
java异常处理笔记
一些印象不是很深刻的东东1、finallya、就算try里面有catch没有捕获到的异常,finally也会被执行!b、java异常处理的bugpublic class LostMessage(){ void f() throws VeryImportantException{ throw new VeryImportantException(); }原创 2007-09-29 16:09:00 · 503 阅读 · 1 评论 -
【转】构建可扩展的Java EE应用(一)
这是我看到的关于java应用上最好的一篇文章,作者的功底很深! 对于一个具备使用价值的应用而言,其使用者有可能会在一段时间内疯狂的增长。随着越来越多的关键性质的应用在JavaEE上运行,很多的Java开发者也开始关注可扩展性的问题了。但目前来说,大部分的web2.0站点是基于script语言编写的,对于Java应用可扩展能力,很多人都抱着质疑的态度。在这篇文章中,Wang转载 2009-04-29 11:42:00 · 299 阅读 · 0 评论