- 浏览: 94915 次
最新评论
文章列表
作者shensy及出处http://shensy.iteye.com/blog/1881130
实战CGLib系列文章
本篇介绍回调过滤器CallbackFilter。
一、作用
在CGLib回调时可以设置对不同方法执行不同的回调逻辑,或者根本不执行回调。
在JDK动态代理中并没有类似的功能,对InvocationHandler接口方法的调用对代理类内的所以方法都有效。
二、示例:
首先定义一个被代理类,包含3个方法:
Java代码
public class ConcreteClassNoInterface {
public St ...
作者shensy及出处http://shensy.iteye.com/blog/1881277
实战CGLib系列文章本篇介绍延迟加载器LazyLoader。一、作用:说到延迟加载,应该经常接触到,尤其是使用Hibernate的时候,本篇将通过一个实例分析延迟加载的实现方式。LazyLoader接口继承了Callback,因此也算是CGLib中的一种Callback类型。
二、示例:首先定义一个实体类LoaderBean,该Bean内有一个需要延迟加载的属性PropertyBean。
LoaderBean.java:
Java代码
public class Lo ...
http://www.cnblogs.com/rollenholt/p/4202631.html
Spring Cache
缓存是实际工作中非常常用的一种提高性能的方法, 我们会在许多场景下来使用缓存。
本文通过一个简单的例子进行展开,通过对比我们原来的自定义缓存和 spring 的基于注释的 cache 配置方法,展现了 spring cache 的强大之处,然后介绍了其基本的原理,扩展点和使用场景的限制。通过阅读本文,你应该可以短时间内掌握 spring 带来的强大缓存技术,在很少的配置下即可给既有代码提供缓存能力。
概述
Spring 3.1 引入了激动人心的基于注释(a ...
作者shensy及出处http://shensy.iteye.com/blog/1873155
实战CGLib系列文章
本篇介绍通过MethodInterceptor和Enhancer实现一个动态代理。
一、首先说一下JDK中的动态代理:
JDK中的动态代理是通过反射类Proxy以及InvocationHandler回调接口实现的,不了解的同学请参考我的这篇Blog:Java动态代理详解 http://shensy.iteye.com/blog/1698197
但是,JDK中所要进行动态代理的类必须要实现一个接口,也就是说只能对该类所实现接口中定义的方法进行代理,这在实际编 ...
http://blog.csdn.net/cutesource/article/details/6136275
AOP有些特有的概念,如:advisor、advice和pointcut等等,使用或配置起来有点绕,让人感觉有些距离感,其实它的实现就是一组标准的设计模式的组合使用:Factory、Proxy、Chain of Responsibility,只要搞清楚这几个设计模式,读AOP的源码是比较容易的。
首先看看ProxyFactoryBean这个类,这是AOP使用的入口,从AOP拿到的bean object就是ProxyFactoryBean.getObject得到的,从这条线下 ...
深入理解Java Proxy机制 .
- 博客分类:
- jdk
http://blog.csdn.net/rokii/article/details/4046098
动态代理其实就是java.lang.reflect.Proxy类动态的根据您指定的所有接口生成一个class byte,该class会继承Proxy类,并实现所有你指定的接口(您在参数中传入的接口数组);然后再利用您指定的classloader将 class byte加载进系统,最后生成这样一个类的对象,并初始化该对象的一些值,如invocationHandler,以即所有的接口对应的Method成员。 初始化之后将对象返回给调用的客户端。这样客户端拿到的就是一个实现你所有的接口 ...
http://blog.csdn.net/arkblue/article/details/6237380
Spring整合RMI的原理
客户端的核心是RmiProxyFactoryBean,包含serviceURL属性和serviceInterface属性。
通过JRMP访问服务。JRMP JRMP:java remote method protocol,Java特有的,基于流的协议。
服务端暴露远程服务
RmiServiceExporter把任何Spring管理的Bean输出成一个RMI服务。通过把Bean包装在一个适配器类中工作。适配器类被绑定到RMI注册表中, ...
http://lavasoft.blog.51cto.com/62575/91679/
Java RMI之HelloWorld篇
Java RMI 指的是远程方法调用 (Remote Method Invocation)。它是一种机制,能够让在某个 Java 虚拟机上的对象调用另一个 Java 虚拟机中的对象上的方法。可以用此方法调用的任 ...
来源:http://blog.csdn.net/a379039233/article/details/6158816
一,class类有什么用?
class类的实例表示java应用运行时的类(class ans enum)或接口(interface and annotation)(每个java类运行时都在JVM里表现为一个class对象,可通过类名.class,类型.getClass(),Class.forName("类名")等方法获取class对象)。数组同样也被映射为class 对象的一个类,所有具有相同元素类型和维数的数组都共享该 Class 对象。 ...
来源:http://www.cnblogs.com/lwbqqyumidi/p/3837629.html
一. 泛型概念的提出(为什么需要泛型)?
首先,我们看下下面这段简短的代码:
public class GenericTest {
public static void main(String[] args) {
List list = new ArrayList();
list.add("qqyumidi");
list.add("corn");
...
http://www.cnblogs.com/obullxl/archive/2011/07/10/spring-quartz-cron-integration.html
Spring集成Quartz定时任务框架介绍和Cron表达式详解
在JavaEE系统中,我们会经常用到定时任务,比如每天凌晨生成前天报表,每一小时生成汇总数据等等。我们可以使用java.util.Timer结合java.util.TimerTask来完成这项工作,但时调度控制非常不方便,并且我们需要大量的代码。使用Quartz框架无疑是非常好的选择,并且与Spring可以非常方便的集成,下面介绍它们集成方 ...
来源:http://thinkerandthinker.iteye.com/blog/1337706
spring的容器是提供了lazy-load的,即默认的缺省设置是bean没有lazy-load,该属性处于false状态,这样导致spring在启动过程导致在启动时候,会默认加载整个对象实例图,从初始化ACTION配置、到service配置到dao配置、乃至到数据库连接、事务等等。 这么庞大的规模,难怪spring的启动时间要花将近1分钟。尝试了一下,把beans的default-lazy-init改为true就,再次启动,速度从原来的55秒,降到8秒钟!!Great!虽然是非常小 ...
http://soft.chinabyte.com/database/290/12218290.shtml
grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott;
create public database link
to_bylw connect to scott identified by tiger using 'bylw';
create public database link
to_bylw connect to scott identified by tiger usin ...
http://www.iteye.com/topic/1121357?page=3
基于JDK动态代理和CGLIB动态代理的实现Spring注解管理事务(@Trasactional)到底有什么区别。
我还是喜欢基于Schema风格的Spring事务管理,但也有很多人在用基于@Trasactional注解的事务管理,但在通过基于JDK动态代理和CGLIB动态代理的实现Spring注解管理事务是有区别的,我们接下来看看到底有哪些区别。
一、基础工作
首先修改我们上一次做的 SpringMVC + spring3.1.1 + hibernate4.1.0 集成及常见 ...
web项目的contextPath设置的值是任意的,只要在tomcat的server.xml下配置或者请求的时候加上webapp下面的项目名称也可以