java
文章平均质量分 55
lorry1113
这个作者很懒,什么都没留下…
展开
-
JVM内存管理:深入垃圾收集器与内存分配策略
[url][b]转自http://icyfenix.iteye.com/blog/802638[/b][/url]JVM配置管理应用服务器算法虚拟机 . Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。 概述: 说起垃圾收集(Garbage Collection,下文简称GC),大部分人都把这项技术...原创 2012-09-29 09:40:42 · 95 阅读 · 0 评论 -
详解spring事务属性(转)
Spring声明式事务让我们从复杂的事务处理中得到解脱。使得我们再也无需要去处理获得连接、关闭连接、事务提交和回滚等这些操作。再也无需要我们在与事务相关的方法中处理大量的try…catch…finally代码。 我们在使用Spring声明式事务时,有一个非常重要的概念就是事务属性。事务属性通常由事务的传播行为,事务的隔离级别,事务的超时值和事务只读标志组成。我们在进行事务划分时,需要进行事务定...原创 2011-06-10 10:46:09 · 75 阅读 · 0 评论 -
spring心得(转)
1、spring原理 spring的最大作用ioc/di,将类与类的依赖关系写在配置文件中, 程序在运行时根据配置文件动态加载依赖的类,降低的类与类之间 的藕合度。它的原理是在applicationContext.xml加入bean标记, 在b...原创 2011-06-03 11:00:28 · 60 阅读 · 0 评论 -
实战Concurrent
编写多线程的程序一直都是一件比较麻烦的事情,要考虑很多事情,处理不好还会出很多意想不到的麻烦。加上现在很多开发者接触到的项目都是打着企业级旗号的B/S项目,大多数人都很少涉及多线程,这又为本文的主角增加了一份神秘感。 讲到Java多线程,大多数人脑海中跳出来的是Thread、Runnable、synchronized……这些是最基本的东西,虽然已经足够强大,但想要用好还真不容易。从...原创 2011-05-30 17:45:32 · 79 阅读 · 0 评论 -
Memcached(转)
我对于Memcached的接触,还是在去年看了CSDN的一系列国外大型网站架构设计而开始的。最初的时候只是简单的封装了Memcached Java版的客户端,主要是对于配置的简化以及Memcached多点备份作了一些工作,然后就作为ASF的组件一部分提供给其他Team使用。其实看过Memcached Java客户端代码的人就会了解其实客户端的事情很简单,就是要有一套高性能的Socket通信框架以...原创 2011-05-30 17:32:36 · 128 阅读 · 0 评论 -
Spring事务配置的五种方式
前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。 总结如下: Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置...原创 2010-09-30 13:00:06 · 74 阅读 · 0 评论 -
Spring Bean基本管理
一、使用setter方式完成依赖注入 下面是Bean和beans-config.xml文件。 [code="java"]public class HelloBean { private String helloWord; //...省略getter、setter方法 } ...原创 2010-09-30 11:37:01 · 79 阅读 · 0 评论 -
动态创建代理(转)
随着Proxy的流行,Sun把它纳入到JDK1.3实现了Java的动态代理。动态代理和普通的代理模式的区别,就是动态代理中的代理类是由 java.lang.reflect.Proxy类在运行期时根据接口定义,采用Java反射功能动态生成的。和 java.lang.reflect.InvocationHandler结合,可以加强现有类的方法实现。如图2,图中的自定义Handler实现 Invoca...原创 2011-04-21 11:22:03 · 105 阅读 · 0 评论 -
代理模式(转)
代理模式是常用的Java 设计模式,它的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。[code="java"]package proxy;inte...原创 2011-04-21 11:17:54 · 67 阅读 · 0 评论 -
工厂模式
简单工厂,工厂方法和抽象工厂模式 对于简单工厂来说,它的工厂只能是这个样子的 [code="java"]public class SimplyFactory { /*** 静态工厂方法*/public static Prouct factory(String which) throw NoSuchProductExcption{ if(which...原创 2011-04-18 15:35:40 · 78 阅读 · 0 评论 -
java gc(转)
[code="java"] [/code][color=red]结果为:[/color]垃圾回收前,内存使用情况为:已用内存/总内存:27,045,560/51,408,896 垃圾回收开始,时间为:1308902698673 垃圾回收前,内存使用情况为:已用内存/总内存:19,768,072/51,408,896 垃圾回收结束,时间为:1308902699023...原创 2011-06-24 16:07:25 · 87 阅读 · 0 评论 -
System.gc()
最近在在翻看java的Garbage Collection,即大名鼎鼎的垃圾收集器GC的相关资料,整理了一下头绪,和朋友们共勉之。Java的GC机制大名远扬,它大幅提高了程序员开发效率,省去了在c#中要显式的释放每一块内存的麻烦。我们常听到的“内存泄漏”实际上就是指无用的内存没有被及时回收。例如你声明了一个变量,而该变量所在的主进程需要运行很长时间,那么就形成了局部上的“内存泄漏”。“内存...原创 2011-06-24 17:40:27 · 79 阅读 · 0 评论 -
javaVM 内存管理
转自[url]http://icyfenix.iteye.com/blog/802573[/url]Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。 概述: 对于从事C、C++程序开发的开发人员来说,在内存管理领域,他们即是拥有最高权力的皇帝又是执行最基础工作的劳动人民——拥有每一个对象的“所有权”,又担负着每一...原创 2012-09-29 09:18:21 · 129 阅读 · 0 评论 -
使用J2SE API读取Properties文件的六种方法
1。使用java.util.Properties类的load()方法示例: [code="java"]InputStream in = lnew BufferedInputStream(new FileInputStream(name));Properties p = new Properties();p.load(in);[/code]2。使用java.util.Resource...原创 2012-03-15 11:46:37 · 89 阅读 · 0 评论 -
java设计模式 -Decorator
[code="java"]//抽象构件角色abstract public class Component{ abstract public void prtTicket(); } //具体构建角色public class SaleTicket extend Component{ public void prtTicket(){ System.out....原创 2012-03-01 16:05:27 · 85 阅读 · 0 评论 -
设计模式------Decorator
一、学习装饰着模式1、定义及作用 该模式以对客户端透明的方式扩展对象的功能。2、涉及角色 抽象构件角色:定义一个抽象接口,来规范准备附加功能的类。 具体构件角色:将要被附加功能的类,实现抽象构件角色接口。 抽象装饰者角色:持有对具体构件角色的引用并定义与抽象构件角色一致的接口。 具体装饰角色:实现...原创 2012-03-01 14:29:39 · 85 阅读 · 0 评论 -
正则表达式学习
[code="java"]//正则表达式去掉中文public static void regexDelChinese(){ String str = "a67$bcdefg中文dcba111"; Pattern p=Pattern.compile("[\\u4e00-\\u9fa5]"); StringBuffer bf = new StringBuffer...原创 2011-12-31 09:56:58 · 94 阅读 · 0 评论 -
java 通过反射获取泛型的类型
jdk1.5开始支持泛型,所以我们有时需要把泛型里定义的对象的类型拿到比如现在我定义了三个类Account, AccountItem和Product类。Account聚合AccountItem,AccountItem聚合Prodcut。都是用List和List来表示的我要实现一个功能,需要动态的传入一个Class的类型,然后反射到启动的List,根据List里定义的...原创 2011-03-24 13:34:15 · 212 阅读 · 0 评论 -
java反射学习(转)
Java提供了一套机制来动态执行方法和构造方法,以及数组操作等,这套机制就叫——反射。反射机制是如今很多流行框架的实现基础,其中包括Spring、Hibernate等。原理性的问题不是本文的重点,接下来让我们在实例中学习这套精彩的机制。1. 得到某个对象的属性[code="java"]public Object getProperty(Object owner, String fiel...原创 2011-03-22 15:51:46 · 74 阅读 · 0 评论 -
java反射(转)
Java的反射机制是Java特性之一,反射机制是构建框架技术的基础所在。灵活掌握Java反射机制,对大家以后学习框架技术有很大的帮助。 那么什么是Java的反射呢? 大家都知道,要让Java程序能够运行,那么就得让Java类要被Java虚拟机加载。Java类如果不被Java虚拟机加载,是不能正常运行的。现在我们运行的所有的程序都是在编译期的时候就已经知道了你所需要的那个类的...原创 2011-03-22 15:29:49 · 1117 阅读 · 0 评论 -
Quartz学习
1.与Spring集成Spring中与quartz 的结合方式有两种,一种是以quartz本身的一些特性,没有很好的体现springside的一切都是pojo宗旨,这里暂且不谈,而springside中实现的是以pojo为job的一种做法,大致的配置如下:[code="java"] [/code]而quartz的Trigger和Schedu...原创 2010-11-09 13:20:03 · 67 阅读 · 0 评论 -
Spring中ref local与ref bean区别:
今天在做SSH框架Demo实例时,在ApplicationResources.properties文件时对与感到不解,经查找资料才弄明白,如下:[code="java"] < bean id = "userDAOProxy" class = "org.springframework.transaction.interceptor.TransactionProxy...原创 2010-09-20 11:00:47 · 68 阅读 · 0 评论 -
bridge 桥接模式_ 简单
学习设计模式也有一段时间了,今天就把我整理的一篇课程和大家分享,有不妥之处欢迎指出. 生活中的一个例子: 就拿汽车在路上行驶的来说。即有小汽车又有公共汽车,它们都不但能在市区中的公路上行驶,也能在高速公路上行驶。这你会发现,对于交通工具(汽车)有不同的类型,然而它们所行驶的环境(路)也在变化,在软件系统中就要适应两个方面的变化?怎样实现才能应对这种变化呢?概述:在软件系统中,...2010-02-25 16:32:27 · 97 阅读 · 0 评论 -
java常用类(转)收藏
java.applet包含一些用于创建java小应用程序的类。java.awt包含一些用于编写与平台无关的图形界面(GUI)应用程序的类。java.io包含一些用作输入输出(I/O)处理的类。java.lang包含一些java语言的基本类与核心类,如String Math Integer System Runtime提供常用的功能,这个包中的所有类是被隐式导入的。jav...原创 2009-07-02 17:02:30 · 80 阅读 · 0 评论 -
spring 事务
在软件开发中出现过各种各样的框架,开源软件的兴起,使得各种各样的框架纷纷出现,例如,Apache组织下就拥有诸多的框架类产品。框架就是一组协同工作的类,它们为特定类型的软件构筑了一个可重用的设计。然而,传统的框架使得应用程序组件过分依赖于框架中的类,这种耦合度的提高降低了组件的复用性。Spring框架的出现,使得组件之间更松散的耦合成为了可能。 Spring框架简介 Sprin...原创 2009-12-21 17:48:33 · 72 阅读 · 0 评论 -
observer 观察者
一、Observer模式的意图:在对象的内部状态发生变化时,自动通知外部对象进行响应。二、Observer模式的构成:·被观察者:内部状态有可能被改变,而且又需要通知外部的对象·观察者:需要对内部状态的改变做出响应的对象三、Observer模式的Java实现:Java的API中已经为我们提供了Observer模式的实现。具体由java.util.Ob...原创 2009-12-18 17:12:08 · 90 阅读 · 0 评论 -
MVC与三层架构的异同点
同样是架构级别的,它们有什么相同点和不同点呢?这篇文章讨论一下它们的异同点。希望能帮助读者理解其中的玄机。 :)其实它们相同的地方在于他们都有一个表现层。但是他们不同的地方在于其他的两个层。首先先解释一下MVC。V即View.是视图的意思。C即Controler.是控制器的意思。而M即Model,是模型的意思。这三个里.最不容易理解的应该是Model.就是什么是...原创 2009-12-18 15:55:55 · 81 阅读 · 0 评论 -
adapter 适配器
适配器模式定义:将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份.为何使用?我们经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是:修改各自类的接口,但是如果我们没有源代码,或者,我们不愿意为了一个应用而修改各自的接口。 怎么办?使用Adapter,在这两种接口之间创建一个混合接口(混血儿)....原创 2009-12-17 16:04:26 · 87 阅读 · 0 评论 -
Facade(门面模式)
一、门面模式定义 外部与一个子系统的通信必须通过一个统一的门面(Facade)对象进行,这就是门面模式。举个例子:在做项目或产品的过程中进行跨部门合作的时候,每个部门都有个相应的接口人,那么我们只需和对应部门的接口人交互即可,门面模式也一样,门面模式提供一个高层次的接口,使得子系统更易于使用。二、 门面模式的结构 门面(Facade)角色:客户端可以调用这个角色...原创 2009-12-16 14:20:45 · 74 阅读 · 0 评论 -
bridge 桥接模式
1,解释 桥接模式2,log4j用了什么模式写出两种单例模式3,写出facade模式的典型代码很高兴他们会问模式,虽然我有些没有答出来其中桥接模式我没有答出来回来后,我看了下,原来我看过好几次的,是抽象与行为分离问题形象描述:小杯咖啡加牛奶 小杯咖啡不加牛奶中杯咖啡加牛奶 中杯咖啡不加牛奶大杯咖啡加牛奶 大杯咖啡不加牛奶问题的可变元素...原创 2009-12-15 16:33:23 · 86 阅读 · 0 评论 -
代理模式
一、定义和分类A:What’s 代理模式 in English ?B:It is Proxy or Surrogate !代理模式在设计模式中的定义就是:为其他对象提供一种代理以控制对这个对象的访问。说白了就是,在一些情况下客户不想或者不能直接引用一个对象,而代理对象可以在客户和目标对象之间起到中介作用,去掉客户不能看到的内容和服务或者增添客户需要的额外服务。 ...原创 2009-12-15 14:36:50 · 97 阅读 · 0 评论 -
Strategy策略模式:
定义一系列的算法,把他们一个个封装起来,并且使它们可相互替换。Strategy模式使算法可独立于使用它的客户而变化。Strategy模式以下列几条原则为基础:1) 每个对象都是一个具有职责的个体。2) 这些职责不同的具体实现是通过多态的使用来完成的。3) 概念上相同的算法具有多个不同的实现,需要进行管理。例子:public interface...原创 2009-12-14 15:11:39 · 65 阅读 · 0 评论 -
string,stringbuffer与stringbuilder
String类public final class Stringextends Objectimplements Serializable, Comparable, CharSequence String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例来实现。字符串是常量;它们的值在创建之后不能改变。字符串缓冲区支持可变...原创 2009-07-02 17:07:03 · 79 阅读 · 0 评论 -
Java接口和Java抽象类
在没有好好地研习面向对象设计的设计模式之前,我对Java接口和Java抽象类的认识还是很模糊,很不可理解。刚学Java语言时,就很难理解为什么要有接口这个概念,虽说是可以实现所谓的多继承,可一个只有方法名,没有方法体的东西,我实现它又有什么用呢?我从它那什么也得不到,除了一些方法名,我直接在具体类里加入这些方法不就行了吗?为什么一定要有抽象类这个概念?为什么...原创 2009-07-09 11:36:07 · 72 阅读 · 0 评论 -
java数据结构内容整理
Collection:List、Set Map:HashMap、HashTable 如何在它们之间选择 一、Array , Arrays Java所有“存储及随机访问一连串对象”的做法,array是最有效率的一种。 1、 效率高,但容量固定且无法动态改变。 array还有一个缺点是,无法判断其中实际存有多少元素,length只是告诉我们array的容...原创 2010-07-21 14:58:36 · 70 阅读 · 0 评论 -
再思考Java里的数据结构容器——hash容器:hashset hashmap hash容器的结构
:arrow: Hashtable跟hashmap差不多,不过HashTable强制同步,是线程安全的。HashSet是通过内置的HashMap来实现的,HashSet中指定的元素类型E,本身就是key,每个元素的value是一个常量object,HashSet仅作一个集合管理,只有add contains remove等接口,没有get接口。重点讨论下HashMap的结构。...原创 2010-07-21 14:56:55 · 95 阅读 · 0 评论 -
hibernate动态表名映射
最近用Hibernate做一个项目的时候遇到这么一个问题:用一个配置文件,一个类去映射多个表,(每个表的结构相同)。按照平时的做法,有多少个表就要写多少个配置文件,岂不是很麻烦。怎样才能只写一个配置文件就能达到上述目的呢?经过研究,发现Hibernate中的NamingStrategy可以达到这个目的。它是用来定义表名和列名映射规则的一个接口。我们要通过实现这个接口来实现自己的...原创 2009-07-22 15:18:08 · 64 阅读 · 0 评论 -
Class.forName( )
在Java开发特别是数据库开发中,经常会用到Class.forName( )这个方法。通过查询Java Documentation我们会发现使用Class.forName( )静态方法的目的是为了动态加载类。在加载完成后,一般还要调用Class下的newInstance( )静态方法来实例化对象以便操作。因此,单单使用Class.forName( )是动态加载类是没有用的,其最终目的是为了实例化...原创 2009-07-15 17:13:13 · 73 阅读 · 0 评论 -
Class.forName 介绍
Class.forName(xxx.xx.xx) 返回的是一个类首先你要明白在java里面任何class都要装载在虚拟机上才能运行。这句话就是装载类用的(和new 不一样,要分清楚)。 至于什么时候用,你可以考虑一下这个问题,给你一个字符串变量,它代表一个类的包名和类名,你怎么实例化它?只有你提到的这个方法了,不过要再加一点。 A a = (A)Class.forNam...原创 2009-07-15 16:00:10 · 73 阅读 · 0 评论 -
Acegi安全系统的配置
Acegi 的配置看起来非常复杂,但事实上在实际项目的安全应用中我们并不需要那么多功能,清楚的了解Acegi配置中各项的功能,有助于我们灵活的运用Acegi于实践中。2.1 在Web.xml中的配置1) FilterToBeanProxy Acegi通过实现了Filter接口的FilterToBeanProxy提供一种特殊的使用Servlet Filter的方式,它委托...原创 2009-07-13 16:00:21 · 66 阅读 · 0 评论