乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      spring用Aop實現(xiàn)計算器驗證(注解方式)

       魏祖清 2016-09-11
      //抽象類:ArithnmeticCalulator
      public interface ArithnmeticCalulator {
      int add(int i,int j);
      int sub(int i,int j);
      int mul(int i,int j);
      int div(int i,int j);
      }
      //實現(xiàn)抽象類:ArithnmeticCalulator類
      @Component("arithnmeticCalulator")
      public class ArithnmeticCalulatorImpl implements ArithnmeticCalulator {
      實現(xiàn)方法省去.....
      }
      LogginAspect實現(xiàn)
      //把這個類聲明為一個切面,需要吧該類放入IOC容器中,在聲明一個切面
      @Aspect
      @Component
      public class LogginAspect {
      // 定義一個方法,用于聲明切入點的表達式,一般在放中不需要添加其他的代碼
      @Pointcut("execution(* com.wzq.spring.aop.impl.*.*(..))")
      public void declareJoinPointExpression() {

      }

      @Before("declareJoinPointExpression()")
      public void beforeMethod(JoinPoint joinPoint) {
      //獲取ArithnmeticCalulator的method方法
      String methodName = joinPoint.getSignature().getName();
      //獲取ArithnmeticCalulator的method值
      List<Object> args = Arrays.asList(joinPoint.getArgs());
      System.out.println("The method " + methodName + "begins" + args);
      }

      // 后置通知:在目標方法執(zhí)行后執(zhí)行的通知,執(zhí)行的通通知 //后置通知不會返回結(jié)果
      @After("declareJoinPointExpression()")
      public void afterMethod(JoinPoint joinPoint) {
      String methodName = joinPoint.getSignature().getName();
      System.out.println("The method " + methodName + "ends");
      // 異常通知
      @AfterThrowing(value ="declareJoinPointExpression()", throwing = "ex")
      public void afterThrowing(JoinPoint joinPoint, Exception ex) {
      String methodName = joinPoint.getSignature().getName();
      System.out.println("The method " + methodName + "execution" + ex);
      }
      }
      XML配置
      <!-- 配置bean -->
      <bean class="com.wzq.spring.aop.xml.ArithnmeticCalulatorImpl" id="arithnmeticCalulator"></bean>
      <!-- 配置切面的bean -->
      <bean id="logginAspect" class="com.wzq.spring.aop.xml.LogginAspect"></bean>
      main方法
      public class Main {
      public static void main(String[] args) {
      ApplicationContext ctx = new ClassPathXmlApplicationContext(
      "applicationContext.xml");
      ArithnmeticCalulator arithnmeticCalulator = ctx
      .getBean(ArithnmeticCalulator.class);
      int result = arithnmeticCalulator.sub(6, 6);
      System.out.println("result:" + result);
      int result1=arithnmeticCalulator.div(10, 0);
      System.out.println(result1);
      }
      }

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多