inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

주소창에 주소를 쓰고 엔터를 누르면 항상 GET 요청 메시지로 보내나요?

해결됨

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 네이버나 구글에서 검색하는 것이 아니라, 웹 브라우저의 주소창에서 바로 특정 사이트의 URL을 써서 엔터 누르면 항상 GET 방식으로 요청 메시지를 보내나요? 아니면 이것도 POST 등의 다른 방식으로 구현할 수 있나요?

  • spring
  • mvc
11 1 댓글 1 좋아요 0 조회수 269

OpenJDK64-Bit

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. 아래의 오류는 어떻게 해결해야 하는지 잘 모르겠습니다...

  • java
  • spring
  • mvc
  • spring-boot
최승빈 댓글 3 좋아요 0 조회수 396

콘솔창 빨간 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 계속 이렇게 뜨는데 런타임때 오류는 딱히 발생하지 않습니다 런타임 이후 런타임을 중지 할때 이런 오류가 계속뜨는데 이유를 모르겠습니다.

  • java
  • spring
  • mvc
  • spring-boot
tlsalstjr58 댓글 2 좋아요 1 조회수 650

기본객체들 404

해결됨

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

스프링MVC 기본객체들 강의 학습중인데요 404가 나오네요 소스 자체를 복붙해도 404가 나오는데 원인을 모르겠습니다 스프링은 3.2.0 버전사용하고 있고 아래는 소스코드 입니다 BasicController package hello.thymeleaf.basic; import jakarta.servlet.http.HttpSession; import lombok.Data; import org.springframework.stereotype.Component; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @Controller @RequestMapping("/basic") public class BasicController { @GetMapping("text-basic") public String textBasic(Model model) { model.addAttribute("data", "Hello Spring!"); return "/basic/text-basic"; } @GetMapping("text-unescaped") public String textUnescaped(Model model) { model.addAttribute("data", "<b>Hello Spring!</b>"); return "/basic/text-unescaped"; } @GetMapping("/variable") public String variable(Model model) { User userA = new User("userA", 10); User userB = new User("userB", 20); List<User> list = new ArrayList<>(); list.add(userA); list.add(userB); Map<String, User> map = new HashMap<>(); map.put("userA", userA); map.put("userB", userB); model.addAttribute("user", userA); model.addAttribute("users", list); model.addAttribute("userMap", map); return "basic/variable"; } @Data static class User { private String username; private int age; public User(String username, int age) { this.username = username; this.age = age; } @GetMapping("/basic-objects") public String basicObjects(HttpSession session) { session.setAttribute("sessionData", "Hello Session"); return "basic/basic-objects"; } @Component("helloBean") static class HelloBean { public String hello(String data) { return "Hello " + data; } } } } basic-objects <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>식 기본 객체 (Expression Basic Objects)</h1> <ul> <li>request = <span th:text="${request}"></span></li> <li>response = <span th:text="${response}"></span></li> <li>session = <span th:text="${session}"></span></li> <li>servletContext = <span th:text="${servletContext}"></span></li> <li>locale = <span th:text="${#locale}"></span></li> </ul> <h1>편의 객체</h1> <ul> <li>Request Parameter = <span th:text="${param.paramData}"></span></li> <li>session = <span th:text="${session.sessionData}"></span></li> <li>spring bean = <span th:text="${@helloBean.hello('Spring!')}"></span></li> </ul> </body> </html> index.html <html> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <ul> <li>텍스트 <ul> <li><a href="/basic/text-basic">텍스트 출력 기본</a></li> <li><a href="/basic/text-unescaped">텍스트 text, utext</a></li> </ul> </li> <li>표준 표현식 구문 <ul> <li><a href="/basic/variable">변수 - SpringEL</a></li> <li><a href="/basic/basic-objects?paramData=HelloParam">기본 객체들</a></li> <li><a href="/basic/date">유틸리티 객체와 날짜</a></li> <li><a href="/basic/link">링크 URL</a></li> <li><a href="/basic/literal">리터럴</a></li> <li><a href="/basic/operation">연산</a></li> </ul> </li> <li>속성 값 설정 <ul> <li><a href="/basic/attribute">속성 값 설정</a></li> </ul> </li> <li>반복 <ul> <li><a href="/basic/each">반복</a></li> </ul> </li> <li>조건부 평가 <ul> <li><a href="/basic/condition">조건부 평가</a></li> </ul> </li> <li>주석 및 블록 <ul> <li><a href="/basic/comments">주석</a></li> <li><a href="/basic/block">블록</a></li> </ul> </li> <li>자바스크립트 인라인 <ul> <li><a href="/basic/javascript">자바스크립트 인라인</a></li> </ul> </li> <li>템플릿 레이아웃 <ul> <li><a href="/template/fragment">템플릿 조각</a></li> <li><a href="/template/layout">유연한 레이아웃</a></li> <li><a href="/template/layoutExtend">레이아웃 상속</a></li> </ul> </li> </ul> </body> </html> 링크 여기서 막혀서 학습을 못하고 있어요 ㅠㅠ 도와주세요

  • spring
  • mvc
