Home Tutorial Spring Spring3 Aop Pointcut Example Using JdkRegexpMethod

 
 

Share on Google+Share on Google+
Pointcut Example Using JdkRegexpMethod
Posted on: September 8, 2010 at 12:00 AM
Advertisement
In this tutorial you will learn how to use JdkRegexpMethod in Spring aop pointcut to match the method by name in package.

Pointcut Example JdkRegexpMethod

In JdkRegexpMethodPointcut the most intertesting thing is its pattern matching method names spring matches fully qualified method name. This is a powerful concept which allows you to match all the method within a given package. The example given below illustrates the use of JdkRegexpMethodPointcut.

SimpleBean.java

package roseindia.net.bean;

public class SimpleBean {
	public void sayHi() {
		System.out.println("Hi Friend");
	}

	public void sayHi(String name) {
		System.out.println("Hi " + name);
	}

	public void greet() {
		System.out.println("Have a Nice Day......");
	}
}

SimpleAdvice.java

package roseindia.net.advice;

import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;

public class SimpleAdvice implements MethodInterceptor {

	@Override
	public Object invoke(MethodInvocation methodInvocation) throws Throwable {
		System.out.println("Calling......"
				+ methodInvocation.getMethod().getName());
		Object object = methodInvocation.proceed();
		System.out.println("End");
		// TODO Auto-generated method stub
		return object;
	}

}

MainClaz.java

package roseindia.net.main;

import org.springframework.aop.Advisor;
import org.springframework.aop.framework.ProxyFactory;
import org.springframework.aop.support.DefaultPointcutAdvisor;
import org.springframework.aop.support.JdkRegexpMethodPointcut;

import roseindia.net.advice.SimpleAdvice;
import roseindia.net.bean.SimpleBean;

public class MainClaz {
	public static void main(String[] args) {
		SimpleBean simpleBean = new SimpleBean();
		JdkRegexpMethodPointcut jdkRegexpMethodPointcut = new JdkRegexpMethodPointcut();
		jdkRegexpMethodPointcut.setPattern(".*sayHi.*");
		SimpleAdvice advice = new SimpleAdvice();
		Advisor advisor = new DefaultPointcutAdvisor(jdkRegexpMethodPointcut,
				advice);

		ProxyFactory proxyFactory = new ProxyFactory();
		proxyFactory.setTarget(simpleBean);
		proxyFactory.addAdvisor(advisor);

		SimpleBean proxy = (SimpleBean) proxyFactory.getProxy();
		proxy.sayHi();
		proxy.greet();
		proxy.sayHi("Vinay");
	}
}

When you run this application it will display message as shown below:

Calling......sayHi
Hi Friend
End
Have a Nice Day......
Calling......sayHi
Hi Vinay
End

Download this example code

Advertisement

Related Tags for Pointcut Example Using JdkRegexpMethod :


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: September 8, 2010

Recommend the tutorial

Advertisements Advertisements
 

 

 

DMCA.com