olarak adlandırılan açılamıyor Bu nedenle, etki alanımdaki bir nesnenin durumu değiştiğinde olayları işlemek için AspectJ'i kullanmaya başladım.AspectJ ile çalışan Newbie:
Etkin olarak, etki alanımdaki tüm belirleyici yöntemleri tamamlayan öneriler yazmak istiyorum. Tavsiye çağrıldığında, ayarlanan alanın başlangıç değerini kontrol eder, ayarlayıcıyı çalıştırır, ardından ayarlayıcı çalıştıktan sonra değeri kontrol eder. Değer değişirse, bir olayı olay dinleyicisine gönderir ve değişikliği bildirir.
Burada bulunan eğiticiyi kullandım: http://www.andrewewhite.net/wordpress/2010/03/17/aspectj-annotation-tutorial/, ancak herhangi bir öneri alınamadım. Tavsiyemi dokuma için sadece LTW yöntemini kullandığımı farkettiğime göre, AspectJ dilini kullanarak öneride bulunmam ve ön derleme yapmam.
(benim test paketi için META-INF) Benim aop.xml böyle görünüyor:
<aspectj> <aspects> <aspect name="domain.aop.TestAspect"/> </aspects> </aspectj>
böyle görünüyor oluşturduk boy sınıfı:
package domain.aop; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; @Aspect public class TestAspect { @Around("call(* domain.*.set*(..))") public void aroundSetMethods (JoinPoint jp) { System.out.println ("aroundSetMethod called"); } }
zaman Test vakamı çalıştırıyorum, bir metodun (domain.Error.setTask()) çağrıldığını görebiliyorum (bir kesme noktası belirleyerek). Bunun benim tavsiyemi tetiklemesi gerektiğine inanıyorum, ama asla tavsiye yöntemine girmem.
Burada yanlış yaptığım her hangi bir işaretçi var mı?
Teşekkür
Bu var. @Around ek açıklamanın, hangi sınıfların enstrümanlandığını belirlemek için dokumacı almak için yeterli olduğu izlenimi altındaydım. Görünüşe göre yapılacak daha fazla yapılandırma vardı. Teşekkürler... – Steve