반응형

spring-boot 36

spring mvc rest 서비스 리다이렉트/전송/프록시

spring mvc rest 서비스 리다이렉트/전송/프록시 REST 서비스를 공개하기 위해 spring mvc framework를 사용하여 웹 어플리케이션을 만들었습니다.예를 들어 다음과 같습니다. @Controller @RequestMapping("/movie") public class MovieController { @RequestMapping(value = "/{id}", method = RequestMethod.GET) public @ResponseBody Movie getMovie(@PathVariable String id, @RequestBody user) { return dataProvider.getMovieById(user,id); } 이제 애플리케이션을 도입해야 하는데 다음과 같은 문제가..

programing 2023.03.29

스프링 테스트 방법 @Scheduled

스프링 테스트 방법 @Scheduled 스프링 부트 응용 프로그램에서 작업 태스크를 테스트하려면 어떻게 해야 합니까? package com.myco.tasks; public class MyTask { @Scheduled(fixedRate=1000) public void work() { // task execution logic } } 작업이 너무 짧은 간격으로 실행되어 작업이 실행될 때까지 테스트를 기다리고 작업이 호출되는지 테스트하고 싶을 경우 다음 솔루션을 사용할 수 있습니다. 클래스 경로에 대기 기능 추가: org.awaitility awaitility 3.1.0 test 쓰기 테스트는 다음과 같습니다. @RunWith(SpringRunner.class) @SpringBootTest public c..

programing 2023.03.29

양호한 JWT 인증 필터 설계 방법

양호한 JWT 인증 필터 설계 방법 JWT는 처음입니다.어쩔 수 없이 왔기 때문에 인터넷에는 정보가 별로 없습니다.저는 이미 스프링 세션을 사용하여 스프링 보안을 사용하여 스프링 부트 애플리케이션을 개발했습니다.이제 봄 세션 대신 JWT로 이동합니다.링크를 거의 찾지 못했기 때문에 사용자를 인증하고 토큰을 생성할 수 있게 되었습니다.여기서 어려운 부분은 서버에 대한 모든 요청을 인증하는 필터를 만들고 싶다는 것입니다. 필터는 토큰을 어떻게 검증합니까?(서명 확인만으로 충분합니까?) 다른 사람이 토큰을 훔쳐서 전화를 걸었을 경우, 어떻게 확인할 수 있습니까? 필터에서 로그인 요청을 우회하려면 어떻게 해야 합니까?인증 헤더가 없기 때문에 다음에, 필요한 것을 실행할 수 있는 필터를 나타냅니다. public ..

programing 2023.03.14

스프링 부트 웹 응용 프로그램에서 JSP 파일이 렌더링되지 않음

스프링 부트 웹 응용 프로그램에서 JSP 파일이 렌더링되지 않음 내장된 Tomcat(기본값)을 사용하여 Spring Boot 웹 응용 프로그램을 실행하고 있습니다.컨트롤러에서 지정한 뷰를 렌더링할 때 JSP 파일을 사용할 경우 JSP는 렌더링되지 않고 내용을 인쇄합니다.예를 들어 다음과 같습니다. index.jsp Test 브라우저에서 보기를 렌더링할 때 예상 내용 대신 위의 내용이 표시됩니다. Test 하세요.pom.xml Tomcat Tomcat JSP 」 음 specifies specifies 、 「 Tomcat JSP 」 org.apache.tomcat.embed tomcat-embed-jasper provided Embedded Tomcat은 JSP 렌더링을 옵션으로 취급하는 것 같습니다. 다음..

programing 2023.03.14

application.properties를 사용하여 봄에 CSRF를 비활성화하려면 어떻게 해야 합니까?

application.properties를 사용하여 봄에 CSRF를 비활성화하려면 어떻게 해야 합니까? 다음 속성이 있습니다. security.enable-csrf=false 속성을 에 추가하는 경우 BUT csrf 보호는 아직 유효합니다.application.properties. 동작하는 것은, 그것을 프로그램적으로 무효로 하는 것입니다. 하지만 속성 구성을 선호합니다.왜 안 되는 거죠? @Configuration public class AuthConfig extends WebSecurityConfigurerAdapter { @Autowired private UserDetailsService userDetailsService; @Override protected void configure(Authent..

programing 2023.03.14

스프링 부트 기본 로그 위치

스프링 부트 기본 로그 위치 에spring-boot응용 프로그램 사용자 지정 로그 파일을 지정할 수 있습니다. java -jar spring-boot-app.jar --logging.file=/home/ubuntu/spring-boot-app.log 하지만 지정하지 않으면 어디로 가는 거죠? 다음 폴더 중 하나에서 찾을 수 없습니다. /tmp/ /var/log/ ~/ 나는 없다spring-boot-starter-logging또는 기타 로깅 종속성을 지정합니다. 나는 비슷한 것을 갖고 싶었다.catalina.out기본 설정에서는 임베디드 Tomcat이 실행되므로: INFO 10374 --- [main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initiali..

programing 2023.03.14

org.springframework.boot.web.support가 존재하지 않습니다.

org.springframework.boot.web.support가 존재하지 않습니다. 봄 부츠 프로젝트를 위해 제작 시스템을 메이브에서 그라데일로 변경하려고 합니다.이 스택 트레이스가 19:03:08: Executing external task 'bootRun'... /home/dac/proj/spring-boot-master/spring-boot-samples/spring-boot-sample-jetty-jsp/src/main/java/sample/jetty/jsp/SampleJettyJspApplication.java:22: error: package org.springframework.boot.web.support does not exist import org.springframework.boot..

programing 2023.03.14

잘못된 요청 - 호스트와 포트의 이 조합에는 TLS가 필요합니다.스프링 부트 포함

잘못된 요청 - 호스트와 포트의 이 조합에는 TLS가 필요합니다.스프링 부트 포함 저는 스프링 부츠 신참입니다. 서비스에 https 콜을 발신하려고 합니다.접속을 보호하기 위한 Privake 키가 있습니다. 나는 때렸다: http://localhost:8081/points/12345/search https://로 시도했지만, Postman에서 받았습니다. Could not get any response There was an error connecting to https://localhost:8081/points/12345/search. 쓴 순간부터 server.ssl.key-store=classpath:KeyStore.jks server.ssl.key-store-password=test 에applica..

programing 2023.03.09

Spring Boot 명령줄 응용 프로그램을 셧다운하는 방법

Spring Boot 명령줄 응용 프로그램을 셧다운하는 방법 빨리 동작시키기 위해 Spring Boot을 사용하여 Command Line Java 어플리케이션을 구축하고 있습니다. 응용 프로그램은 다양한 유형의 파일(예를 들어 CSV)을 로드하여 Cassandra 데이터베이스에 로드합니다.웹 컴포넌트도 웹 어플리케이션도 사용하지 않습니다. 제가 안고 있는 문제는 작업이 끝나면 애플리케이션을 정지하는 것입니다.Spring CommandLineRunner 인터페이스를 사용하여@Component아래와 같이 작업을 실행하는데, 작업이 완료되어도 애플리케이션이 정지하지 않고, 어떠한 이유로 계속 실행되어 정지할 수 없습니다. @Component public class OneTimeRunner implements ..

programing 2023.03.09

'+'(더하기 기호)가 문자열 URL을 사용하여 RestTemplate로 인코딩되지 않고 '(스페이스)'로 해석됩니다.

'+'(더하기 기호)가 문자열 URL을 사용하여 RestTemplate로 인코딩되지 않고 '(스페이스)'로 해석됩니다. Java 8에서 Java 11로, Spring Boot 1.5.6에서 2.1.2로 이행합니다.RestTemplate를 사용하면 '+' 기호가 '%2B'로 인코딩되지 않습니다(SPR-14828에 의해 변경됨).RFC3986에서는 '+'는 예약된 문자로 나열되지 않지만 Spring Boot 엔드포인트로 수신되면 '(스페이스)'로 해석되기 때문에 괜찮습니다. 옵션 타임스탬프를 쿼리 매개 변수로 사용할 수 있는 검색 쿼리가 있습니다.쿼리는 다음과 같습니다.http://example.com/search?beforeTimestamp=2019-01-21T14:56:50%2B00:00. 이중 부호화 ..

programing 2023.03.09
반응형