<address id="zhpbl"></address>
<noframes id="zhpbl">
<address id="zhpbl"><form id="zhpbl"><th id="zhpbl"></th></form></address>

    <em id="zhpbl"></em>

      <address id="zhpbl"><th id="zhpbl"><progress id="zhpbl"></progress></th></address>
      更多精彩內容,歡迎關注:

      視頻號
      視頻號

      抖音
      抖音

      快手
      快手

      微博
      微博

      java advice

      文檔

      java advice

      Advice是在Join Point上執行的一個動作或者通知,一般通過攔截器調用。Spring有兩大核心,IOC和AOP,在模塊AOP里面有個advice。
      推薦度:
      導讀Advice是在Join Point上執行的一個動作或者通知,一般通過攔截器調用。Spring有兩大核心,IOC和AOP,在模塊AOP里面有個advice。

      java advice是什么,讓我們一起了解一下?

      Advice是在Join Point上執行的一個動作或者通知,一般通過攔截器調用。Spring有兩大核心,IOC和AOP,在模塊AOP里面有個advice。

      在Spring-AOP中,增強(Advice)是如何實現的?

      按照增強在目標類方法連接點的位置可以將增強劃分為以下五類:

      前置增強 (org.springframework.aop.BeforeAdvice) 表示在目標方法執行前來實施增強。

      后置增強 (org.springframework.aop.AfterReturningAdvice)表示在目標方法執行后來實施增強。

      環繞增強 (org.aopalliance.intercept.MethodInterceptor)表示在目標方法執行前后同時實施增強。

      異常拋出增強 (org.springframework.aop.ThrowsAdvice) 表示在目標方法拋出異常后來實施增強。

      引介增強 (org.springframework.aop.introductioninterceptor)表示在目標類中添加一些新的方法和屬性。

      實戰操作:Spring中Advice簡單案例

      1、配置類

      @Configuration//配之類
      @EnableAspectJAutoProxy//啟用AspectJ自動代理
      @ComponentScan(basePackages?=?{"spring01","spring02"})?//basePackages指定掃描的包
      public?class?Config?{
      }

      2、切面類

      @Aspect
      @Component
      public?class?Audience?{
      ????/**
      ?????*?相當于訪問相同報下的不同的類,他們擁有相同的包路徑,可以定義一個變量
      ?????*/
      ????@Pointcut("execution(*?spring02.aspect.Performance.perform(..))")
      ????public?void?performance(){
      ????}
      ?
      ????@Before("performance()")
      ????public?void?silenceCellPhones(){
      ????????System.out.println("====表演前將手機調靜音");
      ????}
      ?
      ????@Before("performance()")
      ????public?void?takeSeats(){
      ????????System.out.println("====表演前就做");
      ????}
      ?
      ????@AfterReturning("performance()")
      ????public?void?applause(){
      ????????System.out.println("====表演后鼓掌");
      ????}
      ?
      ????@AfterThrowing("performance()")
      ????public?void?demandRefund(){
      ????????System.out.println("====表演失敗時退款");
      ????}
      ????@Around("performance()")
      ????public?void??watchPerformance(ProceedingJoinPoint?point){
      ????????try?{
      ????????????System.out.println("====觀看前1");
      ????????????point.proceed();
      ????????????System.out.println("====觀看后2");
      ????????}?catch?(Throwable?throwable)?{
      ????????????throwable.printStackTrace();
      ????????}
      ????}
      }

      3、被通知對象接口

      public?interface?Performance?{
      void?perform();
      }

      4、被通知對象實現類

      @Component("performance")
      public?class?PerformanceImpl?implements?Performance{
      ????@Override
      ????public?void?perform()?{
      ????????System.out.println("======表演開始=====");
      ????}
      }

      5、測試類

      @RunWith(SpringJUnit4ClassRunner.class)//啟動測試時創建Spring上下文
      @ContextConfiguration(classes?=?{Config.class})//配置文件對象
      public?class?TestClass?{
      ????@Autowired
      ????private?Performance?performance;
      ????@Test
      ????public?void?test(){
      ????????performance.perform();
      ????}
      }

      以上就是小編今天的分享了,希望可以幫助到大家。

      文檔

      java advice

      Advice是在Join Point上執行的一個動作或者通知,一般通過攔截器調用。Spring有兩大核心,IOC和AOP,在模塊AOP里面有個advice。
      推薦度:
      為你推薦
      資訊專欄
      熱門視頻
      相關推薦
      java aes加密 java aggregation java akka ipad2是哪年的 java algorithm iphone呼叫失敗是什么原因 java android java annotation java ant java apns 蘋果13藍牙搜索不到設備怎么辦 java append java application java apriori java archive java arcsin java arccos java arctan java args java arrays.sort java addall java add java actuator 西北五省是哪五省 java activity java activiti 甕安縣屬于哪個市 java active 茉莉花茶是綠茶嗎 java a++和++a的區別 熊貓只有中國才有的嗎 idea新建一個java項目 java 32bit java -xms idea新建java項目 祁連山在哪個省境內 行程碼帶*號什么意思 南極洲有哪些國家 java -ea 鐵觀音產地是哪個地方
      Top 少妇高潮太爽了在线视频