신승록 댓글 2 좋아요 1 조회수 469

properties안에 써놓은 한글이 깨집니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

이런식으로 한글이 깨지는데, 처음엔 @Getter나 jackson라이브러리나 slf4j가 깨지는 줄 알았는데 게터 세터 직접 구현하고 브라우저에서 찍고, ide상에서 System.out.println으로 찍어도 깨지네요 ㅠㅠ.. 검색해서 나온 이런것 다 해보았습니다. vmoption 파일도 수정했습니다. 실행 옵션에 따라 동적으로 서비스 명 다르게 해서 배포하고 싶었는데, 잘 안되네요 ㅠㅠ.. 강의를 따라했을 때 국제화 message는 안깨졌었는데 이상하네요..

  • spring
  • mvc
  • 한글
  • preperties
Stellar Kim 댓글 2 좋아요 0 조회수 716

제가 제대로 이해한게 맞는지 알고싶습니다

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

정적 컨텐츠 정적 컨텐츠는 단순히 파일을 그대로 클라이언트에게 전송하는 방식이다. 주로 이미지 파일, CSS 파일, JavaScript 파일 등과 같은 변하지 않는 자원들을 제공할 때 사용한다. MVC와 템플릿 엔진 MVC 아키텍처에서 템플릿 엔진을 사용하면 모델(Model), 뷰(View), 컨트롤러(Controller)를 각각 독립적으로 분리할 수 있다. 모델은 데이터를 관리하고, 뷰는 템플릿 엔진을 사용하여 HTML로 동적으로 프로그래밍하며, 컨트롤러는 비즈니스 로직을 처리하고 모델 및 뷰를 관리한다. 렌더링된 HTML은 클라이언트에게 전달되어 화면(=View)에 표시된다. API API는 객체를 반환하는 방식으로 동작한다. HttpMessageConverter를 사용하여 객체를 적절한 형식으로 변환하고, 이를 HTTP ResponseBody(자바 스프링의 경우 @ResponseBody)에 직접 넣어 클라이언트에게 반환한다. 이 과정에서 별도의 뷰 없이 데이터가 그대로 HTTP ResponseBody에 포함되어 전송된다. 이렇게 이해했는데 틀린 부분이 있을까요? 틀리거나 어색한 부분 지적 부탁 드립니다.

  • java
  • spring
  • mvc
  • spring-boot
우바 댓글 1 좋아요 3 조회수 694

ObjectMapper 출력

해결됨

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

안녕하세요. 강의와 똑같이 코드를 작성 후, jackson 라이브러리 또한 확인했습니다. HelloData 코드도 작성 후 롬복도 추가해 놓았습니다. postman으로 요청시에 HelloData helloData = objectMapper.readValue(messageBody, HelloData.class); System.out.println("helloData.username = " + helloData.getUsername()); System.out.println("helloData.age = " + helloData.getAge()); response.getWriter().write("ok"); 이 부분이 출력되지 않아서 질문 남깁니다. 오류 메시지는 없습니다. boot 버전은 3.2.0 입니다. 감사합니다.

  • spring
  • mvc
