묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 코드 에러
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 김영한님 강의 중 스프링 입문 - 스프링 통합 테스트 부분에서 테스트 코드 돌리는 중 계속 tests were not found 란 에러가 발생하더라구요. 라이브러리, gradle 툴에서 gradle 다 설정했는데도 계속 저 에러 떠요... 2일 연속으로 해결 못해서 힘드네요. 도와주세요. 아래는 제 해당 내용의 깃입니다. https://github.com/bukwon/testcode
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
트랜잭션 동기화 매니저와 데이터 소스
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요, 수업 중 궁금한 점이 있어 질문 드립니다. 기본적으로 트랜잭션 동기화 매니저에서는 하나의 DataSource를 기준으로 하나의 Connection을 보관하는 것으로 알고 있습니다.강의의 예제는 동일 데이터소스에 대한 커넥션을 두개의 트랜잭션 매니저가 사용하는걸로 나와 있는 것 같습니다. 제가 궁금한건, 만약 외부 트랜잭션 매니저와 내부 트랜잭션 매니저가 서로 다른 데이터 소스를 참조하고 있다면 트랜잭션 동기화 매니저를 통해 서로 다른 커넥션을 참조하려고 할텐데,그래도 내부 트랜잭션이 외부 트랜잭션에 참여할 수 있나? 에 대해 궁금합니다. 감사합니다 :)
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Querydsl 부트 3.54 설정
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]build.gradle 코드 수정 자료를 보고 수정했는데 오류가 뜹니다. 제공해주신 자료의 버전과도 동일한 것은 아니라서 헷갈리는데 어떻게 해야 하나요?<build.gradle 수정한 코드>plugins { id 'java' id 'org.springframework.boot' version '3.5.4' id 'io.spring.dependency-management' version '1.1.7' } group = 'hello' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' //test 롬복 사용 testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' //Querydsl 추가 implementation 'com.querydsl:querydsl-jpa:5.0.0' annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api" } tasks.named('test') { useJUnitPlatform() } clean { delete file('src/main/generated') } <오류 스크린샷>추가로인텔리제이 실행 중에 가끔 플러그인 같은 것을 추가하라는 제안 문구가 나오는데 제안을 받아들이는 것이 좋나요? 아니면 우선은 그냥 무시하는게 좋나요?리프레시 하면 가끔 네트워크에 접근하는걸 허용하겠는지 노트북 자체에서 주의 문구가 뜨는데, 이건 꼭 허용해야 하나요?? 그리고 왜 뜨나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 코드 에러 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.김영한님 강의인 스프링 입문 중 스프링 통합 테스트 부분에서 intellij 개발 환경으로 테스트 코드 돌리려 하는데 'No tests were found' 라고 계속 뜨더라구요. 이유를 알 수 있을까요??참고로 build.gradle 파일 밑에 tasks.named('test') { useJUnitPlatform() }기재했고 settings - gradle 도구에서 build and run using, run tests using 둘 다 intellij 로 설정했습니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
쿼리 스트링 또는 폼 데이터에서 멀티 값의 대한 스프링에서 처리해주는 방식
1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]쿼리 스트링 또는 폼 데이터에서 멀티 값의 대한 스프링에서 처리해주는 방식에 대해서 궁금한 게 있습니다. [질문 1]멀티 체크(등록 지역)은 th:field를 List<String>으로 했기 때문에 아무것도 선택 하지 않았을 경우 서버로 hidden=on만 오기 떄문에 스프링에서 알아서 field 타입에 알맞은 빈 값 -> [ ]을 반환해주는 것이 맞나요?그렇다면 각 타입마다 스프링에서 빈 값을 매핑해주는 것이 어떻게 정리되어있나요? 사용자 객체를 th:field로 했다면 어떻게 되나요?만약에 실제 로직이 위의 물음과 같다면 아무것도 체크하지 않거나 하나만 체크했을 경우는 같은 이름의 키를 가진 값이 두 개 이상일수없을텐데 이 경우 어떻게 빈 배열이 아래 regions에 할당되는 것인가요?private List<String> regions [질문 2] <input type="checkbox" id="open" th:field="*{open}" th:value="true" class="form-check-input"> <input type="checkbox" th:field="*{regions}" th:value="${region.key}" class="form-check-input">위는 판매 여부, 아래는 등록 지역에서 사용된 코드 중 일부입니다.판매 여부에서 th:value를 생략한 이유는 th:field가 open, 즉 boolean타입으로 정의되어있어서 th:value의 기본 값이 자동으로 true로 되기 때문에 생략이 가능한것이라고 생각했습니다.때문에 등록 지역에서 th:value를 따로 region.key로 해준것은 field가 List<String>타입이니 value의 타입은 자연스럽게 String이 될것이고 boolean과 달리 String은 기본 value가 없어서 따로 구분할 value를 해줘야하기 때문에 각 checkbox마다 value를 region.key로 커스텀 등록 해준 것이 맞나요?[질문 3]등록 지역은 스프링이 값을 리스트로 바꿔줘 해주는데 이것은 th:field타입을 따라가서 그런가요?그리고 등록 지역의 여러 체크박스가 하나의 컬렉션(List<String>) 필드로 묶여서 바인딩되는 건 name 속성이 같기 때문인가요?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
자바 스크립트에서 객체 변하는법 가르켜 준다고 하였는데, 안보여서 물어봅니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 가르쳐 주지 안으셔서 질문을 드립니다.자바 스크립트 코드에서<script>나머지 내용 생략....//객체 var user = [[${user}]];</script>객체 코드 오류를 없애는 법을 나중에 설명해준다고 하였는데요.(5:27-5:38)2번을 들어봤지만. 나오는 이야기가 없어서 요청을 합니다. 가르쳐 주시면 감사하겠습니다. 이렇게 요청을 한 이유는 영한님이 가르쳐 준다고 하였고, 자바 스크립트에서 이렇게 하신 이유가 있다고 생각해서 배워야 겠다는 생각이 들어서요.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
GlobalException 클래스 설정 관련 문의
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요.영한님 강의를 듣고 한 가지 궁금한 점이 있습니다.강의에서 "보다 디테일한 예외가 잡힌다"고 설명해주셨는데,혹시 @Order(0) 설정을 하지 않으면 GlobalExceptionHandler에서만 예외가 처리가 잡히는데요,즉, 예외 처리 클래스를 여러 개로 분리했다면 @Order를 지정하지 않으면 세부 예외 처리 핸들러가 아닌 글로벌 핸들러로만 잡히는 이유가 클래스 분리 때문인지 궁금합니다. @RestControllerAdvice @Order(0) public class BoardExceptionHandler { /** * 게시판을 찾을 수 없을 때 발생하는 예외 처리 */ @ExceptionHandler(BoardNotFoundException.class) public ResponseEntity<ErrorResponse> handleBoardNotFound(BoardNotFoundException ex) { ErrorResponse response = ErrorResponse.builder() .code("BOARD_NOT_FOUND") .message(ex.getMessage()) .status(HttpStatus.NOT_FOUND.value()) .timestamp(LocalDateTime.now()) .details(Collections.singletonList("게시판 ID를 확인해주세요.")) .build(); return ResponseEntity.status(HttpStatus.NOT_FOUND).body(response); } /** * 게시판 수정 / 삭제 권한이 없을 때 발생하는 예외 처리 */ @ExceptionHandler(BoardPermissionDeniedException.class) public ResponseEntity<ErrorResponse> handleBoardPermissionDenied(BoardPermissionDeniedException ex) { ErrorResponse response = ErrorResponse.builder() .code("BOARD_PERMISSION_DENIED") .message(ex.getMessage()) .status(HttpStatus.FORBIDDEN.value()) .timestamp(LocalDateTime.now()) .details(Collections.singletonList("해당 게시글에 대한 권한을 확인해주세요.")) .build(); return ResponseEntity.status(HttpStatus.FORBIDDEN).body(response); } }@RestControllerAdvice public class GlobalExceptionHandler { /** * 글로벌 예외 처리 */ @ExceptionHandler(Exception.class) public ResponseEntity<ErrorResponse> handleGenericException(Exception ex) { ErrorResponse response = ErrorResponse.builder() .code("INTERNAL_SERVER_ERROR") .message("서버에서 오류가 발생했습니다.") .status(HttpStatus.INTERNAL_SERVER_ERROR.value()) .timestamp(LocalDateTime.now()) .details(Collections.singletonList(ex.getClass().getName())) .build(); return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response); } }
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
th:block th:each의다른 예가 없는지 궁금합니다.(지금의 예로는 사용하는 이유를 모르겠습니다.)
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. th:block이라는 태그를 통해 하는 것을 보았습니다. 근데 들으면서 이렇게 하면 th:block 없어도 될 것 같다는 생각이 들어서, 코드를 고쳐서 해보았습니다.이렇게 코드를 넣어봤고, 결과는 사진과 같이 똑같이 나왔습니다.(하나 추가 한게 무슨 이유인지 모르겠지만, 사용자 나이 밑에 br태그없이 span을 쓰면 붙여서 나와서 br태그를 씀) 그래서 솔직히 th:block 태그 보다는 div에 th를 넣고 아래에 방법 처 할것 같은데. th:block의 다른 예가 없는지 궁금합니다.답변 부탁 드립니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
400번대 에러 응답이 모두 404.html로 됩니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]1. resources/templates/error/4xx.html 만 존재할 때localhost:8080/error-404 -> 4xx.html 응답localhost:8080/error-400 -> 4xx.html 응답resources/templates/error/4xx.html, resources/templates/error/404.html 이 모두 존재할 때localhost:8080/error-404 -> 404.html 응답localhost:8080/error-400 -> 404.html 응답 -> 여기서 4xx.html이 응답해야하는거 아닌가요? 파일 경로에는 문제가 없는데 페이지 소스를 봐도 404.html이 맞습니다.
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
섹션2 -타임리프 기능 : 14.반복(html: border 부분 수정 해야 할까요? 아니면 계속 써야 할까요?)
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요.궁금증이 생겨서 질문을 드립니다.반복 강의에서 each.html을 복사하고 붙여놓기를 하였는데요.<table border="1"> 이 부분에서 border부분이 흰색 취소선 칠해져 있다는것 을 발견하였습니다. 그래도 뭐 일단 돌려보기는 하였는데 잘나오는데. 뭔가 찜찜해서.. 그 보더에 마우스를 대보니 사진 처럼 이런 글이 나와서 구글에 이 나오는 글을 복사하고 해보았더니이렇게 사진처럼(80%로 측소) 나왔는데 사진에 나오는 글처럼 <table style="border: 2px solid black;"> 이렇게 바꾸는게 나을까요?아니면 그냥 계속 <table border="1"> 이런 방식으로 써야 할까요?w3schools도 살펴 봤지만 전체 적용 하는 것들만 있어서 모르겠네요.답변 부탁 드립니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
html 변경하는 부분 적용 문제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]html을 templates로 옮겨 타임리프를 이용한 경로 수정에서 app을 다시 실행하고 웹을 새로고침해도 바로 적용되지 않고 Gradle를 refresh해야만 적용이 되는데 혹시 프로젝트 생성 초기 intelliJ 설정할 때 Gradle 프로젝트에서 빌드 및 실행은 IntelliJIDEA로 바꾸는 것에서 영향이 간건지 아니라면 gradle refresh 자동화를 할 수 있는지 궁금합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
한글 깨짐
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.콘솔창이 깨지는데 관리자 옵션으로 beta체크도 해보고 gradle.properties도 해보고 build.gradle에 넣어보라는거 전부 넣어보고 코드 명시로도 해봤는데 안됩니다. 어떻게 해야 할까요
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
GetMapping -> newItem 에서 @modelAttribute 가 있는 이유가 있나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.@GetMapping("/items/new") public String newItem(@ModelAttribute ItemForm form){ return "item-form"; }이부분에서 @ModelAttribute 로 itemForm 을 받아오는데, 왜 ModelAttribute 가 있는지 모르겠습니다. html 에 보면 item-form 도 ModelAttribute 에서 받아온 값을 안쓰는 것 같은데 따로 사용하는 이유가 있을까요
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
메서드 추출에 대해서 궁금한게 있습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================FrontControllerServletV5 코드에서 메서드 추출을 많이 하셨는데 실제 프로젝트를 진행할 때도 이런 형식으로 많이 진행을 하나요? 아직 공부만 하고 실제 프로젝트를 진행해보지 않아서 잘 모르겠습니다.. getHandler와 같은 메서드는 짧은 코드인데도 추출을 해서 신기한 마음에 여쭤봅니다. ..그리고 어떤 기준으로 메서드를 추출하는 것이 좋은건지도 궁금합니다!!!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
Item객체안에 UploadFile과 MultipartFile이 공존할수는없나요??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. Item객체를 처음에 만들때 강의에 있는 4가지 파라미터 이외에 ItemForm에 있는 MultipartFile과 List<MultipartFile>을 Item클래스 안에서 같이 사용할 수는 없는걸까요?? html의 form에서 받아오는 item 과 실제 repository에 저장되거나 가져오는 역할을 하는 item을 구분하기 위해 ItemForm 과 Item이 나눠졋다고 생각하면 맞을까요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
IntelliJ 초기 설치 파일 설치 실패
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]IntelliJ에서 hello-spring 프로젝트 열고 혼자 알아서 설치하더니 갑자기 이렇게 오류 뜨면서 아무것도 안되길래,,, 챗지피티한테 물어봤어용 그랬더니 build.gradle 파일에서 java { toolchain { languageVersion = JavaLanguageVersion.of(17) }}이 부분을 주석 처리 하라길래 주석 처리하고 재시작했더니 오류가 안뜨네욤 그냥 주석처리 해도 괜찮은 부분인가요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
HTML 문법
HTML 문법을 잘 모르는데 타임리프를 잘 사용하려면 HTML 문법을 알아야 한다고 생각이 들어서 질문드립니다. HTML 문법을 따로 공부하고 듣는게 좋을까요 ?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
질문있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]HTML 코드나 다른 코드에서도 Item 클래스 내부에 있는 regions 에 값을 따로 넣어주는게 없는데 체크박스 체크를 한 상태로 전송하게 되면 list에 값이 들어가는데 이게 어떤 로직을 통해 값이 채워지는지 궁금합니다
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
테스트 코드 save 함수의 반환값
itemRepository 클래스에서 save() 함수 반환 타입을 item 으로 만들었는데 테스트 코드에서 itemRepository.save(item1)itemRepository.save(item2)에서 에러가 왜 안나오는 건가요?Item saveItem1 = itemRepository.save(item1);이라고 해야 되는거 아닌가요 ? GPT한테 물어봐도save() 메서드가 원본 인스턴스를 그대로 변형 후 반환하도록 구현돼 있기 때문에, 반환값을 무시해도 되는 것입니다이라고 하는데 인스턴스를 반환하도록 구현했으면 반환값이 있어야 오류가 안 생긴다고 생각하는데 왜 무시해도 된다는지 잘 모르겠습니다..
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
상품 등록 처리, 포스트 맵핑,addItem 메서드에서 리턴값(view 질문)
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 세션8 웹페이지 만들기를 영한님 강의를 보면서 혼자서 output까지 할수 있는상황을 만들려고 코드를 보고,따라 치고 그러는 와중 이었습니다.그러는 와중 상품 등록 처리에서 완료하고, 상품 상세 폼으로 가지 말고, 그냥 전체 상품을 보여주자 라는 생각이 들어서 코드의 리턴값(뷰값을) 을 "basic/item" 에서 "basic/items"로 변환을 하였습니다. (사진 참조)그리고 인터넷으로 상품 등록을 시키고 결과 화면이.이렇게 나오는것이었습니다.그래서 결과가 잘나오는지 확인하기 위해서 localhost8080:/basic/items을 인터넷으로 쳐보니 등록된 상품이 나오는 것을 확인할 수 있었습니다.그래서 어떻게 해야 결과가 나올까 생각하다가 리다이엑트가 생각나서 리다이엑트를 적용하고 등록하니 위에 화면처럼 다시 갈수 있는것을 확인할 수 있었습니다. 그래서 질문이 왜 리다이렉트를 쓰면 결과가 정상적으로 나오고 그냥 리턴값을 basic/items으로 하면 화면은 정상적으로 아이템즈 화면인데, url값은 basic/items/add 가 추가된것인지 궁금합니다. 답변부탁드립니다.