คำถามติดแท็ก aspectj

8
Spring AOP กับ AspectJ
ฉันอยู่ภายใต้การแสดงผลที่ Spring AOP ใช้ดีที่สุดสำหรับงานเฉพาะแอปพลิเคชันเช่นความปลอดภัยการบันทึกธุรกรรม ฯลฯ เนื่องจากใช้หมายเหตุประกอบ Java5 ที่กำหนดเองเป็นเฟรมเวิร์ก อย่างไรก็ตาม AspectJ ดูเหมือนจะเป็นมิตรกับรูปแบบการออกแบบที่ฉลาดกว่า ทุกคนสามารถเน้นข้อดีและข้อเสียต่าง ๆ ของการใช้ Spring AOP กับ AspectJ ในแอปพลิเคชัน Spring ได้หรือไม่?

9
@AspectJ pointcut สำหรับวิธีการทั้งหมดของคลาสที่มีคำอธิบายประกอบเฉพาะ
ฉันต้องการตรวจสอบวิธีการสาธารณะทั้งหมดของทุกชั้นเรียนพร้อมคำอธิบายประกอบที่ระบุ (พูด @Monitor) (หมายเหตุ: คำอธิบายประกอบอยู่ในระดับชั้นเรียน) สิ่งที่เป็นไปได้สำหรับสิ่งนี้คืออะไร? หมายเหตุ: ฉันใช้ @AspectJ style Spring AOP
127 java  aop  aspectj  spring-aop 

8
การเรียกเมธอด Spring @Transaction โดยเมธอดภายในคลาสเดียวกันไม่ได้ผลใช่หรือไม่
ฉันเพิ่งเริ่มทำธุรกรรม Spring มีบางอย่างที่ฉันพบว่าแปลกจริงๆฉันอาจเข้าใจเรื่องนี้อย่างถูกต้อง ฉันต้องการมีทรานแซคชันในระดับเมธอดและฉันมีเมธอดผู้โทรภายในคลาสเดียวกันและดูเหมือนว่ามันจะไม่เป็นแบบนั้นมันจะต้องถูกเรียกจากคลาสแยกต่างหาก ฉันไม่เข้าใจว่ามันเป็นไปได้อย่างไร หากใครมีความคิดในการแก้ไขปัญหานี้ฉันจะขอบคุณมาก ฉันต้องการใช้คลาสเดียวกันเพื่อเรียกใช้วิธีการทำธุรกรรมที่มีคำอธิบายประกอบ นี่คือรหัส: public class UserService { @Transactional public boolean addUser(String userName, String password) { try { // call DAO layer and adds to database. } catch (Throwable e) { TransactionAspectSupport.currentTransactionStatus() .setRollbackOnly(); } } public boolean addUsers(List<User> users) { for (User user : users) { …

13
Spring AOP: JoinPoint และ PointCut ต่างกันอย่างไร
ฉันกำลังเรียนรู้แนวคิด Aspect Oriented Programming และ Spring AOP ฉันไม่เข้าใจความแตกต่างระหว่าง Pointcut และ Joinpoint - ทั้งคู่ดูเหมือนจะเหมือนกันสำหรับฉัน Pointcut คือที่ที่คุณใช้คำแนะนำของคุณและ Joinpoint ก็เป็นสถานที่ที่เราสามารถใช้คำแนะนำของเราได้ แล้วความแตกต่างคืออะไร? ตัวอย่างของ pointcut สามารถ: @Pointcut("execution(* * getName()") ตัวอย่างของ Joinpoint คืออะไร?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.