我正在尝试读取一个简单的 config.properties 文件,但我的值一直为 null。
我在根目录下有 config.properties 文件(与 pom.xml 处于同一级别)我在 config.properties 中只有一行。
KEY=baran
我有一个像下面这样的 AppConfig 类
package tr.com.simroll.ada.rvm.web.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
@Configuration
@PropertySource("classpath:config.properties")
public class AppConfig {
@Value("${KEY}")
private String test;
public String getTest() {
return test;
}
public void setTest(String test) {
this.test = test;
}
}
我正在尝试像这样从我的控制器访问
@Controller
@CrossOrigin(origins = "*")
public class MovieCategoryController {
@RequestMapping(value = "/api/movieCategory/list", method = RequestMethod.GET)
@ResponseBody
public String listMovieCategories(ModelMap model, HttpServletResponse res, HttpServletRequest req) {
AppConfig config = new AppConfig();
System.out.println(config.getTest());
return "test";
}
这里的问题是您正在创建一个新的AppConfig
控制器实例,而不是您应该注入AppConfig
由 Spring创建的实例。
尝试将以下内容添加到您的控制器
@Autowired
AppConfig appConfig;
于是就变成了..
@Controller
@CrossOrigin(origins = "*")
public class MovieCategoryController {
@Autowired
AppConfig appConfig;
@RequestMapping(value = "/api/movieCategory/list", method = RequestMethod.GET)
@ResponseBody
public String listMovieCategories(ModelMap model, HttpServletResponse res, HttpServletRequest req) {
System.out.println(appConfig.getTest());
return "test";
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句