项目里需要导出一个文件。一开始我使用的在 Service 的实现类里面注入 response
//serviceImpl
//服务类注入
@Autowired
private HttpServletResponse response;
public void export(params){
// ...
}
然后就很常规的打开流,获取文件,写入,关闭 但是无法通过项目的网关鉴权,报了一个 null 错误。
但是如果是在 controller 里面注入,再直接传给 Service ,就可以通过鉴权。 就像这样。
//Controller 注入
@Autowired
private HttpServletResponse response;
public void export(params){
//传给 service
exportSevice.export(params, response);
}
请问这两种方式注入的差别在哪?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.