我已经看到了两种在服务/控制器中获取servletContext
bean的方法。
1)简单的方法就是自动装配:
@Autowired
ServletContext servletContext;
2)另一种方法是实现servletContextAware
接口:
@RestController("/mycontroller")
public myController implements ServletContextAware {
private ServletContext context;
@Override
public void setServletContext(ServletContext context) {
this.context = context;
}
public String getContextPath(){
return context.getContextPath();
}
}
这两者的优点和缺点是什么?推荐哪种方式?
答案 0 :(得分:-2)
没有人回答,所以我会试一试。
注释版本更简单,但是在未启用自动装配的情况下(或在此功能之前的Spring版本中),只有ServletContextAware
版本才有效。
如果您启用了该功能,推荐的方式是前者。