- 博客(40)
- 资源 (13)
- 收藏
- 关注
转载 Java容器类List、ArrayList、Vector及map、HashTable、HashMap分别的区别
ArrayList和HashMap是异步的,Vector和HashTable是同步的,所以Vector和HashTable是线程安全的,而 ArrayList和HashMap并不是线程安全的。因为同步需要花费机器时间,所以Vector和HashTable的执行效率要低于 ArrayList和HashMap。Collection ├List 接口│├LinkedList 链表
2012-10-12 14:36:47
935
转载 ConCurrentMap的分析和思考
由预备知识可以知道hashmap 的存储结构为: (图像来自http://www.ibm.com/developerworks/cn/java/j-lo-hash/)也是说:一个hashmap 内部含有一个Entity 类行的数组,这个数组中的元素都是Entity。实际上我们放入map 中的key 和 value 就对应一个Entity 对象,这个Entity 对象包含一
2012-10-12 14:31:49
14258
原创 Log4J使用详解
平时日志记录,如果想通过自己手动写代码的方式,那么会给我们带了很大工作量和意想不到的问题,然而,作为java日志记录的标配,log4j显得至关重要。一)常用使用方法一般都是properties格式,部分也用xml格式二)三个重要组件Log4j有三个主要的组件:Loggers(记录器),Appenders(输出源)和Layouts(布局),这里可简单理解为日志类别,日志要输出的地方和
2012-10-11 17:33:33
913
原创 国际化
1.Localjava.util.Locale是表示语言和国家地区信息的本地化类,他是创建国际化应用的基础。 public class Test1 { public static void main(String args[]){ Locale locale1= new Locale("zh","CN"); Locale locale2= new Locale(
2012-10-11 17:29:10
470
原创 Bean的声明周期
在Spring中,我们可以从两个层面定义Bean的生命周期:第一个层面是Bean的作用范围;第二个层面是实例化Bean时所经历的一系列阶段。下面我们分别对BeanFactory和ApplicationContext中的Bean的声明周期进行分析。1.BeanFactory中Bean的生命周期生命周期图解:1)当调用者通过getBean(beanName)向容器请求某一个Bean时,如果
2012-10-11 17:28:38
570
转载 Spring的资源访问
1.资源抽象接口JDK提供的资源访问类,如java.net.URL,File等,并不能很好的满足各种底层资源的访问需求,对此,Spring设计了一个Resource接口,提供了很强的资源访问能力。Resource接口的主要方法:1)boolean exists():资源是否存在2)boolean isOpen():资源是否打开3)URL getURL() throws IOEx
2012-10-11 17:27:53
413
原创 一个jquer程序
//当页面中的dom加载完毕后,执行参数中的函数 $(document).ready(function(){ alert("Hello world"); }) 相当于window.onload类似于 function test1(){ alert("你好"); } function test2(){ aler
2012-10-11 17:26:55
486
原创 Struts2——国际化
Java语言国际化API中,影响数据本地化的因素主要有两个:一个是用户的语言环境,另一个是用户的时区。国际化:是设计和制造适应不同区域要求的产品的一种方式。它要求产品中抽离所有的与语言、国家/地区和文化相关的因素本地化:解决网站,软件向其他国家推广时遇到的语言障碍问题。Local类有Local(String language)和Local(String language,String
2012-10-11 17:25:23
580
原创 Java多线程的那些事(三)
之前,我们实现线程同步的时候,如果A需要B的结果,A要等待B。但是现在有了Future之后,我们必要再这里死等,有篇文章对这个形容不错:什么是Future模式呢?Future 顾名思义,在金融行业叫期权,市场上有看跌期权和看涨期权,你可以在现在(比如九月份)购买年底(十二月)的石油,假如你买的是看涨期权,那么如果石油真的涨了,你也可以在十二月份依照九月份商定的价格购买。扯远了,Future就是
2012-10-11 17:06:42
930
原创 Java多线程那些事(二)
本人有一篇文章介绍了线程的创建,以及线程的集中状态,只是大体介绍,现在深入研究下多线程的集中方法。一:sleep()先看源代码: /** * Causes the currently executing thread to sleep (temporarily cease * execution) for the specified number of mi
2012-10-11 16:32:12
803
原创 Java多线程那些事(一)
/** * A thread is a thread of execution in a program. The Java * Virtual Machine allows an application to have multiple threads of * execution running concurrently. * * Every thread has
2012-10-11 14:21:49
717
转载 Map Reduce – the Free Lunch is not over?
微软著名的C++大师Herb Sutter在2005年初的时候曾经写过一篇重量级的文章:”The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software“,预言OO之后软件开发将要面临的又一次重大变革-并行计算。摩尔定律统制下的软件开发时代有一个非常有意思的现象:”Andy giveth, and Bill t
2012-10-09 10:30:08
665
转载 Hadoop学习笔记
作者: wayne1017 一、简要介绍这里先大致介绍一下Hadoop. 本文大部分内容都是从官网Hadoop上来的。其中有一篇介绍HDFS的pdf文档,里面对Hadoop介绍的比较全面了。我的这一个系列的Hadoop学习笔记也是从这里一步一步进行下来的,同时又参考了网上的很多文章,对学习Hadoop中遇到的问题进行了归纳总结。 言归正传,先说一下Hadoop的来龙
2012-10-09 10:29:06
471
转载 Java中的Cookie操作
/******首先java对cookie的操作有三种方式,*1种是:j2ee中的 javax.servlet.http.Cookie类操作*2种是:j2se中的 java.net.CookieHandler类的操作*3中是:Apache旗下的org.apache.http.cookie.Cookie类的操作; * *本文是基于第一种编写的,也是最简单的方式。****************/pac
2012-09-29 14:21:09
1783
原创 Struts2-编写自己的验证器
编写自己的验证器首先要实现Validator接口,它是com.opensymphony.xwork2.validator包的一部分。Validator包的定义如下:import com.opensymphony.xwork2.validator.ValidationException;import com.opensymphony.xwork2.validator.ValidatorCo
2012-09-19 20:56:49
595
转载 Struts中的ActionContext和ActionContextCleanup
1. ActionContext ActionContext是被存放在当前线程中的,获取ActionContext也是从ThreadLocal中获取的。所以在执行拦截器、 action和result的过程中,由于他们都是在一个线程中按照顺序执行的,所以可以可以在任意时候在ThreadLocal中获取 ActionContext。ActionContext包括了很多信息,比如Sess
2012-08-03 15:25:56
791
转载 web.xml详细配置
web.xml元素介绍每一个站的WEB-INF下都有一个web.xml的设定文件,它提供了我们站台的配置设定. web.xml定义: .站台的名称和说明 .针对环境参数(Context)做初始化工作 .Servlet的名称和映射 .Session的设定 .Tag library的对映 .JSP网页设定 .Mime Type处理 .错误处理 .利用JD
2012-08-03 14:02:38
465
转载 Spring jar包详解
下载的spring包中文件及各种包众多,在项目中往往只有部分是我们必须的,如果不清楚什么时候需要什么包的话,看看下面就知道了。aspectj目录下是在Spring框架下使用aspectj的源代码和测试程序文件。Aspectj是java最早的提供AOP的应用框架。dist 目录下是Spring 的发布包,关于发布包下面会详细进行说明。docs 目录下是相关的文档,包括有Spring
2012-08-03 12:00:05
596
原创 Java多线程
1.线程的创建和启动Java使用Thread类代表线程,所有线程对象都必须是Thread类或者子类的实例。每条线程的作用是完成一定的任务,实际是就是执行一段程序流。Java使用run方法来封装这样一段程序流。1)继承Thread类创建线程类步骤如下:定义Thread类的子类,并重写该类的run方法,该run方法的方法体就是代表了线程需要完成的任务。因此我们经常把run方法称为线程执
2012-06-13 08:53:11
745
原创 HttpMessageConverter<T>
HttpMessageConverter是Spring3.0新添加的一个重要接口,它负责将请求信息转换为一个对象,将对象输出为响应信息。DispatcherServlet默认已安装了AnnotationMethodHandlerAdapter使用,将请求信息转换为对象,或将对象转换为相应信息。HttpMessageConverter接口定义以下几个方法:1.Boolean canRea
2012-06-12 14:09:04
987
原创 AOP术语
1.连接点(Joinpoint)程序执行的某个特定位置:如类开始初始化前,类初始化后,类某个方法调用前,调用后,方法跑出异常后。一个类或一段程序代码拥有一些具有边界性质的特定点、这些代码中的特定点就成为连接点。Spring仅支持方法的连接点,即仅能在方法调动前,方法调用后,方法跑出异常时以及方法调用前后这些程序执行点织入增强。连接点由两个信息确定:1)方法表示程序执行点2)用相
2012-06-05 16:21:44
1502
转载 Java反射机制
Class反射对象描述类语义结构,可以从Class对象中获取构造函数、成员变量、方法类等类元素的反射对象,并以编程的方式通过这些反射对象对目标类对象进行操作。这些反射对象类在java.reflect包中定义。主要的三个反射类是:1.Contrutor:类的构造函数反射类,通过Class#getConstrutor()方法可以获取类的所有构造函数反射对象数组。还可以通过getContruct
2012-06-05 08:46:54
478
转载 ClassLoader——类装载器
首先看一下类装载器的工作机制定义一:类装载器是寻找类的字节码文件并构造出类在JVM内部表示对象的组件。在java中,类装载器将一个类装载到JVM中,要经过的步骤如下:1.装载:查找和导入Class文件2.链接:执行校验、准备和解析步骤。其中解析步骤是可以选择的。1)校验:检查载入的class文件的正确性;2)准备:给类的静态变量分配存储空间。3)解析:将符号引用转换
2012-06-04 22:08:20
452
原创 java IO-File类
package test1;import java.io.File;import java.io.IOException;/**@author Linkin * * 文件: * 1.文件可以认为是相关记录或存放在一起的数据集合 * 2文件一般存放在磁盘上 * * * File类: * 1.File类的对象不但可以表示文件,还可以表示目录 * 2.程序中一个File
2012-05-10 21:17:14
412
转载 <context-param>与<init-param>的区别
的作用:web.xml的配置中配置作用1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: 和 2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文.3.容器将转化为键值对,并交给ServletContext.4.容器创建中的类实例,即创建监听.5.在监听中会有con
2012-04-16 22:12:31
450
原创 Struts2内置校验器
struts2提供了大量的内置验证器,分别介绍如下1.必填验证器RequiredFieldvalidator验证器检查指定的字段是否为null。该验证器可以接受一个参数:fieldName,指定要验证的字段名,如果使用元素来声明该字段验证器,则不需要这个参数。采用非字段校验器的配置如下: user.username 请输入用户名!
2012-02-22 11:05:40
3129
原创 Collection(八) Generic泛型
泛型:在定义集合的时候同时定义集合中对象的类型。产生由于:1.装入容器的类型都被当作Object对待,从而失去自己的实际类型;2.容器中取出时往往需要转型,效率低,易出错。public class GenericTest { public static void main(String[] args) { List l1 = new ArrayList();//定义Col
2012-02-21 19:58:36
538
原创 Collection(七) Map -----autoboxing and unboxing
实现Map接口的类用于存储键-值对,通过键来标示,因此键是不能重复的。以下是Map中的常用方法的例子: public class MapTest { public static void main(String[] args) { Map m1 = new HashMap(); Map m2 = new TreeMap(); m1.put("one", new I
2012-02-21 17:59:18
437
原创 Collection(六) List---Comparable and CompareTo()
对于一些自定义的类的对象需要一个标准来进行排序,这个标准就是Comparable接口。也就是说,所有可以进行排序的类都实现了Comparable接口,接口中只有一个方法public static int compareTo(E o),(返回0,表示this=obj;返回正数,表示this>obj;返回负数,表示thispublic class CompareToTest { public
2012-02-21 17:28:36
965
原创 Collection(五) List
List是Collection的子接口,实现List接口的容器类中的元素是有顺序的可重复的,这些元素都对应一个整形的序号记载它在容器中的位置。跟数组相似,但是List可以随便改变大小,但是数组不可以。List方法使用例子:public class ListTest { public static void main(String[] args){ List l1 = new Li
2012-02-21 17:23:57
373
原创 Collection(四) Set
import java.util.HashSet;import java.util.Set;public class Setinfo { public static void main(String[] args) { Set s1 = new HashSet(); Set s2 = new HashSet(); s1.add("a"); s1.add("b")
2012-02-21 10:48:26
500
原创 Collection(三) 增强for循环
import java.util.ArrayList;import java.util.Collection;//增强for循环,适用于数组或容器的简单遍历或内容的读取。public class EnhanceFor { public static void main(String[] args) { int[] arr = {1,2,3,4,5}; for(int i
2012-02-21 10:22:56
3012
原创 Collection(二)Iterator
import java.util.Collection;import java.util.HashSet;import java.util.Iterator;public class TestIterator { public static void main(String[] args) { Collection c = new HashSet();//Set是无序的,
2012-02-21 10:08:21
688
原创 Struts2拦截器(二)
前一个例子讲了对于前台数据的拦截。但是问题出现了,我们定义了拦截器后,它会对Action下面的所有方法进行拦截。有时候,我们只需要拦截Action中的部分方法,怎么办呢?1.方法的过滤我们就要通过过滤的方式。struts2提供了一个MethodFilterInterceptor类,该类是AbstractInterceptor类的子类,如果用户需要自己实现的拦截器支持方法过滤,则应该继承
2012-02-21 09:29:55
1094
原创 Struts2 拦截器详解(一)
拦截器是Struts2的一个重要特性。Struts2框架的大多数核心功能都是通过拦截器来实现的,像避免表单重复提交、类型转换、对象组装、验证、文件上传等,都是在拦截器的帮助下实现的。拦截器的一个重要特征是:它可以在Action之前调用。拦截器,在AOP(Aspect Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截。然后再之前或之后加入某些操作。拦截器是
2012-02-20 20:49:22
757
原创 Collection(一)初步
今天学习Collection内容, 借助于一个Collection例子,再熟悉其方法的同时,复习一下面向对象知识。 import java.util.ArrayList;import java.util.Collection;public class TestCollection { public static void main(String[] args) { C
2012-02-20 10:27:52
774
原创 Hibernate——Query查询
前两篇文章介绍了获取SessionFactory,Session,以及Session的三种状态及其之间的转换,本文势必要将大家最关心的问题做出介绍,也就是大家最关心的通过Hibernate提供的类和方法对数据库进行更深层次的查询。本篇文章主要介绍Query的查询1.首先介绍一下实体类public class User { //id字段,主键 private int id; //用
2012-02-19 21:45:37
18630
原创 Hibernate——Session(二)详解
上一篇文章讲了如何得到session,这篇文章对session对数据库的操作和session的三种状态进行介绍。(一)session对数据库的操作创建相应的数据库表create table user(id int not null primary key auto_increment,username varchar(50),userpass varchar(50));数据库对应三
2012-02-19 17:03:39
4776
原创 Hibernate——Session详解(一)
Hibernate在对资料库进行操作之前,必须先取得Session实例,相当于JDBC在对资料库操作之前,必须先取得Connection实例。Session是Hibernate对数据库操作的基础,它不是我们所说的JSP页面传递参数的那个Session。Session是Hibernate运作的中心,对象的生命周期、事务的管理、数据库的存取都与session息息相关。session是线程安全,
2012-02-19 16:01:41
2166
原创 Ajax in Struts2(一)—DWR篇
Ajax非常完美的改善了用户体验,使用户体验了一种连续的状态,避免了传统的Web应用进行请求——等待——响应的流程。Ajax使用户可以连续的发送多次异步请求,不需要服务器响应。当服务器的相应成功返回浏览器时,浏览器利用DOM将服务器相应数据加载到当前页面的相应容器中。Struts2的Ajax支持需要建立在DWR和Dojo这两个成熟的Ajax框架。Struts2在两个成熟的Ajax框架上进一步封
2012-02-19 13:18:51
2410
java jsp 连接mysql数据库 jar包
2011-03-16
酒店管理系统 jsp web sql Server2005数据库
2011-03-16
图书馆管理系统 jsp web SQL server 2005数据库
2011-03-16
投票系统 java jsp struts javabean 源代码
2011-03-09
企业日常事务管理系统
2011-01-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人