日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring-学习笔记08【面向切面编程AOP】

發布時間:2024/9/30 javascript 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring-学习笔记08【面向切面编程AOP】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • Java后端 學習路線 筆記匯總表【黑馬程序員】
  • Spring-學習筆記01【Spring框架簡介】【day01】
  • Spring-學習筆記02【程序間耦合】
  • Spring-學習筆記03【Spring的IOC和DI】
  • Spring-學習筆記04【Spring的常用注解】【day02】day02資料_dbutils
  • Spring-學習筆記05【基于XML的IOC的案例】
  • Spring-學習筆記06【Spring的新注解】
  • Spring-學習筆記07【銀行轉賬案例】【day03】
  • Spring-學習筆記08【面向切面編程AOP】
  • Spring-學習筆記09【JdbcTemplate的基本使用】【day04】
  • Spring-學習筆記10【Spring事務控制】
  • 目錄

    01 AOP的概念

    02 spring中的aop術語和細節

    03 spring基于XML的AOP-編寫必要的代碼

    03.1、pom.xml

    03.2、IAccountService.java

    03.3、AccountServiceImpl.java

    03.4、Logger.java

    03.5、AOPTest.java

    04 spring基于XML的AOP-配置步驟

    05 切入點表達式的寫法

    05.1、bean.xml

    06 四種常用通知類型

    07 通用化切入點表達式

    08 spring中的環繞通知

    09 spring基于注解的AOP配置

    10 總結和作業安排


    01 AOP的概念

    02 spring中的aop術語和細節

    通知的類型

    03 spring基于XML的AOP-編寫必要的代碼

    03.1、pom.xml

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.itheima</groupId><artifactId>day03_eesy_03springAOP</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.0.2.RELEASE</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.8.7</version></dependency></dependencies></project>

    03.2、IAccountService.java

    package com.itheima.service;/*** 賬戶的業務層接口*/ public interface IAccountService {/*** 模擬保存賬戶*/void saveAccount();/*** 模擬更新賬戶** @param i*/void updateAccount(int i);/*** 刪除賬戶** @return*/int deleteAccount(); }

    03.3、AccountServiceImpl.java

    package com.itheima.service.impl;import com.itheima.service.IAccountService;/*** 賬戶的業務層實現類*/ public class AccountServiceImpl implements IAccountService {@Overridepublic void saveAccount() {System.out.println("執行了保存.");}@Overridepublic void updateAccount(int i) {System.out.println("執行了更新:" + i);}@Overridepublic int deleteAccount() {System.out.println("執行了刪除.");return 0;} }

    03.4、Logger.java

    package com.itheima.utils;/*** 用于記錄日志的工具類,它里面提供了公共的代碼*/ public class Logger {/*** 用于打印日志:計劃讓其在切入點方法執行之前執行(切入點方法就是業務層方法)*/public void printLog() {System.out.println("Logger類中的pringLog方法開始記錄日志了...");} }

    03.5、AOPTest.java

    04 spring基于XML的AOP-配置步驟

    05 切入點表達式的寫法

    05.1、bean.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:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/aophttp://www.springframework.org/schema/aop/spring-aop.xsd"><!-- 配置srping的Ioc,把service對象配置進來--><bean id="accountService" class="com.itheima.service.impl.AccountServiceImpl"></bean><!--spring中基于XML的AOP配置步驟1、把通知Bean也交給spring來管理2、使用aop:config標簽表明開始AOP的配置3、使用aop:aspect標簽表明配置切面id屬性:是給切面提供一個唯一標識ref屬性:是指定通知類bean的Id。4、在aop:aspect標簽的內部使用對應標簽來配置通知的類型我們現在示例是讓printLog方法在切入點方法執行之前執行,所以是前置通知aop:before:表示配置前置通知method屬性:用于指定Logger類中哪個方法是前置通知pointcut屬性:用于指定切入點表達式,該表達式的含義指的是對業務層中哪些方法增強切入點表達式的寫法:關鍵字:execution(表達式)表達式:訪問修飾符 返回值 包名.包名.包名...類名.方法名(參數列表)標準的表達式寫法:public void com.itheima.service.impl.AccountServiceImpl.saveAccount()訪問修飾符可以省略void com.itheima.service.impl.AccountServiceImpl.saveAccount()返回值可以使用通配符,表示任意返回值* com.itheima.service.impl.AccountServiceImpl.saveAccount()包名可以使用通配符,表示任意包。但是有幾級包,就需要寫幾個*.* *.*.*.*.AccountServiceImpl.saveAccount())包名可以使用..表示當前包及其子包* *..AccountServiceImpl.saveAccount()類名和方法名都可以使用*來實現通配* *..*.*()參數列表:可以直接寫數據類型:基本類型直接寫名稱 int引用類型寫包名.類名的方式 java.lang.String可以使用通配符表示任意類型,但是必須有參數可以使用..表示有無參數均可,有參數可以是任意類型全通配寫法:* *..*.*(..)實際開發中切入點表達式的通常寫法:切到業務層實現類下的所有方法* com.itheima.service.impl.*.*(..)--><!-- 配置Logger類 --><bean id="logger" class="com.itheima.utils.Logger"></bean><!--配置AOP--><aop:config><!--配置切面 --><aop:aspect id="logAdvice" ref="logger"><!-- 配置通知的類型,并且建立通知方法和切入點方法的關聯--><aop:before method="printLog" pointcut="execution(* com.itheima.service.impl.*.*(..))"></aop:before></aop:aspect></aop:config></beans>

    06 四種常用通知類型

    07 通用化切入點表達式

    08 spring中的環繞通知

    09 spring基于注解的AOP配置

    ?

    10 總結和作業安排

    通知的類型

    總結

    以上是生活随笔為你收集整理的Spring-学习笔记08【面向切面编程AOP】的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 日韩中文字幕 | 黑丝美女av | 五月婷婷久久久 | 久久精品91| 青青草视频免费 | 无码精品一区二区三区在线 | 日本成人精品视频 | 亚洲精品久久视频 | 亚洲一区二区三区四区 | 高清一区二区三区四区五区 | 特黄做受又粗又大又硬老头 | 日本毛片在线看 | 96精品视频在线观看 | 在线你懂 | av不卡在线播放 | 日韩免 | 日本黄色小片 | 初尝人妻少妇中文字幕 | 亚洲黄色免费观看 | 欧美3p在线观看 | 国产精品第一区 | 国产精品扒开做爽爽爽的视频 | 狼人综合av | 日本一区二区欧美 | a免费在线 | 草久久免费视频 | 91污片 | 在线观看国产精品一区 | 一区二区三区伦理片 | 91视频日本 | 美女裸体跪姿扒开屁股无内裤 | 日韩精品一区在线 | 最新高清无码专区 | 狠狠干狠狠干狠狠干 | 日韩特级片 | 色涩综合| 91黄漫 | 亚洲精品久久久久久无码色欲四季 | 欧美国产综合 | 欧美视频直播网站 | 中国免费黄色 | 中文字幕在线资源 | 国产99精品 | 小视频国产 | 美女一区二区三区视频 | 久久免费视频3 | 一二三区精品视频 | 免费看国产黄色片 | 影音先锋 日韩 | 91精品国产91久久久久福利 | 制服丝袜av一区二区三区下载 | 黄色av一级 | 欧美波霸影院 | 国产乱码精品一区二区三区忘忧草 | av亚洲在线 | 欧美小视频在线观看 | 蜜桃av在线看 | www.激情| 另类色综合| 亚洲久久视频 | 黄色理伦片 | 91狠狠| 精品国产一区二区三区四区精华 | 亚洲精品久久 | 99热在线国产 | 久久艹在线视频 | 国产a毛片 | av字幕网 | 一区二区三区麻豆 | 久久久久女 | 99久久影视| 天天操女人 | 欧美日韩国产不卡 | 日韩无码电影 | 东北少妇露脸无套对白 | 人人干狠狠干 | 久久精品99国产国产精 | 你懂的91 | 夜夜嗨老熟女av一区二区三区 | 久久久久无码精品 | 黄色大片日本 | 免费一级suv好看的国产网站 | 在线观看网页视频 | 午夜草逼 | 欧美破处大片 | 亚洲图片视频小说 | 男男车车的车车网站w98免费 | 亚洲精品不卡 | 欧美久久久久久久久久久久久久 | 黄色网址最新 | 男人疯狂高潮呻吟视频 | 国产精品3| 波多野结衣中文字幕一区二区 | 91精品国产乱码久久 | 亚洲精品97| 逼特逼视频在线观看 | 欧美精品一区二区三区久久久竹菊 | 自拍偷拍亚洲视频 | 天天搞天天搞 |