SrpingBoot 的@Value获取配置文件中的数据的解决方法
```/
想要使用@Value,必须把当前类加入spring的容器管理
@Component
public class FileUpload {
@Value("${lingtao.upload.localPrefix}")
private String localPrefix;
@Value("${lingtao.upload.localPath}")
private String localPath;
@Value("${lingtao.upload.localDomain}")
private String localDomain;
可是加入了@Component注解,依然不能获取到值,但是如果是在@Controller 下,则可以。
解决
@RestController
@RequestMapping("file")
@Api(tags="文件上传")
public class FileUploadController {
@Autowired
private FileUpload fileUpload;
@PostMapping("headerUpload")
@ApiOperation(value = "上传人员照片")
public Result<UploadDTO> upload(@RequestParam("file") MultipartFile file) throws Exception {
if (file.isEmpty()) {
return new Result<UploadDTO>().error(ModuleErrorCode.UPLOAD_FILE_EMPTY);
}
return fileUpload.upload(file,localPrefixHeader,SecurityUser.getUser().getRealName());
}
在调用的地方使用@Autowired 的方式调用该类的方法,@Value就能获取到值了