Knowledge Walls
J2EE Technologies Tutorial
Hyderabad, Andhra Pradesh, India
Spring AOP's pointcut expression using @within() AspectJ Designator with Example
Below is an example of "Spring AOP's pointcut expression using @within() AspectJ Designator with Example"
Before display!
Age: 29
City: New york
State: American State
After display!
Download as Zip 
Link to download

Click on File menu. then click "Download"
Step.1 Start a Java Project with required jars 
  1. Open Eclipse
  2. Click on menu New -> Others
  3. In wizards type "Java Project" and Select "Java Project"
  4. Click Next
  5. Enter project name as "AOPLogBeforeAndAfterMethodUsingwithinAnnotaion", then click Next
  6. Goto Libraries tab, then click on Add External JARs, then select Spring's 21 Framework Jars aopalliance-1.0.jar, aspectjtools-1.6.6.jar and commons-logging-1.1.jar.
  7. Click Finish.
Step.2 Project Explorer Preview
package com.springexample;

public class StudentAdditionalDetails extends Student {
	private String age;
	private String city;
	private String state;
	public String getAge() {
		return age;
	public void setAge(String age) {
		this.age = age;
	public String getCity() {
		return city;
	public void setCity(String city) { = city;
	public String getState() {
		return state;
	public void setState(String state) {
		this.state = state;
	public void display(){
		System.out.println("Age: "+age);
		System.out.println("City: "+city);
		System.out.println("State: "+state);
package com.springexample;

import org.springframework.context.ApplicationContext;

public class RunMyProgram {
	public static void main(String[] args) {
		ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
			StudentAdditionalDetails student = (StudentAdditionalDetails) context.getBean("studentAdditionalDetails");
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""

	<bean id="student" class="com.springexample.Student">
		<property name="studentNo" value="1001" />
		<property name="studentName" value="John Peter" />
	<bean id="studentAdditionalDetails" class="com.springexample.StudentAdditionalDetails">
		<property name="age" value="29" />
		<property name="city" value="New york" />
		<property name="state" value="American State" />
	<bean id="mylogger" class="com.springexample.MyLogger" />
		<aop:aspect ref="mylogger">
			<aop:pointcut expression="@within(com.springexample.StudentQualifier)" id="studentDisplayLogsPnt"/>
			<aop:before pointcut-ref="studentDisplayLogsPnt" method="beforeDisplay" />
			<aop:after pointcut-ref="studentDisplayLogsPnt" method="afterDisplay" />

package com.springexample;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

public @interface StudentQualifier {
package com.springexample;

public class MyLogger {
	public void beforeDisplay(){
		System.out.println("Before display!");
	public void afterDisplay(){
		System.out.println("After display!");
package com.springexample;

public class Student {
	private int studentNo;
	private String studentName;
	public int getStudentNo() {
		return studentNo;
	public void setStudentNo(int studentNo) {
		this.studentNo = studentNo;
	public String getStudentName() {
		return studentName;
	public void setStudentName(String studentName) {
		this.studentName = studentName;
	public void display(){
		System.out.println("No: "+studentNo);
		System.out.println("Name: "+studentName);
Best Lessons of "Spring 3.0 Examples"
Top lessons which are viewed more times.
  Copyright © 2014 Knowledge walls, All rights reserved
keep your tutorials and learnings with KnowledgeWalls. Don't lose your learnings hereafter. Save and revise it whenever required.
Click here for more details