Aop(上)
前言 AOP 全名為:Aspect-Oriented Programming,在Java中如何實現呢? 透過Design Pattern 中的Proxy Pattern來實現 透過AspectJ or Spring Aop來實現 本章節主要講Proxy Pattern的實現方式 主要內容 我們有個需求是,需要提升查詢的效能,所以我們的做法是增加Cache Version 1 第一個版本,我們先建立的代碼 建立一個service 和一個repo,從repo 拿取相對應的user public class FindUserService { private final UserRepo userRepo; public FindUserService(final UserRepo userRepo) { this.userRepo = userRepo; } public User find(String username) { return userRepo.findByUsername(username); } } @AllArgsConstructor @NoArgsConstructor @Data @Builder public class User { String username; String password; } public interface UserRepo { User findByUsername(String username); } public class UserAdapter implements UserRepo { private final Map<String, User> userMap; private final ReentrantReadWriteLock lock; public UserAdapter(final Map<String, User> userMap) { this....