问题标签 [spring-boot-configuration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Spring Boot 中的外部化配置
我有一个外部配置文件(外部 jar)。我尝试运行并期望外部文件中的值将覆盖内部文件中的值(application.properties
在\resource\
- jar 文件中)。我阅读了文档并尝试了这个:
这不起作用。
我在目录中的 jar 文件\target\
和我的production.properties
也是(在\target\
)
我该如何解决我的问题?
- 我应该把外部配置文件放在哪里?
- 我必须做什么?
java - 如果 JSON 字符串包含大于 10 位的数字,则 404 弹簧控制器错误
我有一个控制器,它在请求正文中获取 json 作为字符串,如下所示
请求正文是
我面临的问题是,当 userId 属性的位数超过 10 位时,控制器返回 404 错误,请求甚至不会到达控制器,但是如果我将位数减少到小于 10 位,例如 123456789,我会得到实际的预期响应。我将请求正文保留为字符串的原因是因为有时请求可能是 graphql 字符串或 JSON 字符串,但这两种情况都会发生。
java - 使用 Spring 配置的 YML 文件中的自动完成功能不适用于地图字段
我在包含弹簧配置的 yml 文件的自动完成功能方面遇到了一些问题。我在stackoverflow上发现了非常相似的问题,但我的声誉太低,无法在那里发表评论。该解决方案对我不起作用。
我启用了注释处理器 ,我正在使用 IntelliJ 的最新 Ultimate 版本。
我在我的文件中添加了以下依赖项pom.xml
:
我有两节课:
和:
我的整个项目可以在 github中找到。
但它不适用于映射键(我也想为值工作,但现在这太远了)
尽管我添加了文件additional-spring-configuration-metadata.json
:
我被困住了。我在互联网上找不到任何关于此的材料。
此致
java - 更改 Spring Boot 外部化配置时的向后兼容性
是否有推荐的方法将重组/重命名引入外部配置,同时为仍然依赖旧配置结构的消费者保持向后兼容性?
例如,给定一个库使用@ConfigurationProperties
了过去定义的以下配置结构:
该库的新版本将配置重新定义为:
有没有一种好方法可以弃用旧结构,同时在一段时间内保持对现有消费者的兼容性?使用新版本库的消费者应该仍然能够使用old-properties.an.old-property
并将其自动映射到my-library.a-property
.
我知道使用其他配置元数据将属性标记为已弃用的功能,但我明确地寻找一种方法来支持这两个版本以简化迁移。
spring-boot - 用于启用 SSL 的 Spring Boot Cassandra 配置
我正在开发一个使用 Cassandra 的 Spring Boot 应用程序。我想在我的应用程序中启用 SSL,但似乎找不到如何配置 Cassandra 以使用 SSL。
此外,我正在使用带有以下依赖项的默认驱动程序。
只需以下标志即可传递信任库和密码
spring-boot - Spring Boot Test 不加载复杂的配置属性
我在 Spring Boot 应用程序中有以下 yaml 配置:
这是使用以下类加载的,并且在 SpringBootApplication 启动时可以正常工作(您可以调试DemoApplication.java来验证):
但是当我执行以下测试时,没有加载documentTypes(即使someSrting值设置正确,它也是 null)
知道我可能做错了什么吗?或者也许 SpringBootTest 不支持属性的复杂类型?
源代码和测试可以在这里找到:https ://github.com/nadworny/spring-boot-test-properties
spring-boot - Spring-boot - Docker Compose - 服务就绪
我有一个包含 3 个服务的 docker-compose:config-server、cpo-events 和 cpo-executor。我希望服务仅在 config-server 准备好时启动,因为服务需要 config-server 服务中的配置文件。
码头工人-compose.yml:
Depends_on、links、healthcheck,没有什么能保证这两个服务(cpo-executor、cpo-event)只有在 config-server 准备好后才能启动。
java - Spring Boot 多模块 gradle 项目中依赖模块的配置属性
我一直在四处寻找并挠头几个小时,但我无法让它工作。
我有一个带有 Gradle 的多模块项目,目前有两个模块:BFF(使用 Spring Boot)和一个从数据库中获取一些数据的模块(受这篇文章的启发)。结构看起来像这样:
这CustomerServiceConfigurationProperties
是一个简单的ConfigurationProperties
类。受这篇文章CustomerServiceConfiguration
的启发,该类用作将模块“导入”到 BFF 的 Spring 上下文中的一种方式:
添加映射CustomerServiceConfigurationProperties
到 BFF 的属性application.yaml
按预期工作,并用于配置客户服务模块。不起作用的是为customer-service
不应被修改的模块添加配置属性bff
,例如 Hibernate 设置。我打算使用customer-service-properties.yaml
. 当我尝试使用有问题的行运行应用程序时,Spring 抱怨在类路径中找不到该文件。果然,当查看生成的 jar 时,它不存在。将它添加到bff
的资源中是可行的,但这显然不是我想要的。
我是否需要找到一种将customer-service-properties.yaml
文件添加到类路径的方法?我应该不使用类路径,而是使用其他东西吗?我只是想做一些我不应该做的事情吗?有没有不同的方法来解决这个问题?
注意:我对 Gradle 还是很陌生,如果这完全相关的话。
让我知道是否需要添加或指定其他内容。任何帮助或指示将不胜感激。谢谢!
spring-boot - Spring Boot 安全性未按预期工作
我有一个 android 客户端试图使用 api 休息服务
弹簧安全配置:
从邮递员我得到jwt:
但是......从Android客户端我在按下登录按钮时卡在build()中
API 日志显示来自JwtFilter类的方法doFilterInternal的“JWT 令牌不以 Bearer 关键字开头”
因为 requestTokenHeader 为空,但是当我进行身份验证时我不需要令牌并且系统要求它。
如果设置为 ".authorizeRequests().antMatchers("/authenticateAPI").permitAll()"。
我认为问题出在春季安全设置中,但我看不到它,请帮助我