JAVA
文章平均质量分 91
aWangz
从今天起,做一个执着梦想的人,一个无愧于心的人,一个有用的人,一个别人不反感的人。
天行健,君子以自强不息
正直,善良,勇敢,乐观,坚强
--- 二彪哥毕业赠言
凡事要三思,但比三思更重要的是三思而行。
展开
-
JDK中List接口subList方法 使用注意事项
JDK中,List接口有一个实例方法List subList(int fromIndex, int toIndex),其作用是返回一个以fromIndex为起始索引(包含),以toIndex为终止索引(不包含)的子列表(List)。 但值得注意的是,返回的这个子列表的幕后其实还是原列表;也就是说,修改这个子列表,将导致原列表也发生改变;反之亦然。下面是一段实例代码:翻译 2012-07-06 09:22:11 · 1212 阅读 · 0 评论 -
Spring3核心技术之事务管理机制
转载自: http://zhou137520.iteye.com/blog/1675199 Spring3核心技术之事务管理机制 Spring对事务的解决办法其实分为2种:编程式实现事务,AOP配置声明式解决方案。 http://jinnianshilongnian.iteye.com/blog/1496953Spring提供了许多内置事务管理器实现,常用的有以下几转载 2013-07-25 17:12:51 · 1197 阅读 · 0 评论 -
使用Spring CommonsMultipartResolver 上传文件
转载自 : 兰馨岚雨 http://yanglei008.iteye.com/blog/246920 SpringMVCJavaStrutsJSP 可以在controller(spring mvc) 或者 action (struts mvc)中直接使用CommonsMultipartResolver Java代码 ...Contr转载 2013-07-25 17:03:37 · 77122 阅读 · 2 评论 -
sleep和wait的区别
1、这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用了b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。sleep不出让系统资源;w转载 2013-07-02 11:19:14 · 573 阅读 · 0 评论 -
几种任务调度的 Java 实现方法与比较
几种任务调度的 Java 实现方法与比较IBM/DW 发表于 2011-9-21 07:59 1年前,15回/10077阅, 最后回答: 1年前 综观目前的 Web 应用,多数应用都具备任务调度的功能。本文由浅入深介绍了几种任务调度的 Java 实现方法,包括 Timer,Scheduler, Quartz 以及 JCron Tab,并对其优缺点进行比较,目转载 2013-07-02 10:02:42 · 968 阅读 · 0 评论 -
JAVA多态性 之动态连接详解
转载自:http://zhidao.baidu.com/question/101623530.html 问题提出:java中父类对象引用指向子类对象的问题public class Test2 { int x=10; public int getTest2(){ return x; }}public class Tes转载 2013-07-16 10:33:31 · 1680 阅读 · 0 评论 -
struts2 拦截器配置
转载自:http://www.blogjava.net/nokiaguy/archive/2008/05/04/198071.html Struts官网发布的Struts结构图如下:Struts2的拦截器和Servlet过滤器类似。在执行Action的execute方法之前,Struts2会首先执行在struts.xml中引用的拦截器,在执行完所有引用的拦截器的intercep转载 2013-06-25 17:19:39 · 641 阅读 · 0 评论 -
JAVA 异常体系
一.异常介绍任何的异常都是Throwable类,并且在它之下包含两个字类Error / Exception,而Error仅在当在Java虚拟机中发生动态连接失败或其它的定位失败的时候,Java虚拟机抛出一个Error对象。典型的简易程序不捕捉或抛出Errors对象,你可能永远不会碰到需要实例化Error的应用,那就让我们关心一下Exception。Unchecked Exception.:转载 2013-05-10 17:41:59 · 605 阅读 · 0 评论 -
工作中经常使用的JAVA集合类
【原文地址】 http://furturestrategist.iteye.com/blog/1392497 Collection接口: 此接口继承了Iterable接口,因此此接口的子接口和实现类都可以调用iterator方法进行遍历,接口定义实现类大多为数据结构中的线性存储 List接口: 继承了Collection接口,对应数据结转载 2013-05-21 13:30:56 · 1562 阅读 · 0 评论 -
Spring3核心技术之JdbcTemplate
Spring对JDBC的支持 Spring通过抽象JDBC访问并提供一致的API来简化JDBC编程的工作量。我们只需要声明SQL、调用合适的Spring JDBC框架API、处理结果集即可。事务由Spring管理,并将JDBC受查异常转换为Spring一致的非受查异常,从而简化开发。 Java代码 .... Connection con转载 2013-07-25 17:15:18 · 3412 阅读 · 0 评论 -
Java ExecutorService
Java ExecutorService ExecutorService 建立多线程的步骤:1。定义线程类class Handler implements Runnable{}2。建立ExecutorService线程池ExecutorService executorService = Executors.newCachedThre转载 2013-07-25 17:16:38 · 822 阅读 · 1 评论 -
tomcat架构分析(connector BIO 实现)
出处:http://gearever.iteye.com 在tomcat架构分析(概览)中已经介绍过,connector组件是service容器中的一部分。它主要是接收,解析http请求,然后调用本service下的相关servlet。由于tomcat从架构上采用的是一个分层结构,因此根据解析过的http请求,定位到相应的servlet也是一个相对比较复杂的过程。 整个conne转载 2015-04-09 11:13:27 · 719 阅读 · 0 评论 -
Tomcat 对异步servlet的处理
这个是以前看的,由于最近工作中用到异步servlet,看了一下tomcat在对servlet3.0中AsyncContext的实现过程,总结一下,使用异步servlet主要原因就是因为,在service方法中业务逻辑如果碰到io操作时间比较长的操作,这样这个service方法就会长时间占用tomcat容器线程池中的线程,这样是不利于其他请求的处理的,当线程池中的线程处理任务时,任务由于长时间io操转载 2015-04-09 09:39:45 · 1053 阅读 · 0 评论 -
How to Analyze Java Thread Dumps
http://java.dzone.com/articles/how-analyze-java-thread-dumpsThe content of this article was originally written by Tae Jin Gu on the Cubrid blog. When there is an obstacle, or when a Java b转载 2014-10-09 11:35:58 · 1114 阅读 · 0 评论 -
十大排序算法总结
排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准: (1)执行时间 (2)存储空间 (3)编程工作 对于数据量较小的情形,(1)(2)差别不大,主要考虑(3);而对于数据量大的,(1)为首要。 主要排序法有: 一、冒泡(Bubble)排序——相邻交换 二、选择排序——每次最小/大排在相应的位置 三转载 2014-03-28 08:46:32 · 13340 阅读 · 1 评论 -
实例解读 UML类图中的各种关系
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特转载 2014-03-06 14:38:48 · 902 阅读 · 0 评论 -
理解Java枚举类型
枚举类型是JDK5.0的新特征。Sun引进了一个全新的关键字enum来定义一个枚举类。下面就是一个典型枚举类型的定义:Java代码 public enum Color{ RED,BLUE,BLACK,YELLOW,GREEN } 显然,enum很像特殊的class,实际上enum声明定义的类型就是一个类。而这些类都是类库中Enum类转载 2014-03-04 09:54:42 · 619 阅读 · 0 评论 -
Runnable、Callable、Executor、Future、FutureTask关系解读
转载自:http://blog.csdn.net/zhangzhaokun/article/details/6615454 Runnable、Callable、Executor、Future、FutureTask关系解读在再度温习Java5的并发编程的知识点时发现,首要的就是把Runnable、Callable、Executor、Future转载 2014-02-08 16:16:53 · 705 阅读 · 0 评论 -
详解 UML类图之各种关系
转载自:http://www.cnblogs.com/riky/archive/2007/04/07/704298.htmlUML类图关系大全1、关联双向关联:C1-C2:指双方都知道对方的存在,都可以调用对方的公共属性和方法。在GOF的设计模式书上是这样描述的:虽然在分析阶段这种关系是适用的,但我们觉得它对于描述设计模式内的类关系来说显得太抽象了,因为在设计阶段关转载 2013-08-07 15:43:30 · 1662 阅读 · 0 评论 -
java BIO NIO AIO 理论篇
java BIO NIO AIO 理论篇 java中的IO主要源自于网络和本地文件 IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对转载 2013-05-21 13:13:39 · 993 阅读 · 0 评论 -
Spring 线程池
Spring 线程池 从例子开始讲:Xml代码 class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">转载 2013-05-21 11:41:06 · 935 阅读 · 0 评论 -
初识EJB 2.0
EJB雨夜原创讲解初识EJBEJB是什么呢?EJB是一个J2EE体系中的组件.再简单的说它是一个能够远程调用的javaBean.它同普通的javaBean有两点不同.第一点,就是远程调用.第二点,就是事务的功能,我们在EJB中声明的事务会通过容器帮助我们来处理.支持EJB的SERVER有以下几个:WeblogicWebspereAppserver转载 2013-01-07 10:50:39 · 487 阅读 · 0 评论 -
Spring MVC和Struts2的区别
Spring MVC和Struts2的区别1. 机制:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同。2. 性能:spring会稍微比struts快。spring mvc是基于方法的设计,而sturts是基于类,每次发一次请求都会实例一个action,每个action都会被注入属性,而spring基于方法,粒度更细,但要小心把转载 2013-01-07 10:51:55 · 496 阅读 · 0 评论 -
Spring AOP使用(基于Annotation)
Spring AOP使用(基于Annotation) 本文主要简单的介绍了如何基于Annotation方式使用AOP。本文测试使用的是Spring3.1 + AspectJ1.6.一 示例代码1.IHelloWord.javapackage com.SpringAOP.HelloWord;public interface IHelloWord { p转载 2013-01-07 10:55:05 · 615 阅读 · 0 评论 -
Hibernate 执行步骤
1.Hibernate 的初始化.读取Hibernate 的配置信息-〉创建Session Factory1)创建Configeration类的实例。 它的构造方法:将配置信息(Hibernate config.xml)读入到内存。 一个Configeration 实例代表Hibernate 所有Java类到Sql数据库映射的集合。2)创建SessionFactor转载 2012-10-10 11:43:32 · 488 阅读 · 0 评论 -
Hibernate工作原理概述
一、Hibernate工作原理:读取并解析配置文件 读取并解析映射信息,创建SessionFactory 打开Sesssion 创建事务Transation 持久化操作 提交事务 关闭Session 关闭SesstionFactory 二、Hibernate有什么好处:对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。Hibernate是一个转载 2012-10-10 11:04:30 · 564 阅读 · 0 评论 -
java 集合框架详解
Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。 Java 2集合框架图 集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。 抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。 实现类:8个实现类(实线表示),对接口的具体实现。转载 2012-08-13 12:21:32 · 390 阅读 · 0 评论 -
重写equals()时要重写hashCode()
重写equals()时要重写hashCode()在重写一个类的equals()的同时,一般要重写hashCode()除非你确认类的对象不会放入HashSet,HashTable,HashMap。那么为什么要重写hashCode()呢?主要是为了确保hash表里面不会被放入重复的对象,以提高性能。那为什么重写了hashCode()就可以做到这一点呢?下面以一段代码分析。转载 2012-08-13 10:02:57 · 808 阅读 · 0 评论 -
对于Spring JoinPoint Pointcut Advice Advisor定义的理解
对于一个开发人员学习一个框架没有必要去抠其中的概念的命名定义,但是对于其中一些主要的核心概念理解的比较好的话对开发是绝对有好处的,在Spring的AOP编程中,最基本的几个概念就是Pointcut Joinpoint Advice Advisor ,我在一些视频和书籍都见过了相关的定义讲解,但是都觉得讲得不太清楚,既冗长又晦涩,所以结合多个方面的资料写一下自己的理解,希望能给有这方面困扰的朋友一些转载 2012-07-16 09:10:00 · 7378 阅读 · 1 评论 -
Maven 使用指南
(一)概述Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。简单的说Maven主要用来编译Java项目,使用XML来描述项目的组成部分:代码,资源及依赖关系。其主要目的是:简化编译(build)过程提供一个标准的转载 2013-03-29 18:13:54 · 791 阅读 · 0 评论 -
学习 Java 标注
Java 标注(Annotation)详解 转载自:http://william750214.javaeye.com/blog/298104元数据的作用如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类:l 编写文档:通过代码里标识的元数据生成文档。l 代码分析:通过代码里标识的元数据对代码进行转载 2013-03-29 19:08:08 · 561 阅读 · 0 评论 -
Socket IO 三种方式
IO三种方式:BIO,NIO,AIO (异步读写asynchronous IO)在BIO阻塞模式下server端:1 new ServerSocket(int port) 监听端口2 serverSocket.accept() 阻塞式等待客户端的连接,有连接才返回Socket对象3 socket.getINputStream() 获取客户端发过来的信息流4 socket转载 2013-05-21 13:08:28 · 4566 阅读 · 0 评论 -
gson使用笔记
Gson简要使用笔记哇,原来我已经潜水2年多了,还是需要养成习惯写写东西啊。最近在做一个java web service项目,需要用到jason,本人对java不是特别精通,于是开始搜索一些java平台的json类库。发现了google的gson,因为之前对于protocolbuf有一些了解,带着一些好奇心,我开始使用了gson。经过比较,gson和其他现有java转载 2013-05-08 10:20:12 · 691 阅读 · 0 评论 -
Redis 缓存数据库
【原文地址】http://www.infoq.com/cn/articles/tq-redis-memory-usage-optimization-storageRedis常用数据类型 Redis最为常用的数据类型主要有以下五种: String Hash List Set Sorted set 在具体描述这几种数据类型之前,我们先通过一张图了解下Redi转载 2013-05-21 13:26:31 · 21324 阅读 · 1 评论 -
几种开源Java Web容器线程池的实现方法简介
几种开源Java Web容器线程池的实现方法简介——Tomcat(一)目前市场上常用的开源Java Web容器有Tomcat、Resin和Jetty。其中Resin从V3.0后需要购买才能用于商业目的,而其他两种则是纯开源的。可以分别从他们的网站上下载最新的二进制包和源代码。作为Web容器,需要承受较高的访问量,能够同时响应不同用户的请求,能够在恶劣环境下保持较高的稳定性和健壮性。在H转载 2013-04-17 18:07:01 · 1146 阅读 · 0 评论 -
ThreadLocal是什么
ThreadLocal是什么早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命名为T转载 2013-04-17 17:40:06 · 480 阅读 · 0 评论 -
JSTL学习笔记
JSTL标签库的使用是为类弥补html表的不足,规范自定义标签的使用而诞生的。在告别modle1模式开发应用程序后,人们开始注重软件的分层设计,不希望在jsp页面中出现java逻辑代码,同时也由于自定义标签的开发难度较大和不利于技术标准化产生了自定义标签库。JSTL标签库可分为5类:q 核心标签库q I18N格式化标签库q SQL标签库q转载 2013-04-12 10:00:58 · 783 阅读 · 0 评论 -
servlet/filter/listener/interceptor区别与联系
servlet/filter/listener/interceptor区别与联系由于最近两个月工作比较清闲,个人也比较“上进”,利用工作空余时间,也继续学习了一下,某天突然想起struts2和struts1的区别的时候,发现为什么struts1要用servlet,而struts2要用filter呢?一时又发现,servlet和filter有什么区别呢?于是看了看web.xml,一时又发现,转载 2013-03-28 11:59:55 · 681 阅读 · 0 评论 -
Spring + Hessian 实现轻量级分布式远程调用【包含rmi方式重构】
最近一期的《programmer》里几乎从头至尾在讲关于“J2EE without EJB”的事情,可怜的ejb啊,居然被描述成了遗产系统的重要组成部分。。。其实有上面的结论,无外乎现在java里面的新技术已经几乎能完全取代ejb的优点,而克服ejb的缺点,entity bean和有状态的session bean已经机乎被视为垃圾,hibernate和spring大行其到,看看最进n期转载 2013-03-27 11:11:26 · 1303 阅读 · 0 评论 -
tomcat架构分析 (connector NIO 实现)
出处:http://gearever.iteye.com 上一篇简单记录了缺省配置的connector的内部构造及消息流,同时此connector也是基于BIO的实现。除了BIO外,也可以通过配置快速部署NIO的connector。在server.xml中如下配置; Xml代码 Connector port="80" URIEncoding="UTF-8" p转载 2015-04-09 11:15:01 · 847 阅读 · 0 评论