java相关
xu_1984
这个作者很懒,什么都没留下…
展开
-
String.intern() java常量池
当调用 intern 方法时,如果池已经包含一个等于此 String 对象的字符串(用 equals(Object) 方法确定),则返回池中的字符串。否则,将此 String 对象添加到池中,并返回此 String 对象的引用。 它遵循以下规则:对于任意两个字符串 s 和 t,当且仅当 s.equals(t) 为 true 时,s.intern() == t.intern() 才为...2010-04-22 17:30:37 · 59 阅读 · 0 评论 -
运行时异常与一般异常
Java提供了两类主要的异常:runtime exception和checked exception。checked 异常也就是我们经常遇到的IO异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以,面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常。 但是另外一种异常:runtime exceptio...原创 2011-06-25 15:39:28 · 81 阅读 · 0 评论 -
几种类加载方式的区别
虚拟机加载类的途径: 1、Dog dog = new Dog(); 这个动作会导致常量池的解析,Dog类被隐式装载。 如果当前ClassLoader无法找到Dog,则抛出NoClassDefFoundError。 2、Class clazz = Class.forName(“Dog”); Object dog =clazz.newInstance(); 通过反...原创 2011-06-25 15:41:27 · 170 阅读 · 0 评论 -
newInstance() 和 new 有什么区别?
在初始化一个类,生成一个实例的时候;newInstance() 和 new 有什么区别? 用newInstance与用new是区别的,区别在于创建对象的方式不一样,前者是使用类加载机制,那么为什么会有两种创建对象方式?这个就要从可伸缩、可扩展,可重用等软件思想上解释了。 Java中工厂模式经常使用newInstance来创建对象,因此从为什么要使用工厂模式上也可以找到具体答案。 ...原创 2011-06-25 15:51:32 · 54 阅读 · 0 评论 -
tomcat outofmemoryerror permgen space java heap space
[code="java"]windows 下 tomcat 虚拟内存配置 在tomcat的bin目录下,找到catalina.bat 文件,打开,在最上面添加这样一句: set JAVA_OPTS=-Xms256m -Xmx512m Eclipse中设置tomcat 虚拟内存配置 ...原创 2011-06-28 15:07:29 · 61 阅读 · 0 评论 -
servlet 变量范围
如果要在整个应用范围可以用: request.getSession().getServletContext().setAttribute("Name","Value")如果Session范围:request.getSession().setAttribute("Name","Value")如果request范围:request.setAttribute("Name","Value&quo原创 2011-07-02 16:19:00 · 79 阅读 · 0 评论 -
Static Nested Class 和 Inner Class
【转】Static Nested Class 和 Inner Class的不同2009-09-15 15:25:55| 分类: 默认分类 |字号 订阅Inner Class(内部类)定义在类中的类。 Nested Class(嵌套类)是静态(static)内部类。1. 要创建嵌套类的对象,并不需要其外围类的对象。 2. 不能从嵌套类的对象中访问非静态的外围类对象。Ano...原创 2011-07-26 21:54:17 · 69 阅读 · 0 评论 -
servlet/jsp线程安全
转自 http://www.newasp.net/tech/java/15350.html在编写Servlet/JSP程序时,对实例变量一定要小心使用。因为实例变量是非线程安全的。在Servlet/JSP中,变量可以归为下面的几类:1. 类变量request,response,session,config,application,以及JSP页面内置的page, pageCon...原创 2011-08-05 09:56:46 · 161 阅读 · 0 评论 -
java异常处理之throw, throws,try和catch
转载 http://blog.csdn.net/zhouyong80/article/details/1907799 程序运行过程中可能会出现异常情况,比如被0除、对负数计算平方根等,还有可能会出现致命的错误,比如内存不足,磁盘损坏无法读取文件等,对于异常和错误情况的处理,统称为异常处理。 Java异常处理主要通过5个关键字控制:try、catch、throw、throws和fin...原创 2011-08-05 10:10:43 · 136 阅读 · 0 评论 -
cookie & session
二者的定义:当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择,都纪录下来。当下次你再光临同一个网站,WEB 服务器会先看看有没有它上次留下的 Cookie 资料,有的话,就会依据 Cookie里的内容来判断使用者,送出特定的网页内容给你。 Cookie 的使用很普遍,许多有提供个人化服务的网站,都是利用 Cooki...原创 2011-08-10 09:31:19 · 46 阅读 · 0 评论 -
LinkedHashMap 和 HashMap的区别
顾名思义LinkedHashMap是比HashMap多了一个链表的结构。与HashMap相比LinkedHashMap维护的是一个具有双重链表的HashMap,LinkedHashMap支持2中排序一种是插入排序,一种是使用排序,最近使用的会移至尾部例如 M1 M2 M3 M4,使用M3后为 M1 M2 M4 M3了,LinkedHashMap输出时其元素是有顺序的,而HashMap输出时是随机...原创 2011-08-11 10:13:50 · 86 阅读 · 0 评论 -
jad 安装
Eclipse反编译工具Jad及插件JadClipse配置 Jad是一个Java的一个反编译工具,是用命令行执行,和通常JDK自带的java,javac命令是一样的。不过因为是控制台运行,所以用起来不太方便。不过幸好有一个eclipse的插件JadClipse,二者结合可以方便的在eclipse中查看class文件的源代码。下面介绍一下配置: A.下载JadClipse,htt...原创 2011-08-11 14:47:45 · 113 阅读 · 0 评论 -
在线人数统计
使用HttpSessionBindingListener获取在线用户人数及名单 实质:HttpSessionBindingListener接口有两方需要实现的方法:public synchronized void valueBound(HttpSessionBindingEvent httpsessionb...原创 2011-04-09 16:40:51 · 105 阅读 · 0 评论 -
ConcurrentHashMap实现原理
ConcurrentHashMap是Java 5中支持高并发、高吞吐量的线程安全HashMap实现。在这之前我对ConcurrentHashMap只有一些肤浅的理解,仅知道它采用了多个锁,大概也足够了。但是在经过一次惨痛的面试经历之后,我觉得必须深入研究它的实现。面试中被问到读是否要加锁,因为读写会发生冲突,我说必须要加锁,我和面试官也因此发生了冲突,结果可想而知。还是闲话少说,通过仔细阅读源代码...原创 2011-06-25 15:14:02 · 109 阅读 · 0 评论 -
java集合
转载当你事先不知道要存放数据的个数,或者你需要一种比数组下标存取机制更灵活的方法时,你就需要用到集合类。 理解集合类 集合类存放于java.util包中。 集合类存放的都是对象的引用,而非对象本身,出于表达上的便利,我们称集合中的对象就是指集合中对象的引用(reference)。 集合类型主要有3种:set(集)、list(列表)和map(映射)。 http...原创 2011-06-25 15:00:01 · 43 阅读 · 0 评论 -
DecimalFormat
DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。该类设计有各种功能,使其能够分析和格式化任意语言环境中的数,包括对西方语言、阿拉伯语和印度语数字的支持。它还支持不同类型的数,包括整数 (123)、定点数 (123.4)、科学记数法表示的数 (1.23E4)、百分数 (12%) 和金额 ($123)。所有这些内容都可以本地化。 DecimalFor...2010-04-25 07:33:16 · 91 阅读 · 0 评论 -
BigInteger、BigDecimal详解
原文地址 http://lavasoft.blog.51cto.com/62575/228705从Java4到Java5,Java对BigInteger、BigDecimal两个类功能一直再做扩展与改进。主要原因是这两个数据类型很重要,在高精度的计算中全靠这两个数据类型了。BigInteger和BigDecimal分别表示任意精度的整数与浮点数。 本文中不在追溯各个版本的变化,只看Ja...2010-05-03 12:22:33 · 116 阅读 · 0 评论 -
HashMap:通过VALUE反向求KEY的方法
我们知道HashMap中的值是成对地放置的,即VALUE-KEY.因此我们一般在MAP中取出数据时得根据KEY来取出VALUE.但若我们想出VALUE值,但却不知对应地KEY,这时我们就得先遍历VALUE值,找出对应地KEY值,再根据KEY值取出VALUE值.程序如下:Java代码 import java.util.*; public class Map_ValueGetKe...原创 2010-07-01 10:18:53 · 122 阅读 · 0 评论 -
自动登录
一、什么是用户自动登录? 对于我们的网站向已注册用户提供某些专门的服务,比如网上购物、在线下载、收费浏览等等,就会要求用户在使用这些服务之前进入登录页面,输入用户名和密码,并进行验证。 如果用户经常访问我们的网站,假如每天都访问一次,或者好几次,那么用户每次都重复这些登录操作就会感到相当厌烦。通过一些简单的技术手段,我们可以让网 站“记住”那些在曾经登录过的用户。当该用户下次再来...原创 2011-08-17 14:42:18 · 348 阅读 · 0 评论 -
xpath查询xml
类似于使用SQL从数据库从查询数据。XPath可以方便的在XML 文档中查找信息的语言,并在XML文档中对元素和属性进行遍历。XPath 使用路径表达式来选取 XML 文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。 虽然有很强的表达能力,XPath 并不是 Java 语言,事实上 XPath 不是一种完整的编程语言。有很多东西用 XPath...原创 2011-08-23 09:46:33 · 203 阅读 · 0 评论 -
web.xml 配置详解
1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始。这个头声明可以使用的XML版本并给出文件的字符编码。DOCYTPE声明必须立即出现在此头之后。这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义)。所有部署描述符文件的顶层(根)元...原创 2011-08-25 14:14:32 · 59 阅读 · 0 评论 -
JCA 综述
什么是JCA?它最吸引人的特点是什么?它有什么不足之处?有哪些厂商支持JCA?是否还存在替代JCA的产品,以便选购时货比三家?本文将帮助你解答所有这些问题。 JCA及其特点 JCA即Java Connector Architecture,或Java连接器体系,它完善了用J2EE构造企业应用的技术体系。在JCA出现之前,基于J2EE应用服务器的开发体系为企业应用各个部分提供了相应的开发...原创 2011-08-25 15:01:31 · 286 阅读 · 0 评论 -
内部类作用
java内部类的作用 推荐一、 定义放在一个类的内部的类我们就叫内部类。二、 作用1.内部类可以很好的实现隐藏 一般的非内部类,是不允许有 private 与protected权限的,但内部类可以2.内部类拥有外围类的所有元素的访问权限3.可是实现多重继承4.可以避免修改接口而实现同一个类中两种同名方法的调用。三、 例子1.实现隐藏 平时我们...原创 2011-06-23 17:09:56 · 73 阅读 · 0 评论 -
守护线程
Java有两种Thread:“守护线程Daemon”与“用户线程User”。我们之前看到的例子都是用户,守护线程是一种“在后台提供通用性支持”的线程,它并不 属于程序本体。从字面上我们很容易将守护线程理解成是由虚拟机(virtual machine)在内部创建的,而用户线程则是自己所创建的。事实并不是这样,任何线程都可以是“守护线程Daemon”或“用户线程User”。他们在 几乎每个方面...原创 2011-06-25 09:39:21 · 54 阅读 · 0 评论 -
final 关键字
Java中的final关键字通常的指的是“这是无法改变的”。它可能被做为三种的修饰词.------数据,方法,类。一 final数据 这里又可分为两种: 1.在修饰基本类型时,表示它是一个常量,在定义时必须给予赋值.特别的一个既是static又是final 的字段只占据一段不能改变的存储空间。 2.在修饰对象或者数...原创 2011-06-25 09:42:50 · 68 阅读 · 0 评论 -
Servlet中listener和filter的总结
转载Listener我是这样理解他的,他是一种观察者模式的实现:我们在web.xml中配置listener的时候就是把一个被观察者放入的观察者的观察对象队列中,当被观察者触发了注册事件时观察者作出相应的反应。在jsp/servlet中具体的实现是在web.xml中注册Listener,由Container在特定事件发生时呼叫特定的实现Listener的类。总体上说servlet中有主要有3...原创 2011-06-25 14:04:00 · 176 阅读 · 0 评论 -
web.xml 中的listener、 filter、servlet 加载顺序及其详解
转载http://hi.baidu.com/suofang/blog/item/335cbf1986c7e34b43a9ad7f.html1、启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取和两个结点。2、紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文。3、容器将转换为键值对,并交给...原创 2011-06-25 14:21:54 · 53 阅读 · 0 评论 -
java 线程池分析
转自http://www.cnblogs.com/evilrogue/archive/2013/01/29/2881430.htmlJAVA线程池的分析和使用1. 引言合理利用线程池能够带来三个好处。第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。第三:提高线程的可管理性。线...原创 2015-01-19 17:34:52 · 149 阅读 · 0 评论