JAVA學習
文章平均质量分 51
冯立彬
每天前进一步
展开
-
(编程解决)List和Hashtable都是可以存储数据的,可为什么有时选择List,有时需要Hashtable,这两个有什么区别?
(编程解决)List和Hashtable都是可以存储数据的,可为什么有时选择List,有时需要Hashtable,这两个有什么区别?这是一个面试经常问到的问题,我就被问到过,原来还真的没有考虑过这样的问题,只是去比较该用Vector还是ArrayList,该用 Hashtable还是该用HashMap了,我喜欢用示例测试,并在其中加上附注,这样更好理解,如需要看更详细的集合之间的关系,原创 2007-09-06 16:09:00 · 10699 阅读 · 1 评论 -
创建型设计模式---JAVA Singleton模式(单身模式)
创建型设计模式---JAVA Singleton模式(单身模式)2007-10-26 10:04 Java Singleton 模式(单身模式,单态模式)是一种创建型设计模式。用来保证在运行的应用程序中,一个Class只是实例化一次,也就是只有一个相应的对象存在。在 web 程转载 2007-11-08 00:02:00 · 7780 阅读 · 1 评论 -
java二进制,字节数组,字符,十六进制,BCD编码转换
// 整数到字节数组转换 public static byte[] int2bytes(int n) { byte[] ab = new byte[4]; ab[0] = (byte) (0xff & n); ab[1] = (byte) ((0xff00 & n) >> 8); ab[2] = (byte) ((0xff0000 & n) >> 16);转载 2008-10-09 19:54:00 · 9192 阅读 · 0 评论 -
应用HttpClient来对付各种顽固的WEB服务器
转自:http://www.wangchao.net.cn/bbsdetail_244805.html 一般的情况下我们都是使用IE或者Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等。所访问的这些页面有的仅仅是一些普通的页面,有的需要用户登录后方可使用,或者需要认证以及是一些通过加密方式传输,例如HTTPS。目前我们使用的浏览器处理这些情况都不会构转载 2009-11-07 17:01:00 · 1695 阅读 · 0 评论 -
JDom输出UTF-8的XML完美解决
转贴地址:http://java.chinaitlab.com/advance/755393.html现象描述:JDom输出Xml文件,当使用字符编码GBK时正常,而输出UTF-8时乱码。 完美的解决方法从辟谣开始: 1)JDOM是否生成UTF-8的文件与Format是否设置无关,只有输出其他字符编码才需要设置,见下面的注释。 2)JDOM输出UTF-8文件乱码的根本原因转载 2010-02-22 15:51:00 · 8300 阅读 · 0 评论 -
Java平台上进行多线程编程的缺陷
转自:http://www.softhouse.com.cn/news/show/104219.htmlJava平台上进行多线程编程的缺陷 Java 语言的并发编程 就其自身来说,并发编程是一种技术,提供了操作的同时执行,不论是在单一系统上还是分布在大量系统上。这类操作实际是一些指令顺序,例如单独某个顶级任务的子任务,这类操作能够并行执行,或者是作为线程,或者是作为进程。线转载 2010-03-12 13:30:00 · 2301 阅读 · 0 评论 -
高级线程开发(线程池、资源封锁和队列)
转自:http://my.oschina.net/dxf/blog/239jdk1.5后,提供了java.util.concurrent包,它可以实现线程池,你把线程当成普通对象就可以了,它来负责调度和执行包括两类线程池固定线程池可变线程池延迟线程池 固定线程池public static ExecutorService newFixedThreadPool(in转载 2010-03-12 13:37:00 · 3172 阅读 · 0 评论 -
关于JVM默认内存的增加
本文转自:http://blog.csdn.net/lanwei6312/archive/2006/09/19/1244439.aspx本文介绍:TOMCAT、JBOSS、WEBSPHERE中增加内存的方式,对个人的具体应用也可以通过指定参数增加内存,如本人使用的报文服务启动的时候,为了使系统运行更顺畅,并保证在有大数据的时候不会出现内存溢出的错误,因而需要指定JVM内存启动,启动方式如:转载 2010-04-15 13:33:00 · 13946 阅读 · 2 评论 -
Lucene:基于Java的全文检索引擎简介
本文转自车东的博客:http://www.chedong.com/tech/lucene.htmlLucene是一个基于Java的全文索引工具包。基于Java的全文索引引擎Lucene简介:关于作者和Lucene的历史全文检索的实现:Luene全文索引和数据库索引的比较中文切分词机制简介:基于词库和自动切分词算法的比较具体的安装和使用简介:系统结构介绍和演示Hacking Lu转载 2011-11-15 14:33:49 · 2263 阅读 · 1 评论 -
WEBSOCKET协议判断、握手及反馈
消息中心的布点,是通过WEBSOCKET与后端服务器建立长连接的方式实现的,这种方式的优点一是节约网络带宽,二是用户可以实时的收到由后台发过来的消息,后端的实现采用的是NETTY,经过压力测试,每台服务器可以承受50万的长连接,也就是同时50万个用户(只为每个网站用户建立一个长连接),性能上还是比较好的。 要建立长连接,首先需要由客户端发起与服务端的握手动作,以下是从wikipedia找原创 2011-08-19 10:48:37 · 26806 阅读 · 2 评论 -
"服务器无法继续该事务 3400000006"错误原因--JAVA调用SQLSERVER存储过程时过程发生异常内部事务未提交
通过JAVA调用SQLSERVER存储过程时,存储过程内部发生了类型转换异常,在类型转换异常发生之前已经将事务打开了,并且在类型转换那一行没有采用像如下错误处理: if @@error goto err end 导致了过程在发生异常的时候直接中断返回JAVA,此时过程内部的事务并没有提交,根据MICROSOFT的文档如果存储过程内部有事务并且事务没有原创 2010-01-08 17:41:00 · 11811 阅读 · 0 评论 -
采用FTP协议实现文件的上传
请先明白一点,HTTP上传和FTP上传是不一样的,HTTP上传会带有头文件等等,你得分析,也就是通过网页上传。通过FTP上传不用,因为他不会带头文件,操作方式其实就和你在本地操作一个文件复制到另外一个地方没有什么区别,只是使用的类不一样而已。下面是具体实现的原文件: import java.io.File;import java.io.FileInputStream;import s原创 2007-10-09 19:42:00 · 10117 阅读 · 0 评论 -
20070929迅雷面试部分题
20070929迅雷面试部分题在做的时候,把部份觉得有意义的题记录下来,所谓有意义,就是我不太会的,不太懂的,不太明白的,平时没有注意的等等,结果一做,发现居然只有几个没有错。1、结出如下程序的打印结果父类:publicclass Father { public Father() { System.out.println("Father!"原创 2007-09-30 22:39:00 · 7671 阅读 · 1 评论 -
二重继续,都有相同的方法,怎么样在第三层访问最顶层的同名方法?
二重继续,都有相同的方法,怎么样在第三层访问最顶层的同名方法?这个问题,是我在看《Think in Java》的时候,突然想到的,不知道行不行,想测试,我没有测试通过,不知道是不行吗,还是我没有找对方法。如下面三个类:abstractclass A { void p() { System.out.println("A"); }}p原创 2007-09-06 16:31:00 · 6274 阅读 · 1 评论 -
AWT机器人类Robot,实现屏幕的"拍照"
AWT机器人类Robot,实现屏幕的"拍照" 很多时候,我们希望能为我们的JAVA程序实现自动测试,自动演示功能,或者是其它的一些鼠标和键盘控制的应用。出于这样的目的,自从JDK1.3开始,它就为我们提供了一个用来产生本机输入事件的机器人类--java.awt.Robot. 下面我们来看看Robot为我们提供了哪些功能。 BufferedImage cre原创 2007-09-07 11:06:00 · 7041 阅读 · 0 评论 -
JAVA操作属性文件,可进行读、写、更改
JAVA操作属性文件/*操作属性文件,可以为我们的程序带来更方便的移植性,下面是一个示例,可以读、写、更改属性读采用了两种方式,一种是采用Properties类,另外一种是采用资源绑定类ResourceBundle类,下面是源程序,里面有详细的注释:*/import java.io.FileInputStream;import java.io.FileOutpu原创 2007-09-13 17:17:00 · 12807 阅读 · 0 评论 -
一个查当前月库存的算法及详解
一个查当前月库存的算法及详解 现在做一个关于库存方面的系统,涉及到查每个月的库存。看来这是一个很简单的问题,但是这里涉及到我要查前面任何一个月的最后库存,我并不一定要查当前月的库存,如果是查当前月的库存,就把现在所有有效的库存记录显示出来就可以了(注:我的库存表是如果有入库数量,对应的原来的记录就设为无效,插入一条总和的记录并设为有效)。如现在的时间是九月,我要看八月或者原创 2007-09-20 16:58:00 · 8255 阅读 · 0 评论 -
在struts中以无参数的javabeans的方式调用struts-config.xml中配置的数据源
我是从JSP转来学STRUTS的,一开始的时候有很多地方不习惯。比如对数据库的操作,在JSP中,一般是写一个javabeans来封装对数据库的连接与操作,如:Conn.javapublic class Conn {private Connection conn = null;private Statement stmt = null;private ResultS转载 2007-09-25 16:16:00 · 7067 阅读 · 1 评论 -
JSP结合JavaBean生成静态页面示例
JSP结合JavaBean生成静态页面示例1、为什么要做:节省不停操作数据库的开支,减少解析JSP页面的开支2、怎么做:很简单,就是利用文件操作,把需要的内容与现成的模板相合成再写入一个新的静态WEB页面就OK。3、功能扩展:这里只是利用文件写出的方式,将组合的HTML的内容写入到一个WEB页面里去,但是,为了引用,让其的页面知道有该页面的存在,我们还是得在数据库或者是静态页面里原创 2007-09-20 15:57:00 · 7656 阅读 · 1 评论 -
Java操作MySQL的中文处理方法一则
Java操作MySQL的中文处理方法一则 这是很头痛的问题,一直都是在困扰着我们。我有一个不算简单也不算难的方法,这是我一直在用的方式。 1、建立一个类,包括一个格式将中文转换为ISO8859-1编码的方法: publicclass Format2Chinese { public Format2Chinese() { } publi原创 2007-09-27 10:15:00 · 5861 阅读 · 0 评论 -
Eclipse+MyEclipse+Tomcat的配置
Eclipse+MyEclipse+Tomcat的配置转自:http://blog.csdn.net/sevenrain/archive/2007/03/27/1542775.aspx软件:Eclipse-SDK-3.2.2-win32 MyEclipse5.0.1GA_E3.2 apache-tomcat-5.5.20转载 2007-09-27 11:03:00 · 7369 阅读 · 0 评论 -
10款常用Java测试工具
1. 美国Segue公司的Silk系列产品 Segue公司一直专注于软件质量优化领域。在Segue的产品套件中,拥有业内最强劲且最容易使用的、用于企业应用测试、调优和监测的自动化工具,能够帮助用户保障应用在其生命周期内的可靠性和性能。 (1) SilkPerformer——企业级性能测试工具 企业级自动化测试工具能够支持多种系统,如Java、.Net、Wireless、COM、CORBA、转载 2007-10-23 14:45:00 · 13570 阅读 · 1 评论 -
用Struts实现的流言本
用STRUTS有一段时间,可是我还从来没有用过它的标签,我都不知道自己究竟是不是在用STRUTS了,不过,流程还是按照它的流程走的,不过,如果在一个显示页面,我原来采用的是JAVABEAN生成所有的内容,然后一下就打印出来,并且个人感觉这个JAVA BEAN还比较好用。基本上就只需要用户输入几条语句就可以实现显示了,并且有动态排序的功能,详见:使用该JavaBean可以将数据在JSP页面原创 2007-09-26 22:34:00 · 6366 阅读 · 0 评论 -
最简单的JSP TAG示例
1、编写标签,继承于标签类:import java.io.IOException;import javax.servlet.jsp.JspException;import javax.servlet.jsp.tagext.TagSupport;/** * 该标签只做简单的输出动作 * @author Administrator * */public class原创 2009-04-13 17:22:00 · 5191 阅读 · 0 评论 -
JAVA连接ORACLE数据库
当然别忘了ORACLE的数据库驱动程序import java.sql.*;public class DBConn{ public static Connection getConnection() { //Oracle数据库连接 String ClassforName = "oracle.jdbc.driver.OracleDriver"; String原创 2007-10-24 10:03:00 · 6414 阅读 · 0 评论 -
mysql批量导入已经格式好的文本数据
mysql批量导入已经格式好的文本数据语法:LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name' [REPLACE | IGNORE] INTO TABLE tbl_name [CHARACTER SET charset_name] [FIELDS [TER原创 2007-10-11 14:39:00 · 22912 阅读 · 2 评论 -
JAVA内部类示例分析
内部类是非常有用的类,如果该内部类只为当前类服务,写成内部类将是非常好的选择,详细看程序中的注释:import java.util.HashMap;public class Test1 { //声明一个存储"指令"的HashMap,根据"指令"存取不同的值 private static HashMap hashMap=new HashMap(); //声明一个静态内部类,并在内部类声明原创 2008-07-31 13:27:00 · 8291 阅读 · 0 评论 -
这个题在JAVA中你要怎么去解决:求给定字符串的值如"(1+2)*6+7"
这是在昨天在华为应该"全球化测试"时,面试的张先生给我出的题目,我想了一下,没有做出来,而我给我是:1、因为从来没有遇到过这样的问题,我肯定会凭经验去试一下看能不能够解决这个问题。2、如果解决不了,那我就详查JDK中的数学库,看是否有一个现成的类,可以直接运算字符串式。3、还不行,那就网络搜索,论坛发贴子,QQ郡讨论。不过,我知道他不满意我这样的答案。下面是他给我的一个提示(我原创 2007-10-20 08:11:00 · 7095 阅读 · 3 评论 -
利用JAVA实现WINDOWS中的dir/s查找
import java.io.File;import java.util.regex.Matcher;import java.util.regex.MatchResult;import java.util.regex.Pattern;import java.util.regex.PatternSyntaxException;/** *利用JAVA实现WINDOWS中的dir原创 2007-10-12 16:39:00 · 6551 阅读 · 0 评论 -
Java多线程下载并具断点续传功能JAR
这两天把原来写的多线程下载程序整理了一下,考虑到原来的都是散文件,使用起来也不方便,所以决定把其写JAR,这样,使用起来也方便。并且增加使用XML保存下载文件以便下次再次下载,也修正了原来的一些BUG,只要你的电脑允许,想同时有多少个下载就有多少个下载。 这里我有一个示例,因为这里用到了JDOM处理XML文件,本来是想把用到的JDOM也把包到downFile.jar(下载地址:ht原创 2007-07-10 10:28:00 · 17108 阅读 · 130 评论 -
Spring配置中的bean直接引用其它bean的属性值
pring配置中的bean直接引用其它bean的属性值来赋值给当前bean的属性,也可以直接调用其它bean的方法获取返回值来赋值给当前bean的属性,并且可以进行参数传递,这样可以省去在bean中注入需要获取属性值的bean。以下是一个完整的示例:1、需要JAVA类:Spring配置中的bean直接引用其它bean的属性值package com.service.test;pub原创 2013-01-17 14:52:29 · 12369 阅读 · 0 评论 -
Spring中父子容器的实现实例
Spring中父子容器的实现实例Spring的父子容器可以通过ConfigurableApplicationContext或ConfigurableBeanFactory来实现,这两个接口中分别有setParent及setParentBeanFactory方法,可以与当前的子容器进行父子容器关联,这个时候子容器就可以引用父容器中的bean,但是父容器是不能够引用子容器中的bean的,并且各个子容器原创 2013-02-21 11:46:52 · 12618 阅读 · 3 评论 -
sun.misc.unsafe类的使用
Java是一个安全的开发工具,它阻止开发人员犯很多低级的错误,而大部份的错误都是基于内存管理方面的。如果你想搞破坏,可以使用Unsafe这个类。这个类是属于sun.* API中的类,并且它不是J2SE中真正的一部份,因此你可能找不到任何的官方文档,本文介绍Unsafe的非常规使用场景。翻译 2013-12-05 14:29:37 · 49103 阅读 · 13 评论 -
字符串包装第1部分:将字符转换为字节
你可能经常会将大量的字符串放到内存中,每个String都包括了一个字符数组 - 该字符数组存放的是该字符串的真实字符,以及其它三个整型字段 - 哈希码(hash code)、当前字符串中第一个字符的偏移量(offset)以及字符串本身的长度(length)。 我们看看是否可以在内存放面对字符串对象进行优化,我们注意到如果一个字符串不是通过String.substring方法创建的(因此,翻译 2013-12-06 15:29:13 · 5584 阅读 · 0 评论 -
实现自己的类加载时,重写方法loadClass与findClass的区别
Java中的类加载器,有启动类加载器(Bootstrap Classloader)、扩展类加载器(Launcher$ExtClassLoader)、应用程序类加载器(Launcher$AppClassLoader),用户还可以实现自定义的类加载器,见下图: 类加载的这种关系称为双亲委派模式,需要注意的是他们之间不是继承关系,而是组合关系,在执行类加载的动作时,首先都是交给父类去加载原创 2013-12-21 20:51:59 · 34078 阅读 · 9 评论 -
JAVA中用于处理字符串的“三兄弟”
JAVA中用于处理字符串的“三兄弟”JAVA中用于处理字符串常用的有三个类:java.lang.String、java.lang.StringBuffer、java.lang.StringBuilder,这三者的共同之处都是final类,不允许被继承,这主要是从性能和安全性上考虑的,因为这几个类都是经常被使用着的,且考虑到防止其中的参数被修改影响到其它的应用。StringBuffer与Stri原创 2010-04-16 13:29:00 · 11027 阅读 · 21 评论 -
性能问题的查找
1、发现问题1)、使用w命令查看CPU的Load情况,Load越高说明问题越严重;2)、使用jstat查看FGC发生的频率及FGC所花费的时间,FGC发生的频率越快、花费的时间越高,问题越严重;2、导出数据:在应用快要发生FGC的时候把堆导出来1)、查看快要发生FGC使用命令:jmap -heap 会看到如下图结果: 以上截图包括了新生代、原创 2012-01-10 17:41:43 · 7954 阅读 · 1 评论 -
JDK1.6_023的版本及升级注意事项
所有1.6系列及1.6.0_23以下的版本,存在着String.indexOf,String.contains等方法功能不正常的bug,bug地址:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6935535在某种情况下,hotspot编译出的代码会不正确执行,升级到jdk1.6.0_25可以解决这个问题。可在升级的地方,有一个已原创 2011-12-01 10:24:24 · 3354 阅读 · 0 评论 -
装了Subclipse插件eclipse启动报异常的解决方案
在Eclipse Indigo(3.7)版中装了Subclipse插件,启动的时候挂在那里了。。命令行下执行抛以下异常:baby@user:/usr/local/eclipse$ ./eclipse LogFilter.isLoggable threw a non-fatal unchecked exception as follows:java.lang.NullPointerExc原创 2011-10-31 11:03:19 · 4281 阅读 · 0 评论 -
JAVA中常用接口的介绍及使用示例:java.lang.Comparable
JAVA中常用接口的介绍及使用示例:java.lang.ComparableJKD中说明此接口强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,类的 compareTo方法被称为它的自然比较方法。实现此接口的对象列表(和数组)可以通过Collections.sort(和Arrays.sort)进行自动排序。实现此接口的对象可以用作有序映射(接口java原创 2010-04-16 13:27:00 · 9430 阅读 · 14 评论