Spring版本: Spring3.0

1. IUserService.java

package com.lk.springdi.service;

import com.lk.springdi.model.User;

public interface IUserService {
    
    int addUser(User user);
    
    void deleteUser(User user);

}

UserServiceImpl.java

package com.lk.springdi.service.impl;

import javax.annotation.Resource;
import org.springframework.stereotype.Service;

import com.lk.springdi.dao.IUserDao;
import com.lk.springdi.model.User;
import com.lk.springdi.service.IUserService;

@Service("userService")
public class UserServiceImpl implements IUserService {
    private IUserDao userDao;

    @Override
    public int addUser(User user) {
        userDao.add(user);
        return 0;
    }

    @Override
    public void deleteUser(User user) {
        System.out.println("delete user");
    }

    public IUserDao getUserDao() {
        return userDao;
    }
    
    @Resource
    public void setUserDao(IUserDao userDao) {
        this.userDao = userDao;
    }
}

切面类: LogIntercepter.java

package com.lk.springdi.aop;

public class LogIntercepter {
    
    public void beforeMethod() {
        System.out.println("do some thing before method");
    }
    
    public void afterMethod() {
        System.out.println("do some thing after method");
    }
}

 

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-3.0.xsd
           http://www.springframework.org/schema/aop
           http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
    
    <context:annotation-config/>
    <context:component-scan base-package="com.lk.springdi"/>
    
    <bean id="logIntercepter" class="com.lk.springdi.aop.LogIntercepter"></bean>
    <aop:config>
        <aop:pointcut expression="execution(public * com.lk.springdi.service..*.*(..))" id="serviceCut"/>
        <aop:aspect id="logAspect" ref="logIntercepter">
            <aop:before method="beforeMethod" pointcut-ref="serviceCut"/>
            <aop:after method="afterMethod" pointcut-ref="serviceCut"/>
        </aop:aspect>
    </aop:config>

</beans>

测试

@Test
    public void test1() {
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
        IUserService userService = (IUserService) applicationContext.getBean("userService");
        User user = new User();
        userService.deleteUser(user);
    }

 

 

posted on 2013-12-12 22:32  寒岁青松  阅读(107)  评论(0)    收藏  举报