(13)Spring AOP為目標物件引入新介面

2021-08-13 06:58:13 字數 1673 閱讀 6320

正常用ioc獲取乙個bean

介面

package shuai.spring.study.service;

public inte***ce ihelloservice

實現類

package shuai.spring.study.service.impl;

import shuai.spring.study.service.ihelloservice;

public class helloserviceimpl implements ihelloservice

}

配置檔案

<?xml version="1.0" encoding="utf-8"?>

測試類

package shuai.spring.test;

import org.junit.test;

import shuai.spring.study.service.ihelloservice;

public class hellotest

}

測試結果:

**********==hello world!

我們可以利用aop讓指定的類實現其它的介面,就比如這個shuai.spring.study.service.impl.helloserviceimpl類,讓它實現inihao介面

定義介面

package shuai.spring.study.service;

public inte***ce inihao

實現類

package shuai.spring.study.service.impl;

import shuai.spring.study.service.inihao;

public class nihaoimpl implements inihao

}

修改配置檔案

<?xml version="1.0" encoding="utf-8"?>

注意,有關引入新介面的內容都寫在declare-parents裡面

types-matching表示要為哪些類配置新的介面:shuai.spring.study.service.ihelloservice+表示實現了ihelloservice介面的類

implement-inte***ce表示要為這些類配置什麼介面

delegate-ref表示implement-inte***ce所代表介面的預設實現,delegate-ref表示引用乙個bean,也可以寫成default-impl="shuai.spring.study.service.impl.nihaoimpl"

測試類

package shuai.spring.test;

import org.junit.test;

import shuai.spring.study.service.inihao;

public class hellotest

}

測試結果:

你好:世界

這個結果跟那個預設實現是有關係的。

Spring AOP 為切面引入功能

一 情景 一般情況下,如果現有功能完成編譯後,在不改變原始碼或無法獲取原始碼的情況下,很難再為其新增新的功能,此時spring aop可以為切面新增新的功能。二 實現 package com.giser.encore 增強的功能介面 public inte ce encoreablepackage ...

Spring Aop 修改目標方法引數和返回值

首先使用spring aop需要在spring的配置檔案中假如 一 新建註解 target retention retentionpolicy.runtime documented public inte ce handlefield二 建立切面 component changeidnoaophan...

團隊管理13 設定工作目標

1 目標設定不合理,也就是說設定目標這一環節是有問題的 2 過程執行不到位,也就是說目標在落實的過程中打了折扣 3 總結改進不給力,所有事情都未必會按照預期的計畫和目標執行,但是事後我們必須要不斷的總結改進,以期吸取教訓,不斷成長。今天我們重點談一下目標的設定,以我們測試部為例,我們的目標大概分為兩...