public class UserService { private UserDao userDao; @Inject public UserService(UserDao userDao) { this.userDao = userDao; } // ... } public class UserDao { // ... } public class UserController { @Inject private UserService userService; // ... } public class LoggingInterceptor { @Inject private Logger logger; @Inject @Delegate private MyService myService; @AroundInvoke public Object logMethod(InvocationContext ctx) throws Exception { logger.info("Entering " + ctx.getMethod().getName()); try { return ctx.proceed(); } finally { logger.info("Exiting " + ctx.getMethod().getName()); } } } public interface MyService { void doSomething(); } @LoggingInterceptor public class MyServiceImpl implements MyService { @Override public void doSomething() { // ... } } public class MyClass { @Inject private MyService myService; // ... }


上一篇:
下一篇:
切换中文