利用Lombok編寫優雅的spring依賴注入程式碼,去掉繁人的@Autowired
阿新 • • 發佈:2018-12-12
大家平時使用spring依賴注入,都是怎麼寫的?
@Service public class OrderService { @Autowired private UserService userService;
} 是不是很熟悉的感覺?但是呢 如果你用IDEA的話呢,它會提示你
Field injection is not recommended
下面就是spring推薦的寫法:
@Service public class OrderService { private final UserService userService;
@Autowired public OrderService(UserService userService) { this.userService = userService; }
}
若是注入的類太多的話呢,看起來挺繁瑣的。最近偶然在網上發現使用Lombok可以寫出簡潔的程式碼:
@Service @RequiredArgsConstructor(onConstructor = @__(@Autowired)) public class OrderService { //這裡必須是final,若不使用final,用@NotNull註解也是可以的 private final UserService userService;
}