Spring學習日記(一)AOP的初步實現

2021-08-27 08:48:31 字數 2004 閱讀 5759

工具:myeclipse

1、新建乙個web project

2、匯入spring開發包:專案檔案——(右鍵)configure facets——install spring facets

3、配置annotaion

4、配置aop:開啟aop命名空間

1、定義業務層操作介面

//定義業務層介面

public inte***ce imemberservice

2、定義成員

public class member 

public void setmid(string mid)

public string getname()

public void setname(string name)

@override

public string tostring()

}

3、業務層介面的子類

package cn.mldn.service.impl;

import org.springframework.stereotype.service;

import cn.mldn.service.imemberservice;

import cn.mldn.vo.member;

@service

public class memberserviceimpl implements imemberservice

}

4、寫測試程式

package cn.mldn.test;

import cn.mldn.service.imemberservice;

import cn.mldn.vo.member;

public class testmembertest

}

5、執行結果:

【資料層呼叫】member=member [mid=mldn, name=你好]

false

1、定義切面處理類

package cn.mldn.aop;

@component

public class serviceaspect

public void serviceafter()

}

定義切面引用

3、執行結果

從結果可以看出,在業務層操作的前後,分別呼叫了業務層呼叫前和呼叫結束的輔助操作

【aop切面】執行日誌記錄操作

【資料層呼叫】member=member [mid=mldn, name=你好]

【aop切面】執行事務處理操作

false

4、pointcut的表示式語法:expression="execution(* cn.mldn..*.*(..)))"

execution(修飾符匹配?返回值型別 操作型別的匹配?名稱匹配(引數匹配) 丟擲異常匹配)

而如果出現了「..」,則表示在任意子包。「*.*」:任意類的任意方法

Spring學習日記(二)AOP的深入操作

上次的aop操作簡單,但對初學者而言,刪繁就簡地體現了aop的設計思想。但有些過於簡化了,本次將把引數帶入到aop的操作中。1 修改切面處理類 改寫servicebefore 使其含有引數 public void servicebefore2 object arg 2 修改配置檔案 切入點表示式 3...

spring學習日記(一)

1.valid 檢驗字串是否為空等操作 2.使用 bindingresult來接收校驗的結果,如果有不合法的引數,從中取出結果資訊,然後返回給前端頁面 3.什麼是token token的意思是 令牌 是服務端生成的一串字串,作為客戶端進行請求的乙個標識。當使用者第一次登入後,伺服器生成乙個token...

Spring中AOP學習 應用(一)

動態 指在程式執行期間動態的將某段 切入到指定方法指定位置進行執行的程式設計方式。1.匯入aop模組 spring aop spring aspects 2.定義乙個業務邏輯類 mathcalculator 在業務執行的時候將日誌執行列印 方法之前 方法執行結束 方法出現異常,3.定義乙個切面類 l...