小编Nik*_*ero的帖子

Spring @PropertySources值不会覆盖

我将我的Spring Boot应用程序部署为Tomcat中的WAR文件.我期待我的application-local.properties覆盖我的application.properties文件中也存在的值.但似乎只有在application.properties中不存在这些键时才会读取application-local.properties中的值.我的application.properties文件位于我项目的src/main/resources /中,application-local.properties位于$ {catalina.home}/property_files/com/demo/config文件夹中

的context.xml

<Parameter name="spring.profiles.active" value="local" override="false"/>
Run Code Online (Sandbox Code Playgroud)

catalina.properties

shared.loader=${catalina.home}/property_files
Run Code Online (Sandbox Code Playgroud)

AppConfig.java

@Configuration
@PropertySources({
    @PropertySource("classpath:application.properties"),
    @PropertySource("classpath:com/demo/config/application-${spring.profiles.active}.properties")
})
public class AppConfig extends WebMvcConfigurerAdapter {
}
Run Code Online (Sandbox Code Playgroud)

编辑1:实际上,正在加载我的依赖于环境的属性文件.但它不会覆盖内部属性文件中的任何值.

编辑2:感谢您的所有建议.但我发现我的问题是由目录优先级引起的.事实证明,根类路径上的属性文件优先于任何属性文件,无论它们的声明顺序如何.

java spring spring-mvc spring-boot

7
推荐指数
2
解决办法
7951
查看次数

Spring:当我的班级已经用@RestController注释时,为什么仍要使用@RequestBody?

我目前正在将Java和Spring用于我的Web服务应用程序。我正在使用@RestController注释,希望不再需要使用@ResponseBody@RequestBody注释。不幸的是,删除了@RequestBody注释会使序列化失败。

这是我的代码,没有将请求正文映射到我的方法参数,而我没有:

@RestController
@RequestMapping(value = "/member", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public class MemberController {
    @Autowired
    private MemberService memberService;

    @RequestMapping("/create")
    public void create(Member member) {
        memberService.create(member);
    }

    @RequestMapping("/read")
    public Member read(Member member) {
        return memberService.read(member);
    }

    @RequestMapping("/update")
    public void update(Member member) {
        memberService.update(member);
    }

    @RequestMapping("/delete")
    public void delete(Member member) {
        memberService.delete(member);
    }

    @RequestMapping("/retrieveById")
    public Member retrieveById(Member member) {
        return memberService.retrieveById(member);
    }

    @RequestMapping("/retrieveAll")
    public List<Member> retrieveAll(Member member) {
        return …
Run Code Online (Sandbox Code Playgroud)

java rest spring

5
推荐指数
1
解决办法
1208
查看次数

标签 统计

java ×2

spring ×2

rest ×1

spring-boot ×1

spring-mvc ×1