ドゥアン、エンハンサー


Duang と Enhancer は、AOP 機能を持つようにターゲットを強化するために使用されます。以下はコード例です:

public class TestMain{
	public void main(String[] args) {
	// 使用Duang.duang方法在任何地方对目标进行增强
	OrderService service = Duang.duang(OrderService.class);
	// 调用payment方法时将会触发拦截器
	service.payment(…);
 
	// 使用Enhancer.enhance方法在任何地方对目标进行增强
	OrderService service = Enhancer.enhance(OrderService.class);
	}
}

Duang.duang()、Enhancer.enhance()、Controller.enhance() メソッドは、機能的にはまったく同じであり、クラスの拡張をサポートするだけでなく、次のようなオブジェクトの拡張もサポートします。 duang(new OrderService ()) パラメータとしてのオブジェクトの使用は本質的に同じ機能であるため、ここでは再度説明しません。

Duang クラスと Enhancer クラスを使用して任意のターゲットを強化できるため、JFinal の AOP を非 Web プロジェクトに適用できます。必要なのは、jfinal.jar パッケージを導入してから、Enhancer.enhance() または Duang.duang() を使用することだけです。 JFinal の AOP 機能を非常に迅速に使用できます。