AOP的哪些增强类型可以同时应用于面向对象和函数式编程?

2026-04-16 12:422阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计216个文字,预计阅读时间需要1分钟。

AOP的哪些增强类型可以同时应用于面向对象和函数式编程?

javapackage org.jxnd.aop;

import org.aspectj.lang.annotation.AfterThrowing;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Before;import org.springframework.stereotype.Component;

@Component@Aspectpublic class AopDemo { // 在此处添加方法}

AOP的哪些增强类型可以同时应用于面向对象和函数式编程?

aopdemo.java

package org.jxnd.aop; import org.aspectj.lang.annotation.AfterThrowing; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.springframework.stereotype.Component; @Component @Aspect public class aopdemo { private static final String execution="execution(* org.jxnd.dao.*.*(..))"; @Before(value=execution) public void before(){ System.out.println("ǰǿ"); } @AfterThrowing(value=execution) public void Around(){ System.out.println("쳣"); } } IUdao.java

package org.jxnd.dao; public interface IUdao { void add ()throws Exception; void delete(); } Udao.java

package org.jxnd.dao; import org.springframework.stereotype.Component; @Component public class Udao implements IUdao { @Override public void add() throws Exception { System.out.println("----"); throw new Exception(); } @Override public void delete() { System.out.println("--ɾ-"); } } Test.java

package org.jxnd.test; import org.jxnd.dao.IUdao; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Test { public static void main(String[] args) throws Exception { ApplicationContext context=new ClassPathXmlApplicationContext("spring_application.xml"); IUdao dao=context.getBean(IUdao.class); dao.add(); //dao.delete(); } }

本文共计216个文字,预计阅读时间需要1分钟。

AOP的哪些增强类型可以同时应用于面向对象和函数式编程?

javapackage org.jxnd.aop;

import org.aspectj.lang.annotation.AfterThrowing;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Before;import org.springframework.stereotype.Component;

@Component@Aspectpublic class AopDemo { // 在此处添加方法}

AOP的哪些增强类型可以同时应用于面向对象和函数式编程?

aopdemo.java

package org.jxnd.aop; import org.aspectj.lang.annotation.AfterThrowing; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.springframework.stereotype.Component; @Component @Aspect public class aopdemo { private static final String execution="execution(* org.jxnd.dao.*.*(..))"; @Before(value=execution) public void before(){ System.out.println("ǰǿ"); } @AfterThrowing(value=execution) public void Around(){ System.out.println("쳣"); } } IUdao.java

package org.jxnd.dao; public interface IUdao { void add ()throws Exception; void delete(); } Udao.java

package org.jxnd.dao; import org.springframework.stereotype.Component; @Component public class Udao implements IUdao { @Override public void add() throws Exception { System.out.println("----"); throw new Exception(); } @Override public void delete() { System.out.println("--ɾ-"); } } Test.java

package org.jxnd.test; import org.jxnd.dao.IUdao; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Test { public static void main(String[] args) throws Exception { ApplicationContext context=new ClassPathXmlApplicationContext("spring_application.xml"); IUdao dao=context.getBean(IUdao.class); dao.add(); //dao.delete(); } }