【发布时间】:2014-12-04 23:06:49
【问题描述】:
我知道我可以使用@Autowired 在一个类中注入一个 bean。
现在我很好奇:: 我不想拥有@Autowired 的私有属性。 我的控制器中有一个函数,我想直接在函数中注入 bean 作为参数。 我收到一条错误消息,说文件和令牌不是 bean。
有没有办法自动装配或只注入我需要的 bean 作为参数?
@Controller
public class SpinalToolboxWebController {
/*@Autowired
private FileOperationsService fileOperationsService;
@Autowired
private Comparator<String> comparator;
@Autowired
private ServerResponse serverResponse;
@Autowired
private SoftwareCommunicationService softwareCommunicationService;
@Autowired
private StringBuffer stringBuffer;
@Autowired
private UserEnvironmentService userEnvironmentService;*/
@Autowired
@RequestMapping(value="/upload", method = RequestMethod.POST, produces="application/json")
public @ResponseBody
ServerResponse handleUploadedFiles(@RequestParam(value = "file") MultipartFile file,
@RequestParam(value="token") String token,
SoftwareCommunicationService softwareCommunicationService,
FileOperationsService fileOperationsService,
ServerResponse serverResponse )throws IOException {
System.out.println("Passing throught upload controller");
if(!fileOperationsService.isUploadedFileExtensionAllowed(file.getOriginalFilename()))
{
serverResponse.setUndefinedResponse();
return serverResponse;
}
if(fileOperationsService.uploadFile(file, token)){
serverResponse.setResponse(file, softwareCommunicationService.generateRawAndHeader(file));
}
else{
serverResponse.setUndefinedResponse();
}
return serverResponse;
}
}
【问题讨论】:
-
你为什么不想要字段?
标签: java spring spring-mvc