我是一个 Java 程序员,用 spring boot 框架,常常会用 @Autowired 注解去引入各种 service 或者 mapper 我觉得很麻烦呀,有没有不通过 @Autowired 或者我引入一个 baseService 就引入了所有的 bean 。
我想所有的注册 bean 都会到 spring boot 进行管理,那么为什么 spring boot 不提供一个默认引入所有,然后想用什么就用什么,不用每个都要 @Autowired 一下。
当然我不是说从 spring boot 上下文通过 getBean 的方式去拿,那样太不优雅了。
有没有这样比如举一个列子 这是我想要的😍
@Component
public class ServiceB {
@Autowired
private BaseService baseService;
public Order void queryOrder() {
User user = baseService.UserSerice.getUser();
Order order = baseService.OrderService.getOrderByUserId(user.getId());
return order;
}
}
引入我感觉有时候业务超级复杂,然后慢慢的会变成 @Autowired 地狱,比如会有这样的情况
这是不是我想要的😨
@Component
public class ServiceB {
@Autowired
private UserSerice userSerice;
@Autowired
private OrderService orderService;
public Order void queryOrder() {
User user = userSerice.getUser();
Order order = orderService.getOrderByUserId(user.getId());
return order;
}
}
这个随便写的,就是举个列子
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.