김혜원 댓글 1 좋아요 1 조회수 518

Spring을 이용해 뒤로가기 중복 제출을 막을수도있나요?

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] PRG를 이용해서, 불필요한 post요청을 방지하는 내용이 있었는데, 상품을 추가하고 뒤로가기를 누르게되면, 다시 제출했던 폼이 그대로 남아있어서 "추가 -> 뒤로가기 ->추가" 계속 반복적으로 작성할 수 있잖아요? 이런거는 spring으로 방지 못하고, javascript로 처리해줘야하나요

  • spring
  • mvc
김학 댓글 1 좋아요 0 조회수 739

get connection 로그가 6개 나오는 이유가 궁금해요

미해결

스프링 DB 1편 - 데이터 접근 핵심 원리

여기 로그를보면 get connection 로그가 6개가나오는데요 save ,findById, update, delete 4번을해서 로그가 4번이 나올줄알았는데 왜 커넥션로그가 6번 나왔는지 궁금해요

  • spring
  • mvc
  • spring-jdbc
자바마스터하자 댓글 1 좋아요 0 조회수 454

Java Hotspot Warning 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] Java HotSpot(TM) 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.이게 뜨는데 어떻게 해결하나요?? 실행은 잘되는데 거슬리네여

  • java
  • spring
  • mvc
  • spring-boot
철규 댓글 1 좋아요 0 조회수 479

hello 에서 404 에러 뜹니다

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.

  • java
  • spring
  • mvc
  • spring-boot
SJ L 댓글 1 좋아요 0 조회수 547

스프링 시큐리티 HttpSeurity.apply() derpeciated 도움 부탁드려요!

미해결

안녕하세요! 최근 스프링 시큐리티가 패치되면서, 기존 메서드 체이닝 방식이 아닌 람다식을 통해 함수형으로 설정하도록 바뀌었는데요. 다른 설정 부분은 새롭게 바뀐 방식을 찾았으나.... 아래 사진의 마지막 apply() 는 도저히 찾을 수가 없더라고요...ㅠ 혹시 아시는 분계실까요? ('apply(C)' is deprecated since version 6.2 and marked for removal )

  • spring-boot
  • spring-security
  • java
developer 댓글 1 좋아요 0 조회수 1815

RestTemplate 호출하여 응답기다릴때도 runnable 이 맞나요?

미해결

자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]

우선 좋은 강의 감사드립니다. 강의내용중 running -> runnable 로 이동하는 방법에 yield, I/O 가 있다고 하셨는데, DB query 등을 하면 응답이 올때까지 waiting으로 상태변경이 되는게 아닐까 싶어 샘플코드를 짜보니 정말로 running-> runnable 상태이던데, 1) 응답이 올때까지 기다리는 것이기도 하고 2) runnable 이면 언제라도 running이 될수 있는데, 이 경우 running -> runnable -> running 으로 상태변경되었는데 아직 응답이 오지 않았으면 다시 runnable 로 넘어가고.. 이런게 반복되는건가요? 샘플코드는 아래와 같이 만들어봤습니다. RestTemplate template = new RestTemplate(); template.getEntity(xxx); // 응답이 10초 걸리는 api 호출 10초 내에 위 작업을 하는 쓰레드의 상태를 log 로 찍으니 runnable 로 나왔습니다.

  • java
  • concurency
  • multithread
  • synchronisation
void 댓글 1 좋아요 2 조회수 452

