Micronaut 面向切面編程

2023-03-01 16:37 更新

面向方面的編程 (AOP) 在歷史上有許多化身和一些非常復(fù)雜的實(shí)現(xiàn)。通常,AOP 可以被認(rèn)為是一種定義橫切關(guān)注點(diǎn)(日志記錄、事務(wù)、跟蹤等)的方法,以定義建議的方面的形式與應(yīng)用程序代碼分開(kāi)。

通常有兩種形式的建議:

  • Around Advice - 裝飾一個(gè)方法或類(lèi)

  • Introduction Advice - 向類(lèi)中引入新的行為。

在現(xiàn)代 Java 應(yīng)用程序中,聲明通知通常采用注釋的形式。 Java 世界中最著名的注解建議可能是@Transactional,它在 Spring 和 Grails 應(yīng)用程序中劃定了事務(wù)邊界。

傳統(tǒng) AOP 方法的缺點(diǎn)是嚴(yán)重依賴(lài)運(yùn)行時(shí)代理創(chuàng)建和反射,這會(huì)降低應(yīng)用程序性能,使調(diào)試更加困難并增加內(nèi)存消耗。

Micronaut 試圖通過(guò)提供一個(gè)不使用反射的簡(jiǎn)單編譯時(shí) AOP API 來(lái)解決這些問(wèn)題。


以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)