spring-boot-starter-web과 spring-boot-starter-weblux는 함께 작동하지 않습니까?
내가 배우기 시작할 때spring-webflux
저는 이 부품에 대해 질문이 있습니다.
저는 메이븐을 이용해 간단한 프로젝트를 만들었습니다.다음과 관련된 종속성을 추가했습니다.spring-boot-starter-web
그리고.spring-boot-starter-webflux
예:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
하지만 효과가 없습니다.제거할 때spring-boot-starter-web
의존성, 그것은 잘 작동할 수 있습니다.
웹 환경에 대한 Spring Boot 참조 문서 섹션에서 설명한 바와 같이, 웹 및 웹 플럭스 스타터를 모두 추가하면 Spring MVC 웹 응용 프로그램이 구성됩니다.
기존의 많은 Spring Boot 웹 애플리케이션(MVC 사용)이 웹 플럭스 스타터를 사용하여WebClient
스프링 MVC는 반응형 리턴 타입을 부분적으로 지원하므로 예상되는 사용 사례입니다.반응형 애플리케이션이 Spring MVC 비트를 사용할 가능성이 크지 않기 때문에 그 반대는 사실이 아닙니다.
따라서 웹 및 웹 플럭스 스타터를 모두 사용할 수 있지만 Spring MVC 응용 프로그램을 구성합니다.Spring Boot 애플리케이션은 항상 다음과 같은 기능을 사용하도록 강제할 수 있습니다.
SpringApplication.setWebApplicationType(WebApplicationType.REACTIVE)
그러나 반응형 웹 응용 프로그램에서 차단 기능을 쉽게 사용할 수 있으므로 종속성을 정리하는 것이 좋습니다.
저도 비슷한 문제가 있었습니다.spring-boot-starter-webflux
그리고.spring-data-geode
발생시키는
DEBUG [http-nio-8082-exec-2] org.sprin.web.servl.resou.ResourceHttpRequestHandler 454 handleRequest: Resource not found
응용 프로그램 유형을 변경하여 해결되었습니다.
@SpringBootApplication
public class Web {
public static void main(String[] args) {
SpringApplication app = new SpringApplication(Web.class);
app.setWebApplicationType(WebApplicationType.REACTIVE);
SpringApplication.run(Web.class, args);
}
}
반 전체가 이렇게 생겼습니다.
응용 프로그램 유형을 설정한 후에 그렇지 않으면 전화를 겁니다.SpringApplication
정적인 방식으로, 저는 다음과 같이 이해합니다.
언급URL : https://stackoverflow.com/questions/51377675/dont-spring-boot-starter-web-and-spring-boot-starter-webflux-work-together
'programing' 카테고리의 다른 글
응답에서 텍스트 읽기 (0) | 2023.07.02 |
---|---|
SQL: 처음 찾은 행에서 조인을 제한하는 방법은 무엇입니까? (0) | 2023.07.02 |
MongoDB의 실제 필드 유형 반환 (0) | 2023.07.02 |
디버깅 없이 잘못된 명령 오류를 발생시킨 어셈블리 명령 찾기 (0) | 2023.07.02 |
Python을 사용하여 디렉토리의 모든 파일 삭제 (0) | 2023.07.02 |