강의에서 HttpServletRequest 과 HttpServletResponse객체 관련 질문있습니다.

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 강의에서 HttpServletRequest HttpServletResponse 요청 마다 해당 객체가 생성이 된다고 했는데 1) hashcode로 찍었을때의 메모리 번지수가 달라야하는데 같은 값이 나옵니다 왜 그런가요? 2)또 1번의 연장선에서 해당 부분에 대해서 쓰레드가 한개가 사용이 될때에는 객체가 공유되지만 ex) Clinet1)Request-> /hello Reponse (해당 요청이 끝난뒤) HttpServletRequest -> hashcode(113) HttpServletResponse -> hashcode(114) Client2) Reuqest -> /hello Response HttpServletRequest -> hashcode(113) HttpServletResponse -> hashcode(114) 이런식으로 한개의 쓰레드가 사용이 될때에는 HttpServletRequest가 같은 hashcode 를 가지지만 Clinet1)Request-> /hello Reponse (해당 요청 처리중) HttpServletRequest -> hashcode(113) HttpServletResponse -> hashcode(114) Client2) Reuqest -> /hello Response HttpServletRequest -> hashcode(115) HttpServletResponse -> hashcode(116) 이런식으로 다르게 나오던데 그이유가 뭔지 궁금합니다.

  • spring
  • mvc
잘열심히 댓글 1 좋아요 2 조회수 447

메서드 설정시 어떤부분은 static어 어떤부분은 static없이 하는데 이유가 궁금합니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오)예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 1분31초에 addUsers에서는 private void로 일반 메서드를 생성했는데 이전에 HelloBean 메서드를 컴포넌트에 등록하기 위해 정의내릴때는 static으로 설정하는데 두개의 차이가 궁금합니다.

  • spring
  • mvc
a787574 댓글 1 좋아요 0 조회수 403

온라인 결제 시스템에서 중복 결제 방지 방법은 어떻게 구현하나요?

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (아마 조금은요) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. "PRG Post/Redirect/Get" 강의를 듣던 중 궁금한 것이 있어 질문을 드립니다. 온라인 쇼핑몰의 백엔드 시스템을 개발하는 과정에서 한 가지 중요한 문제에 대해 의견을 구하고 싶습니다. 상황은 다음과 같습니다: 고객이 장바구니에 있는 물품을 구매하는 과정에서, 서버로의 결제 요청은 성공적으로 처리되었으나, 네트워크 문제나 기타 이유로 인해 결제 성공 응답을 받지 못하는 경우가 있습니다. 이로 인해 고객은 결제가 실패한 것으로 오해하고 같은 결제를 다시 시도할 수 있습니다. 이는 원치 않는 중복 결제로 이어질 수 있는데, 이러한 상황을 효과적으로 방지하고 관리할 수 있는 방법이 있을까요?

  • spring
  • mvc
ybjeon01 댓글 1 좋아요 0 조회수 747

@InitBinder과 validator 에 대한 질문

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 안녕하세요 InitBinder 할시 위와 같은 결과를 얻는데요 순서를 조정하는 방법은 없습니까? 제가 구현하고 싶은건 " 숫자를 입력해주세요 " 만 나타나게 하고 싶고 이전 코드에서는 코드의 순서를 간단하게 조정해주는 정도로 구현이 가능했는데 InitBinder를 쓸 경우 어떻게 해야 제가 원하는대로 구현할 수 있는지 궁금합니다. 글로벌하게 validator를 구현하고 또 하나 컨트롤러에서 validator를 구현했다고 가정했을때 두개 다 했을시 에러가 발생합니까? 아니면 컨트롤러 validator가 우선권을 가집니까? 아니면 두개 다 검증됩니까?

  • spring
  • mvc
김보성 댓글 1 좋아요 0 조회수 428

제가 작성한 강의 노트 링크를 블로그 등에 올려도 되나요?

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

공유해도 된다고는 알고는 있는데 제가 이후의 유료 강의들은 메모 작성할 때 이미지도 거의 첨부 안 하고, pdf에 없는 내용만 소량 작성했는데, 무료 강의 들을 땐 처음이라 그런지 의욕이 너무 앞서서 이미지도 많이 첨부하고 좀 자세히 작성했었거든요. https://www.inflearn.com/notes/49423 분량이 좀 많은데 공유하지 않는 게 나을까요? 위처럼 링크만 올리려고 합니다. 인프런 고객센터에 문의하는 게 나을까요?

  • java
  • spring
  • mvc
  • spring-boot
