묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
세션1 테이블 조회결과 그림은 Redo 로그에 속하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 항상 좋은 강의 감사드립니다! 강의에 [섹션4] 에서 나오는 강의 자료에서 그림부분에 [세션1 테이블 조회결과]라는 그림이 있는 부분이 있는데 이 부분이Redo 로그에 속하나요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
트랜잭션이 필요하지 않은 경우 DB 대신 파일 시스템을 사용하는 것이 더 효율적인가?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 매번 좋은 강의 감사드립니다.강의에서 db 를 사용하는 가장 대표적인 이유가 트랜잭션 사용이라 언급을 해주셨는데 그럼 트랜잭션이 필요하지 않는 상황이라면 다른 구조를 사용하는게 더 효과적일까요? 만약 파일로 저장을 하게 된다면 더 빠른가요? db 는 트랜잭션을 보장하기 때문에 추가적인 작업이 더 들어가기 때문에 insert update 가 파일에 비해 무거울까요?
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
자동리소스등록?
src/main/resources/application.properties```groovy spring.profiles.active=local spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.username=sa ```이렇게 설정만 하면 스프링 부트가 해당 설정을 사용해서 커넥션 풀과 DataSource, 트랜잭션 매니저를 스프링 빈으로 자동 등록한다.(앞에서 학습한 스프링 부트의 자동 리소스 등록 내용을 떠올려보자.) 이 부분에서 자동 리로스 등록내용이 어디 강의에 있나요..?
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
REQUIRES_NEW 내부 커밋, 외부 롤백 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Requires_new를 통해 내부 트랜잭션이 시작되고 내부 트랜잭션은 커밋, 외부 트랜잭션은 롤백이라고 했을 때 그대로 동작한다고 이해하면 될까요?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
helloMesage 테스트 관련 안녕이 아닌 hello가 나오는 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]질문은 아니지만 저와 같은 오류를 가진 분을 위해 남깁니다.기본적으로 MessageSource는 locale이 null일때 Locale.getDefault()의 결과 값을 이용합니다.이 값은 JVM의 기본 locale을 가져오므로, 만약 이 값이 en_US 등으로 설정이 되어있다면, 안녕이 아닌 hello가 출력되어 test가 실패하게 됩니다.저와 같은 오류를 겪는 분이 있다면 시스템의 기본값으로 적용되는구나 이해하고, 그 Test에 한해서만 Locale.setDefault(Locale.KOREA) 로 설정하시면 테스트는 통과할겁니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
노션자료
노션같은것은 어디서 확인하나요? 코드같은거 복사해서 빠르게 넘어가고 싶은데 자료를 찾을 수 없네요
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
@PostConstruct 관련질문
import javax.annotation.PostConstruct; @PostConstruct public void init(){ itemRepository.save(new Item("testA", 10000, 10)); itemRepository.save(new Item("testB", 20000, 20)); }PostConstruct에 대한 위에 쓴 경로로 import가 안됩니다.자동으로 import진행하면 아래와 같이 나옵니다. 이렇게 진행했을때 items.html화면에서는 상품ID만 바인딩되고,itemName, price 등 나머지 데이터는 null로 화면에 안 나타납니다.import jakarta.annotation.PostConstruct;
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Automatic Build 설정 방법 질문
위 사진과 같이 Build 가 자동으로 되도록 세팅을 변경하고 인텔리제이를 리부팅 해도 설정 적용이 잘 되지 않습니다.코드를 변경 후 Shift + Command + F9 를 눌러 수동으로 Build 하지 않고 그냥 실행할 경우 변경사항이 제대로 적용되지 않은 채 코드가 실행이 됩니다. 해결 방법이 있을까요?수동으로 Build 하면 잘 실행되는 것으로 보아 코드 문제는 아닌 것 같습니다...ㅠ
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.<form action="item.html" th:action th:object="${item}" method="post"> 이문법에서, th:action의 값이없는데 타임리프로 하면 경로가 어디로가는건가요?
-
미해결ASP.NET Core MVC +ASP.NET Core +REST API +.NET 8.0
8장 Controller 질문
HomeController에 2개의 Test 액션이 각각 다른 역할을 한다는 것은 알겠는데, 이것도 메서드 오버로딩이라고 생각하면 될까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
빌드 중단 시 오류 발생
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/)[질문 내용]build를 Gradle로 할 시 아래 사진과 같은 오류가 납니다 intellij로 하면 아래와 같은 오류가 안 나구요혹시 해결 방안이 있을까요?오류 원인은 무엇일까요? 참고로 오류 발생은 빌드 중단 시 납니다
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
서블릿 localhost8080
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 안녕하세요, 강의 수강 중 질문이 생겨 여쭤보게 되었습니다. 강의를 들으며 라이브 코딩 중 제 노트북에서 localhost 8080/hello를 입력 시 연결이 안되더라고요.. 이것 저것 해결하려 노력을 하였는데도 여전히 해결하지 못하였는데, 원인이 혹시 무엇인지 알 수 있을까요 ? 유료 버전 사용 중이고, openjdk 24, war을 선택하였습니다.좋은 강의 제공해주셔서 항상 감사드립니다!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
서블릿과 서블릿컨테이너 그리고 WAS
[질문 내용]HttpServletRequest 역할HTTP 요청 메시지를 개발자가 직접 파싱해서 사용해도 되지만, 매우 불편할 것이다. 서블릿은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱한다. 그리고 그 결과를 HttpServletRequest 객체에 담아서 제공한다.pdf보면 위 내용처럼 HTTP 요청 메시지를 파싱하고 그 결과를 Request 객체를 만드는게 서블릿이라고 적혀있는데WAS와 서블릿을 구분해서 공부를 하던 도중 개념이 헷갈려서 https://jakarta.ee/specifications/servlet/5.0/apidocs/jakarta/servlet/http/httpservletrequest공식문서를 찾아봤는데 The servlet container creates an HttpServletRequest object and passes it as an argument to the servlet's service methods (doGet, doPost, etc).요청 객체와 파싱은 서블릿 컨테이너가 한다고 나와있습니다. 찾아보니까 서블릿과 서블릿 컨테이너는 같은 의미는 아닌거 같고 그럼 여기서 말하는 서블릿 컨테이너는 WAS 같은건가요? 아니면 서블릿 = 서블릿 컨테이너 라고 개념을 익혀도 괜찮은건가요?
-
해결됨스프링 DB 2편 - 데이터 접근 활용 기술
트랜잭션 전파 활용 - UnexpectRollbackException 관련 질문
트랜잭션 전파 활용까지 강의를 수강하고나니이전 질문해당 질문에서 질문했던 1번 경우에 대해서는 제 생각이 맞는 것 같다는 결론이 나왔습니다.그리고 활용 강의까지 들으면서 느낀건데애초에 UnexpectRollbackException 예외는실제 정상 운영중인 서비스에서는 발생하면 안되는 예외고테스트 과정같은 개발 환경에서 개발자가 캐치해서 이 예외가 발생하지 않게끔 코드를 수정하기위한일종의 알림같은 예외라고 생각이 되었습니다.그래서 굳이 exceptionhandler로 UnexpectRollbackException 예외를 처리하는것은 뭔가 옳지 않은 방법이지 않을까 하는 생각이 들었습니다.제 생각이 맞나요?
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
트랜잭션 전파 기본 - UnexpectRollbackException 관련 질문
만약에 @Transactional 어노테이션을 사용해서 트랜잭션을 만들었을때내부 트랜잭션에서 롤백이 발생했다는건 일반적인 상황에서는 database에서 뭔가 예외가 발생해서 그런거라고 생각되는데,그러면 예외처리기에서 알아서 runtimeException을 상속받은 예외로 바뀔것이고외부 트랜잭션에서도 롤백이 발생한다는건이 경우는 database에서 발생했던 예외가 외부 트랜잭션까지 넘어와서 자연스럽게 롤백된거라고 생각합니다.그래서 UnexpectRollbackException이 발생하지 않는다고 생각됩니다. 제 생각이 맞나요?그러면 UnexpectRollbackException 이 발생할 수 있는 경우는 뭐가 있나요? 강의에서 처럼 의도적으로 문제를 일으키는게 아니면 생각나는 경우가 딱히 없습니다.하지만 제가 생각하지 못하는 것이지 예외가 발생한다는 경우가 있긴 있다는것이겠죠? 그렇다면 트랜잭션을 이용하는 순간부터는 그냥@ControllerAdvice 에서@ExceptionHandler로 UnexpectRollbackException을 캐치해줘서 처리하는 코드를 거의 무조건 작성해야할까요??
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
프로젝트 파일 오타 발견
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]basic/operation.html에서<!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <ul> <li>산술 연산 <ul> <li>10 + 2 = <span th:text="10 + 2"></span></li> <li>10 % 2 == 0 = <span th:text="10 % 2 == 0"></span></li> </ul> </li> <li>비교 연산 <ul> <li>1 > 10 = <span th:text="1 > 10"></span></li> <li>1 gt 10 = <span th:text="1 gt 10"></span></li> <li>1 >= 10 = <span th:text="1 >= 10"></span></li> <li>1 ge 10 = <span th:text="1 ge 10"></span></li> <li>1 == 1 = <span th:text="1 == 10"></span></li> <li>1 != 1 = <span th:text="1 != 10"></span></li> </ul> </li> <li>조건식 <ul> <li>(10 % 2 == 0)? '짝수':'홀수' = <span th:text="(10 % 2 == 0)? '짝수':'홀수'"></span></li> </ul> </li> <li>Elvis 연산자 <ul> <li>${data}?: '데이터가 없습니다.' = <span th:text="${data}?: '데이터가 없습니다.'"></span></li> <li>${nullData}?: '데이터가 없습니다.' = <span th:text="${nullData}?: '데이터가 없습니다.'"></span></li> </ul> </li> <li>No-Operation <ul> <li>${data}?: _ = <span th:text="${data}?: _">데이터가 없습니다.</span></li> <li>${nullData}?: _ = <span th:text="${nullData}?: _">데이터가 없습니다.</span></li> </ul> </li> </ul> </body> </html> <li>1 == 1 = <span th:text="1 == 10"></span></li> <li>1 != 1 = <span th:text="1 != 10"></span></li>이 부분이 잘못 나와있습니다.<li>1 == 10 = <span th:text="1 == 10"></span></li><li>1 != 10 = <span th:text="1 != 10"></span></li>1을 10으로 변경을 해야 합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
RedirectAttributes
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]addItemV6 메서드에서 RedirectAttributes를 사용해서 status를 true로 만들고 등록 폼에서 저장하면 상세 화면에 "저장 완료!" 문구가 화면에 나오는 것처럼수정 폼에서 수정을 하면 "수정 완료!" 문구가 화면에 나오게 하고 싶은데 status를 조건으로 하면 조건의 허용 갯수가 true로 한정적이라 만들 수 없었습니다.이런 경우 조건을 어떻게 설정해서 이 조건일 때는 저장 완료 문구 이 조건일 때는 수정 완료 문구로 html에 적용시킬 수 있을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
올려주신 코드 오류가 있습니다(RequestHeaderController)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. RequestHeaderController 클래스에 headers메소드의 파라미터가 아래와같이 HttpServletRequest, HttpServletResponse,... 을 받아야하나 request, response를 모두 HttpServletRequest로 받고 있습니다.정상 코드HttpServletRequest request, HttpServletResponse response 예제 파일 코드HttpServletRequest request, HttpServletRequest response
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
강의 2:29 ItemMapper itemMapper
강의 2분 29초 부분public class MyBatisConfig {private final ItemMapper itemMapper;,,,} 강의에서는 에러가 생기지 않지만, 이 부분에서 itemMapper에 컴파일 에러가 뜹니다.(Could not autowire. No beans of 'ItemMapper' type found.) ItemMapper가 스프링 컨테이너에 스프링 빈으로 등록되지 않아서 생기는 에러가 맞나요?등록되어있지 않기 때문에 ItemMapper를 주입할 수 없어 컴파일 오류가 나는건지 궁금합니다. 그럼에도 불구하고 메모리db로 하는 테스트와, 서버를 띄워서 하는 테스트 모두 성공하는 이유가 궁금합니다. MyBatisConfig클래스 위에 @MapperScan(basePackages = "hello.itemservice.repository.mybatis")를 하니 컴파일 에러가 사라지긴 합니다. @MapperScan을 통해 ItemMapper를 Bean으로 수동으로 등록하니 컴파일 오류가 생기지 않는건가요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
화면 한글깨짐 문제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.인텔리 제이에서 한글 깨짐 문제 정상적으로 한글 값이 저장되는거 같습니다. 하지만 화면에 표시할 때 오류가 발생합니다. 인텔리 제이 인코딩 설정 은 다음과 같습니다