2018-10-24 Spring AOP(切断面向けプログラミング)
2683 ワード
Springエージェントの2つの方法
一、コンフィギュレーションContect.xmlドキュメントを使用して代理を実現する.
最初の導入:
1、コメントを使う前にxmlプロファイルで自動代理を行う
一、コンフィギュレーションContect.xmlドキュメントを使用して代理を実現する.
最初の導入:
二、注釈を使って代理を実現する.1、コメントを使う前にxmlプロファイルで自動代理を行う
接面すなわち補強類に@Asppect注を使うと、package com.spring.plus;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
@Aspect//
public class MyPlus {
@Before("execution(void com.spring.dao.impl.AgentDaoImpl.levelUp())")// : , levelUp puls()
public void plus(){
System.out.println(" 999, !");
}
}
AgentDao類package com.spring.dao.impl;
import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.stereotype.Component;
import com.spring.dao.AgentDao;
import com.spring.plus.MyPlus;
@Component("agentDao")
public class AgentDaoImpl implements AgentDao {
@Override
public void levelUp() throws Exception {
System.out.println("this is AgentDao implement class!");
}
}
Testテストクラス@Test
public void test(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
MyPlus p=(MyPlus) context.getBean("myPlus");
try {
AgentDao agentDao=(AgentDao) context.getBean("agentDao");
agentDao.levelUp();
} catch (Exception e) {
e.printStackTrace();
}
}
出力結果:一刀999、装備回収秒から入金!this is AgentDao implement class!