11 1 댓글 1 좋아요 0 조회수 433

logback mdc 관련 질문

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의 마지막에 Logback MDC에 관한 내용이 나와서 적용을 해보았는데요. 설정 방법이 다양하고, 확인이 필요하여 여쭤봅니다. MDC 구글링해보니 어플리케이션 요청에서 처음 만나는 filter에 설정해주는 것이 좋다하여 LogFilter doFilter 메소드 try-catch문 에 아래와 같이 적용해주었구요. @Override public void doFilter(중략) { ..중략 try { log.info("REQUEST [{}][{}]", uuid, requestURI); MDC.put("requestId", uuid); //추가 chain.doFilter(request, response); MDC.clear();//추가 } catch (Exception e) { throw e; } finally { log.info("RESPONSE [{}][{}]", uuid, requestURI); } } log pattern 설정 로그 패턴 설정이 logback-spring.xml, base.xml, properties 등 가이드가 여럿 있었지만, resources 밑에 logback-spring.xml 생성했습니다. <?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>[%d{yyyy.MM.dd HH:mm:ss.SSS}] - [%-5level] - [%X{requestId}] - [%logger{5}] - %msg%n</pattern> </encoder> </appender> <root level="info"> <appender-ref ref="consoleAppender"/> </root> </configuration> items/add 호출하여 error log 출력 localhost:8080/items/add 호출하여 공백으로 save 시 로그 패턴 설정해준 위치에 uuid 찍히는 것 확인됐습니다. [2023.12.17 00:51:15.335] - [INFO ] - [] - [h.l.w.f.LogFilter] - REQUEST [b67de768-0ef9-49cb-a4f6-65d9d5983b6f][/items/add] [2023.12.17 00:51:15.434] - [INFO ] - [b67de768-0ef9-49cb-a4f6-65d9d5983b6f] - [h.l.w.i.ItemController] - errors=org.springframework.validation.BeanPropertyBindingResult: 3 errors Field error in object 'item' on field 'price': rejected value [null]; codes [NotNull.item.price,NotNull.price,NotNull.java.lang.Integer,NotNull]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [item.price,price]; arguments []; default message [price]]; default message [must not be null] Field error in object 'item' on field 'itemName': rejected value []; codes [NotBlank.item.itemName,NotBlank.itemName,NotBlank.java.lang.String,NotBlank]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [item.itemName,itemName]; arguments []; default message [itemName]]; default message [must not be blank] Field error in object 'item' on field 'quantity': rejected value [null]; codes [NotNull.item.quantity,NotNull.quantity,NotNull.java.lang.Integer,NotNull]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [item.quantity,quantity]; arguments []; default message [quantity]]; default message [must not be null] [2023.12.17 00:51:15.441] - [INFO ] - [] - [h.l.w.f.LogFilter] - RESPONSE [b67de768-0ef9-49cb-a4f6-65d9d5983b6f][/items/add] 질문 위와 같은 설정 중 보완할 부분이 있을까요.? logback-spring.xml, base.xml, application.properties 중 어떤 방식을 주로 실무에서 많이 사용하나요? 환경에 따라 다를까요?

  • spring
  • mvc
조소현 댓글 1 좋아요 0 조회수 442

jakarta.persistence가 import 되지 않습니다.

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 제목 그대로 import가 되지 않습니다. import문을 지우고 나서 자동 임포트를 하려고 @Entity를 직접 타이핑 하여 해봐도 cannot resolve symbol이라는 메시지만 나오는데 어떡해야 할까요?

  • java
  • spring
  • mvc
  • spring-boot
임장호 댓글 1 좋아요 1 조회수 624

인기 태그

인프런 TOP Writers

주간 인기글