JAVA
kongjing0815
这个作者很懒,什么都没留下…
展开
-
java 定时运行任务整理学习
如何才能实现让一个Java程序定时运行呢?Java基本类库里面,提供了两个工具供我们使用,它们是java.util.Timer和java.util.TimerTask。Timer是一个对象,这个对象在初始化之初,会创建一个后台进程(TimerThread),同时创建一个任务队列(TaskQueue),然后后台进程开始检测TaskQueue中是否存在等待调度的任务,如果存在,就运行之,如果不存在,就等待(Object.wait())。对于程序员可见的类是Timer和TimerTask,TimerTask是一个原创 2010-07-16 17:33:00 · 1459 阅读 · 0 评论 -
java垃圾回收
<br />面试过一次关于java垃圾回收器原理的题目,很悲剧没说清楚,下面转载一篇还不错文章,希望对朋友们有帮助<br />首先要明确几点:<br />Java是在堆上为对象分配空间的<br />垃圾回收器只跟内存有关,什么IO啊,网络连接啊,管它P事<br />当可用内存数量较低时,Sun版本的垃圾回收器才会被激活<br />在垃圾回收器回收垃圾之前,我们先来了解一下Java分配对象的方式,Java的堆更像一个传送带,每分配一个新对象,它就往前移动一格。这意味着对象存储空间的分配速度相当快。Java的“原创 2010-11-10 20:19:00 · 517 阅读 · 0 评论 -
final、finally和finalize
<br />final、finally和finalize的区别是什么? <br /><br />我们首先来说说final。它可以用于以下四个地方: <br />1. 定义变量,包括静态的和非静态的。 <br />2. 定义方法的参数。 <br />3. 定义方法。 <br />4. 定义类。 <br /><br />我们依次来回顾一下每种情况下final的作用。首先来看第一种情况,如果final修饰的是一个基本类型,就表示这个变量被赋予的值是不可变的,即它是个常量;如果final修饰的是一个对象,就表示这个原创 2010-11-10 16:42:00 · 482 阅读 · 0 评论 -
Hibernate的复杂用法HibernateCallback
<br />HibernateTemplate提供了非常多的常用方法来完成数据库的基本操作,使得持久层访问摸板化,只要创建HibernateTemplate 实例后,注入一个SessionFactory的引用就可以了.无须手动创建sessionFactory,更加智能的管理Hibernate 的Session,没有大量的try/catch操作, <br />void delete(Object entity)删除指定持久化实例 <br />deleteAll(Collection entities)删除集合转载 2011-05-30 10:19:00 · 3756 阅读 · 2 评论 -
理解Class.forname
在Java开发特别是数据库开发中,经常会用到Class.forName( )这个方法。通过查询Java Documentation我们会发现使用Class.forName( )静态方法的目的是为了动态加载类。在加载完成后,一般还要调用Class下的newInstance( )静态方法来实例化对象以便操作。为什么要使用class.forName("").newInstance()或class.f原创 2011-06-08 15:15:00 · 748 阅读 · 0 评论 -
socket编程——UDP协议
tcp协议udp协议原创 2011-07-29 14:45:09 · 2118 阅读 · 0 评论 -
socket编程—TCP/IP
TCP是TranferControl Protocol的 简称,是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建 立连接,以便在TCP协议的基础上进行通信,当一个socket(通常都是ser转载 2011-07-29 15:24:20 · 887 阅读 · 0 评论 -
Java中static关键字用法总结
1. 静态方法 通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法 声明为static的方法有以下几条限制: · 它们仅能调用其他的static 方法。 · 它们只能访问static数据。 · 它们不能以任何方式引用转载 2011-08-05 10:11:22 · 1278 阅读 · 0 评论 -
log4j.properties 使用
log4j.properties 使用一.参数意义说明输出级别的种类ERROR、WARN、INFO、DEBUGERROR 为严重错误 主要是程序的错误WARN 为一般警告,比如session丢失INFO 为一般要显示的信息,比如登录登出DEBUG 为程转载 2011-09-23 11:17:52 · 593 阅读 · 0 评论 -
浅谈Struts2拦截器的原理与实现
一、理解Struts2拦截器1. Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,拦截器是AOP的一种实现.2. 拦截器栈(Interceptor Stack)。Struts2拦截器栈就是将拦截器按一定的顺序联结成一条链。在访问被拦截的方法或字段时,Struts2拦截器链中的拦截器就会按其之前定义的顺序被调用转载 2012-01-31 16:26:10 · 543 阅读 · 0 评论 -
浅谈Struts2拦截器的原理与实现
一、理解Struts2拦截器1. Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,拦截器是AOP的一种实现.2. 拦截器栈(Interceptor Stack)。Struts2拦截器栈就是将拦截器按一定的顺序联结成一条链。在访问被拦截的方法或字段时,Struts2拦截器链中的拦截器就会按其之前定义的顺序被调用转载 2012-01-31 16:28:30 · 490 阅读 · 0 评论 -
Java的final和static区别
final定义的变量可以看做一个常量,不能被改变; final定义的方法不能被覆盖; final定义的类不能被继承。 final static 就是再加上static的特性就可以了 static 和final是没有直接关系的 static 是在内存中分配一块区域,供整个类通用,所有的类的对象都享有它的共同的值 static 和final的区别转载 2012-02-20 10:34:51 · 866 阅读 · 0 评论 -
java 中session和cookie的使用
这里讲session和cookie放在一起写, 不是说他们之间有什么关系,仅最近一个项目中同时用到。偷懒,放一起整理下Session:Session的发明是为了填补HTTP协议的局限。请注意HTTP协议是通过用户发出请求,服务器作出响应的方式来工作的,这种用户端和服务器端的联系就是离散的,非连续的。HTTP协议不能提供允许服务器跟踪用户请求的功能。在服务器端完成响应用户的请求之后,服务器不原创 2012-03-09 10:49:12 · 10345 阅读 · 0 评论 -
java笔/面试题整理
String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类int 和 Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类原创 2010-11-13 21:23:00 · 1604 阅读 · 2 评论 -
java英文笔试中常见名词
Abstract class 抽象类:抽象类是不允许实例化的类,因此一般它需要被进行扩展继承。 Abstract method 抽象方法:抽象方法即不包含任何功能代码的方法。 Access modifier 访问控制修饰符:访问控制修饰符用来修饰Java中类、以及类的方法和变量的访问控制属性。 Anonymous class 匿名类:当你需要创建和使用一个类,而又不需要给出它的名字或者再次使用的使用,就可以利用匿名类。 Anonymous inner classes 匿名内部类:匿名内部类是没有类名的局部内原创 2010-11-10 20:23:00 · 833 阅读 · 0 评论 -
文件读写操作
java中对文件的操作很多,对于一个java新手,经常整理下自己遇到的新东西,为他人也提供一个参考,共同学习按行读取:采用BufferedReader中的readline()写文件: File file=new File("D://dspace//log//dspace.viewcount"); Date nowdate=new Date(); SimpleDateFormat dataformat=new SimpleDateFormat("yyyy-MM-dd原创 2010-07-16 10:51:00 · 541 阅读 · 0 评论 -
常用日期处理方法
常用的日期处理类有DATE和Calendar 日期格式控制类:SimpleDateFormat实例:获取当前日期:DATE:Date nowDate=new Date();SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");System.out.println(simpleDateFormat.format(nowDate));//输出2010-07-21Calendar :Calendar nowC原创 2010-07-21 11:07:00 · 715 阅读 · 0 评论 -
java操作xml文档(一) DOM方式
XML在不同的语言里解析方式都是一样的,只不过实现的语法不同而已。基本的解析方式有两种,一种叫SAX,另一种叫DOM。SAX是基于事件流的解析,DOM是基于XML文档树结构的解析。假设xml文档机构如下ddviplinuxm30当前常用的创建与解析xml文档的方式有DOM、SAX、DOM4J及JDOM首先定义一个操作XML文档的接口XmlDocument 它定义了XML文档的建立与解析的接口public interface XmlDocument { /** * 建立XML文档 * @param f原创 2010-07-24 09:14:00 · 572 阅读 · 0 评论 -
java操作xml文档(二) SAX方式
SAX优点下面的部分简述了S A X接口最显著的一些优点。(1) 可以解析任意大小的文件因为S A X不需要把整个文件加载到内存,所以对内存的占用一般比D O M小得多,而且不随着文件大小的增加而增加。当然D O M使用的实际内存数量要视解析器而定,但在大多数情况下一个1 0 0 K b的文档至少要占用1 M b的内存。但是有一点要注意:如果S A X应用程序自身在内存中创建文档的表达,它会占用和允许解析器创建空间一样大小的内存。(2) 适合创建自己的数据结构应用程序可能会想用如书、作者以及出版者这样的高级原创 2010-07-24 11:15:00 · 513 阅读 · 0 评论 -
java操作xml文档(三) JDOM方式
JDOM 的目的是成为 Java 特定文档模型,它简化与 XML 的交互并且比使用 DOM 实现更快。JDOM与DOM主要有两方面不同。首先,JDOM仅使用具体类而不使用接口。这在某些方面简化了API,但是也限制了灵活性。第二,API大量使用了Collections类,简化了那些已经熟悉这些类的Java开发者的使用。JDOM文档声明其目的是“使用20%(或更少)的精力解决80%(或更多)Java/XML问题”(根据学习曲线假定为20%)。JDOM对于大多数Java/XML应用程序来说当然是有用的,并且大多数原创 2010-07-24 21:41:00 · 1662 阅读 · 0 评论 -
Java中的两个特殊变量this和super
<br />在Java中有两个非常特殊的变量:this和super,这两个变量在使用前都是不需要声明的。this变量使用在一个成员函数的内部,指向当前对象,当前对象指的是调用当前正在执行方法的那个对象。super变量是直接指向超类的构造函数,用来引用超类中的变量和方法。因此它们都是非常有用的变量,下面我想介绍一下this和super的使用方法。<br /><br /> 1、this<br /><br /> 让我们先看一段代码吧:<br />class PersonInformation {原创 2010-09-01 15:14:00 · 570 阅读 · 0 评论 -
java中interface和abstract class
<br />abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很大的区别的,对于它们的选择甚至反映出对于问题领域本质的理解、对于设计意图的理解是否正确、合理。本文将转载 2010-09-02 15:52:00 · 587 阅读 · 1 评论 -
java中Class.forName的作用
Class.forName(xxx.xx.xx) 返回的是一个类首先你要明白在java里面任何class都要装载在虚拟机上才能运行。这句话就是装载类用的(和new 不一样,要分清楚)。 至于什么时候用,可以考虑一下这个问题,给你一个字符串变量,它代表一个类的包名和类名,你怎么实例化它?只有你提到的这个方法了,不过要再加一点。 A a = (A)Class.forName("pacage.A").newInstance(); 这和 A a = new A(); 是一样的效果。 jvm会执行静态代码段,要记住一转载 2010-09-02 16:17:00 · 3276 阅读 · 2 评论 -
java 23种设计模式
<br />工厂模式, 工厂方法模式,单例模式, 外观(Facade)模式, 观察者(Observer)模式,桥接(Bridge)模式都是比较常用的,不同的项目有不同的设计方向,可以参考的设计模式也不尽相同,没有定数,只是上面这几个模式用的比较多一些。 <br /><br />其他的模式我找了一下,都列出来了。 <br /><br />====================== <br />Java常用的设计模式 <br />创建型模式 <br /><br /><br /><br />1、FACTORY—转载 2010-09-08 15:14:00 · 446 阅读 · 0 评论 -
面向对象程序设计的基本原则
<br /> 所有的设计模式都是对不同的可变性的封装,从而使系统在不同角度达到“开闭原则”的要求。<br /><br /> 在软件软件系统中,一个模块设计得好不好的最主要、最重要的标志,就是该模块在多大程度上将自己的内部数据和其他与实现有关的细节隐藏起来。一个设计得好的模块可以将它所有的实现细节隐藏起来,彻底地将提供给外界的API和自己的实现分隔开来。这样一来,模块与模块之间就可以仅仅通过彼此的API相互通信,而不理会模块内部的工作细节。<br /><br /><br /> OO设计根本的指导原则是提高转载 2010-10-11 17:11:00 · 516 阅读 · 0 评论 -
关于string/stringbuffer/stringbuilder
<br />String 字符串常量<br />StringBuffer 字符串变量(线程安全)<br />StringBuilder 字符串变量(非线程安全)<br /><br />string与stringbuffer最基本的区别是,string是不可变的,stringbuffer可变;查看JDK文档会发现,String类中每一个看起来会修改String对象值的方法,实践上都是创建一个全新的String对象,以包含修改后的字符串内容,而最初的String对象则丝毫未动。所以经常改变内容的字符串最好不要用原创 2010-11-09 20:35:00 · 444 阅读 · 0 评论 -
单例类详解
和寝室的一哥们对最近的状态用一个词总结下“疲于奔命”笔试、面试了不少,都不甚满意,一直想找机会整理下常考的东西单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。单例模式的要点 显然单例模式的要点有三个; 一是某各类只能有一个实例; 二是它必须自行创建这个事例; 三是它必须自行向整个系统提供这个实例。在下面的对象图中,有一个"单例对象",而"客户甲"、"客户乙" 和"客户丙"是单例对象的三个客户对象。可以看到,所有的客户对象共享一个单例对象。而且原创 2010-11-09 20:47:00 · 697 阅读 · 0 评论 -
display table 标签用法
display table 标签用法 在web.xml下添加一个filter exportFilter org.displaytag.filter.ResponseOverrideFilter 在jsp页面做一个引用:http://displaytag.sf.net/el"prefix="display" %> 首转载 2012-07-31 14:01:41 · 697 阅读 · 0 评论