在我的Rails应用程序中,我有一个属于用户的模型配置文件,如下所示: 用户类 < ApplicationRecord has_many :profiles end class Profile < ApplicationRecord belongs_to :user
我正在尝试通过springboot下的配置文件分割我的logback.xml,这是我的方法: logback-prod.xml 我正在尝试通过 springboot 下的配置文件分割我的 logback.xml,这是我的方法: logback-prod.xml <?xml version="1.0" encoding="UTF-8"?> <configuration> <include resource="org/springframework/boot/logging/logback/defaults.xml" /> <property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:- ${java.io.tmpdir:-/tmp}}/}spring.log}"/> <include resource="org/springframework/boot/logging/logback/file- appender.xml" /> <root level="INFO"> <appender-ref ref="CONSOLE" /> </root> </configuration> logback-dev.xml <?xml version="1.0" encoding="UTF-8"?> <configuration> <include resource="org/springframework/boot/logging/logback/defaults.xml" /> <include resource="org/springframework/boot/logging/logback/console-appender.xml" /> <root level="DEBUG"> <appender-ref ref="CONSOLE" /> </root> logback.xml <?xml version="1.0" encoding="UTF-8"?> <configuration> <include resource="logback-${spring.profiles.active}.xml"/> <root level="INFO"> <appender-ref ref="FILE" /> <appender-ref ref="CONSOLE" /> </root> 最后使用: -Dspring.profiles.active=dev or -Dspring.profiles.active=prod 我进入控制台: 13:01:44,673 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@2:16 - no applicable action for [configuration], current ElementPath is [[configuration][configuration]] 13:01:44,674 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@3:81 - no applicable action for [include], current ElementPath is [[configuration][configuration][include]] 13:01:44,674 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@4:89 - no applicable action for [include], current ElementPath is [[configuration][configuration][include]] 13:01:44,674 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@6:25 - no applicable action for [root], current ElementPath is [[configuration][configuration][root]] 13:01:44,674 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@7:39 - no applicable action for [appender-ref], current ElementPath is [[configuration][configuration][root][appender-ref]] 13:01:44,675 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO Spring boot文档建议使用logback-spring.xml而不是logback.xml,并且在其中你可以使用spring配置文件标签: <configuration> <springProfile name="workspace"> ... </springProfile> <springProfile name="dev,prd"> ... </springProfile> </configuration> 如果您想为不同的配置文件使用不同的 logback 配置文件,您可以从 application-*.properties 文件中更改它。 例如,在您的application-prod.properties中,您可以说: logging.config=src/main/resources/logback-prod.xml logback.xml配置文件中的替代方式,配置的分离取决于Spring Profile,如下所示: <!-- Loggers setup according to Spring Profile--> <springProfile name="localdev"> <root level="INFO"> <appender-ref ref="STDOUT"/> <appender-ref ref="FILE"/> </root> <logger name="com.myapp" level="debug" additivity="false"> <appender-ref ref="STDOUT"/> <appender-ref ref="FILE"/> </logger> </springProfile> <springProfile name="test"> <root level="INFO"> <appender-ref ref="STDOUT"/> </root> <logger name="com.myapp" level="debug"> <appender-ref ref="STDOUT"/> </logger> </springProfile> 包含的 XML 应该具有顶部节点 included 而不是 configuration。 根据:特定于配置文件的配置 您必须用“|”符号而不是“,”逗号分隔配置文件。如下: <springProfile name="dev | staging"> <!-- configuration to be enabled when the "dev" or "staging" profiles are active --> </springProfile>
将 Spring Security 5 迁移到 Spring Security 6 HttpSecurity 问题
Spring Security 6 中以下代码应该替代什么? http .authorizeRequests() .requestMatchers("/hub/**").access("hasPermission('SOME_LAYER', '')")...
大家好,目前我正计划将具有 spring 版本 4.0.6 和 java 8 的独立 spring 应用程序迁移到具有 java 11 的 Spring boot 应用程序。所以,继续使用 spring boot
grpc-spring-boot-starter - 如果我将 spring-boot-starter-jdbc 添加到依赖项中,netty 服务器不会启动
我开始用spring boot测试grpc,我使用net.devh中提供的GrpcService:grpc-spring-boot-starter(https://yidongnan.github.io/grpc-spring-boot-起动器/en/)。 它隔离效果很好...
如何在Spring Boot 3和Spring Framework 6中注册拦截器
我正在使用 Spring Boot 3.1.0-SNAPSHOT 构建后端,它使用 Spring Framework 6x。 拦截器: @Slf4j 公共类 MyInterceptor 实现 HandlerInterceptor { @覆盖 公众嘘声...
Spring MVC - 为什么我在 GET 请求中需要模型对象?
看一下 Spring 提供的用于处理表单提交的示例: https://github.com/spring-guides/gs-handling-form-submission/tree/main/complete 这是 Spring MVC 控件的基本示例...
Jaxb2Marshaller 与 Spring boot 3+ 和 Jaxb 4 兼容吗?
我正在将我的项目从 Spring Boot 2.7 升级到 Spring Boot 3.1。在这个项目中仍然使用 SOAP,因此我们依赖 Jaxb 和 spring WS。 我正在使用 com.helger.maven 生成 Java 类:
Spring @Transactional 迁移到 Spring 5 后不起作用
我最近将应用程序从带有 AspectJ 1.8.10 的 Spring 4.3.x 和 JDK 8 升级到带有 Spring 5.3.x 和 AspectJ 1.9.20.1 的 JDK 17,并且事务注释似乎不起作用 在应用中...
bean“mvcHandlerMappingIntrospectorRequestTransformer”无法注册。具有该名称的 bean 已被定义并覆盖 i
环境:Spring Boot 3.2.1、JDK 21、GraalVM、Spring Native、Spring Security。错误 微软Windows [版本10.0.22631.2861] (c) 微软公司。版权所有。 。 ____ ...
Spring Boot api 在多次成功的 200 响应后给出 403
我有一个 Spring Boot 应用程序,它使用 spring security 作为依赖项。我正在将 Spring boot 版本从 2.7.16 迁移到 3.2.1。在 2.7.16 版本中一切正常。但在 3.2.1 中,其余 API 都...
“我正在使用 spring maven 项目,想要在其中实现脚手架,以便我可以根据模型动态生成 DAO、服务和 spring 表单。如何实现?”
Spring Boot 3.4.0 让 JPA/Hibernate 的集成测试失败
我们已从 Spring Boot 3.3.6 更新到版本 3.4.0。现在,我们的集成测试(注释 @SpringBootTest)与 Hibernate/JPA 交互(我们使用 spring-data-jpa)突然失败。 @测试
Spring Boot 集成测试抛出错误“java.lang.IllegalStateException:阻塞读取超时 5000 毫秒”
问题发生在我通过 Spring boot 2.0.0.M3 使用 Spring webflux 的项目上。以下是项目的依赖项, 依赖项{ 编译 'org.springframework.boot:spring-boot-starter-
React 应用程序如何连接到 OAuth 2 Spring 授权服务器/资源服务器/oauth 客户端后端
我已经实现了一个生成令牌的 OAuth 2 spring 授权服务器。端口4002 用于 api 调用的 spring 资源服务器。端口4003 一个 spring oauth 客户端,用于处理与
Spring Boot JSP 404.Whitelabel 错误页面
无法使用 spring-boot 加载非常简单的 JSP 页面,出现 404 Not Found HmisApplication.class @SpringBootApplication 公共类 HmisApplication 扩展 SpringBootServletInitializer { @覆盖
通过 Maven Spring Boot 插件运行应用程序时如何设置 Java Xmx 标志?
我正在使用 mvn spring-boot:run 运行应用程序。我正在尝试按照此处所述设置 Xmx 标志: mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Xmx512m" 但它不...
我在 Spring-MVC 中显示 jsp 页面时遇到问题。 这是带有 Gradle 和 IntelliJ CE 的基本 hello world Spring-MVC: 我收到以下错误页面: 这是我的 build.gradle: 构建脚本{
如何使用 Java 17、Spring 6、Jakarta Server Faces 4.x 和 PrimeFaces 12 检索 FacesContext?
我正在尝试将我的 JSF + PrimeFaces (UI) + Spring 应用程序从 Java 8 迁移到 Java 17,同时还将 Spring 版本迁移到 6。 为此,需要从 javax 库移出...
Java Spring Boot 风格的 Web 服务有点新鲜——所以请保持温柔。为什么大多数 Spring Boot 控制器示例没有显示捕获任何异常?我看到我的一些同伴正在开发...
Spring Boot @PutMapping 消耗多部分/表单数据不起作用
我在 Spring Boot (v2.7.15) 中使用 Java 11 有以下端点: @PutMapping(值 = "/{id}", 消耗= MediaType.MULTIPART_FORM_DATA_VALUE, 产生=媒体类型。
Springboot 3.2.1(使用 Jetty)和 graphql-spqr-spring-boot-starter 1.0.0 出现错误
刚刚将 Spring Boot 升级到版本 3.2.1(使用 Jetty)并开始出现以下错误。知道如何解决这个问题吗?或者 graphql-spqr-spring-boot-starter:1.0.0 仅与旧版本兼容...
我有一个 Spring 应用程序,它使用 JpaRepository 连接到 h2,但出现以下错误: com.julio.demo.DemoApplication 中的字段 usuarioRepository 需要类型为 'com....
本地运行测试时如何禁用 Spring Cloud Google Secret Manager 4.x+?
我们使用的是 spring boot 3.2,我们正在尝试将 spring-cloud-gcp-starter-secretmanager 从版本 3.2.1 升级到 4.9.0。当我们这样做时,我们的集成测试会失败,并显示: java.lang.
Spring Security 6 POST 请求未经permitAll()授权
我正在使用 Spring Boot 3、Spring Security 6。我的安全配置无法正常工作。我有 2 条路径,任何请求都应该被允许,而对于其他所有请求,都需要进行身份验证...
我有兴趣了解有关 Spring Retry 的更多信息。任何地方都有文档吗?我能找到的只有GitHub项目中的源代码。
Apache Tiles 3.x 不再在 Spring 6.x 中编译,因为 javax.* 重命名为 jakarta。*
我的应用程序使用Spring 5.x,Apache Tiles 3.0.x。现在我想迁移到 Spring 6.x,但问题出在 Apache Tiles 3.0.x 上,因为它有 javax.servlet.* 而不是 jakarta.* 。所有春天...
Spring security 6.2 JSESSIONID 未返回
我正在使用 Kotlin 创建一个 Spring Boot 应用程序。我已经将 WebSecurity 配置为: @配置 类安全配置{ @Autowired Lateinit var dataSource: 数据源 @值(...
我正在使用 spring-mvc 创建 servlet,例如: @RestController 公共类 MyServlet { @GetMapping("/测试") 公共 MyRsp 测试(MyReq req){ //... } } 现在,如果用户访问...
在 Spring Boot 3.2.0 中使用 JdbcTemplate 将 Java LocalDate 持久化到 Oracle DATE 列时出现意外的时间组件插入
在 Spring Boot 3.2.0 中使用 JdbcTemplate 将 Java LocalDate 值保留在 Oracle DATE 列中时,我们遇到了意外行为。 在升级到 Spring Boot 3.2.0 之前,时间
使用 Hibernate - Oracle DB 在 Spring Boot 2.3.5 版本中设置 JPA 方法的超时
我正在使用 Spring Boot 2.3.5 版本和 Oracle 12c DB,并使用 Spring Boot 数据 jpa/hibernate 执行数据库操作。 有时数据库操作需要更多时间,我需要设置时间...
我的 Spring 批处理由 Rest 端点触发。我正在寻找一次仅运行一个作业实例的解决方案。
Spring Boot:3.2.0,Kotlin:1.9.21,构建映像:maven:3.9.5-amazoncorretto-21,运行映像:amazoncorretto:17 我有一个非常简单的 Spring Boot 项目 @SpringBootApplication 类演示应用程序 有趣
Spring Boot Keycloak docker-compose
当 Docker 容器中的 Spring Boot 应用程序尝试访问 Keycloak Docker 容器时,我遇到问题。我使用 docker-compose 创建了它们。以下是文件: 版本:“3.8”
如何使用spring security 6为AuthenticationManager的参数2定义bean?
我是 Spring Security 6 的新手。当我尝试配置安全性时,出现此错误: ************************** 应用程序无法启动 ************************** 描述:
将 localstack 与 Spring Cloud AWS 2.3 一起使用时出现未知主机
“ResourceLoader”与 AWS S3 可以很好地处理这些属性: 云: 亚马逊: s3: 端点:s3.amazonaws.com <-- custom endpoint added in spring cloud aws 2.3 creden...
在我用 Kotlin 构建的 Spring 应用程序中,我想对如下所示的数据类使用 bean 验证。 数据类 CustomerDto( @field:非空白 val 名字:字符串,...
我的控制器中所有 @FXML 属性均为 NULL(SPRING BOOT - JAVA-FX 集成)
我正在开发一个会员管理软件,我使用的是spring boot,spring data与JAVA-FX集成。 一切都很好,直到我创建了一个视图,其中有一张包含所有拥护成员的表格
使用 Spring Cloud LoadBalancer 进行基于请求的粘性会话配置
我使用 Spring Cloud LoadBalancer 对基于请求的粘性会话进行了以下配置 春天: 云: discovery.client.simple.instances: 打个招呼: -实例ID:说-
我正在尝试在 Spring Boot 5 中的 oAuth 客户端上启用 PKCE。我能找到的示例适用于反应式客户端,如下所示: SecurityWebFilterChain springSecurityFilterChain(
我正在使用 Spring Boot 实现基本的员工管理 CRUD API。 以下是我希望您关注的实体和服务。 我正在尝试创建这种双向关系:员工
Spring Boot ConflictingBeanDefinitionException:@Controller 类的注解指定的 bean 名称
我在 Spring boot 应用程序中不断收到 ConflictingBeanDefinitionException 错误。我不完全确定如何解决这个问题,我有几个 @Configuration 注释的类有助于...
Spring MockRestServiceServer 处理多个异步请求
我有一个协调器 Spring Boot 服务,它向外部服务发出几个异步休息请求,我想模拟这些服务的响应。 我的代码是: mockServer.expect(要求...
我有一个 Spring 集成流程,其中我目前通过使用 Thread.sleep() 引入了手动条件延迟 我知道这是低效的,现在想重构整个......
我尝试查看参考资料,但似乎找不到 spring.redis 配置值的完整列表。 我正在专门寻找为 Spring Data Redis 操作设置前缀。
我在 Spring Boot Web 客户端发送请求正文时遇到一些问题。尝试发送如下所示的正文: val 主体 = "{ ” + "\"电子邮件\":\"[email protected]\", ” + “\”id\“:...
不支持 PutRequest [当禁用 spring 隐藏方法时]
我正在使用 Java、Spring 和 Thymeleaf 构建我的第一个 Web 应用程序。当我为登录表单创建 PutRequest 时,收到以下错误消息: .w.s.m.s.DefaultHandlerExceptionResolver :解析...
我想强制 Spring 6.1 RestClient 使用重试机制执行所有 http 调用。 理想情况下,我想复制使用 RestTemplate 和 spring-retry 可以实现的这种行为
如何在 Spring Web 应用程序中使用 FastMoney?
我正在使用 Spring Web 创建一个虚拟存款表格。应该是这样,在处理金钱时想尝试 JavaMoney API。所以,@RequestBody DTO 是这样的: @数据 @布...
为什么springinitializr让项目继承spring-boot-starter-parent而不是使用spring-boot-dependency
当使用 spring initalizr 创建项目时,pom.xml 继承自 spring-boot-starter-parent: 当使用 spring initalizr 创建项目时,pom.xml继承自spring-boot-starter-parent: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.1.3</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>demo</name> 与在spring-boot-dependencies中指定<dependencyManagement/>相比,这似乎不太灵活,因为如果我们需要使用生成的结构作为多模块项目的子模块,或者使用公司范围的父模块,我们需要将BOM移动到提到的部分: <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>${spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> 使用 spring-boot-starter-parent 作为父级而不是在创建时立即声明 <dependencyManagement/> 部分是否有任何具体原因? 有人投票决定关闭问题,坚称这是基于意见的,但事实并非如此。 插件配置的存在(顺便说一句,乍一看这些配置的目的是为了修复maven插件的一些“小故障”,但是,其中一些配置不再需要了,例如:https://github.com/maven-plugin)。 com/JetBrains/kotlin/pull/1501)并不是以下之间的唯一区别: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.1.3</version> <relativePath/> <!-- lookup parent from repository --> </parent> 和 <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>${spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> 在第一种情况下,maven 项目通过父子关系继承 dependencyManagement,因此,由于 spring-boot 团队通过 properties 部分定义依赖项版本,子项目也可以通过 properties 部分覆盖依赖项版本,例如如果我们的目标是更改 spring-framework 的版本而不更改 spring-boot 的版本,我们可以定义如下内容: <properties> <spring-framework.version>6.0.15</spring-framework.version> </properties> 这显然在第二个配置的情况下不起作用 - maven 只是从 independentBoM 导入 dependencyManagement 部分。 尚不清楚哪种方法“更灵活”(我们更愿意同时避开这两种方法),但是它们与依赖管理的角度也不同。