묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
ResponseStatusException 관련 질문 드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 강의 중에 강사님께서 개발자가 직접 변경할 수 없는 예외에는 @ResponseStatus를 적용할 수 없다고 하셨는데, 이러한 예외가 예를 들어 무엇이 있나요? BadRequestException처럼 RuntimeException과 같은 예외를 상속받아 처리할 수 없는 경우를 말씀 하시는 건지 궁금합니다 ! 또한, ResponseStatusException은 어떤 경우에 사용되는지 구체적으로 궁금합니다. 동적으로 처리를 하기 위해서만 쓰이는 것인가요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 가입 Whitelabel Error 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. 진행 중 해결되지 않는 오류가 있어 질문 드립니다.기본 페이지 HelloSpring 까지는 정상적으로 뜨는데 이후 회원 가입 버튼을 누르면 Whitelabel 오류가 발생합니다.비슷한 질문들이 있어서 확인하여 오타와 템플릿 구조까지 확인하였는데 원인을 모르겠습니다.-MemberController-MemberForm-createMemberForm.html-home.html-에러 코드아래는 프로젝트 파일 구글 드라이브 링크입니다.https://drive.google.com/drive/folders/11r1sRmpTQR_So_Yu06AFgux0aCphYlUm?usp=sharing 감사합니다
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
thymeleaf 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]th:href="@{|/basic/items/${item.id}|}" th:href="@{/basic/items/${item.id}}"1번 구문과 2번구문의 차이는 ||로 감싸주냐 마냐의 차이인데 같은 결과 , 같은 동작을 하네요이 경우에는 ||로 감싸줄 필요가없는건가요 아니면 인텔리제이에서 알아서 감지해서 ||로 자동으로 감싸준 결과로 실행을 해주는걸까요 ?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
h2.bat 입력시 실행이 되지 않습니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]cmd에서 h2.bat 입력시 해당 화면만 뜨고 실행되지 않습니다.자바 11을 쓰고 있으며 환경변수도 확인했고h2 재설치, 자바 재설치도 해봤습니다파일탐색기에서 h2.bat 파일을 실행해도 결과는 똑같습니다뭐가 문제일까요
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
윈도우 cmd창에서 java -jar 명령어 실행 안되는 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니오3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]자바 환경변수 - > 설정 완료재부팅 -> 완료두가지 전부 해봤는데 아무 반응이 없습니다.bulid -> libs 디렉토리에서 java -jar ~~ 명령어 실행이 안됩니다. 확인하실 때 필요한 사진이나 파일 있으면 알려주시면 감사하겠습니다 // 사진 첨부2-1.2-2.
-
미해결윤재성의 만들면서 배우는 Spring MVC 5
자바 상단메뉴 셋팅 다하고 실행시키니 에러가 납니다.
에러가 나는데 알수가 없어요..ㅜ.ㅠBean객체 생성이 안된다고 줄줄이 나는데 왜 그런건지..아래와 같이 나옵니다.org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'servletAppContext': Unsatisfied dependency expressed through field 'topMenuService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'topMenuService' defined in file [C:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\MiniProjectJava\WEB-INF\classes\kr\co\softcampus\service\TopMenuService.class]: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [kr.co.softcampus.service.TopMenuService] from ClassLoader [ParallelWebappClassLoadercontext: MiniProjectJavadelegate: false
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
경로문제 제가이해한게 맞는지 추가질문입니다.
https://www.inflearn.com/questions/1031594/%EC%97%84%EC%B2%AD-%EA%B8%B0%EC%B4%88%EC%9D%B8%EB%8D%B0-%EA%B8%B0%EC%96%B5%EC%9D%B4%EC%95%88%EB%82%98%EB%84%A4%EC%9A%94-%E3%85%A0%E3%85%A0-%EA%B2%BD%EB%A1%9C%EB%AC%B8%EC%A0%9C에 대해 제가 이해한게 맞는지 질문드립니다.만일 @RequestMapping("/basic")이있고 @GetMapping("text-basic") @GetMapping("/text-basic") 두개가있으면 위는 /basic/text-basic에 매핑되는 거고아래는 /text-basic에 매핑되는게 맞나요??
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
서블릿 mvc 회원 조회 에러
서블릿, JSP는 다 회원 조회가 되던데서블릿 mvc는 오타도 없는데 계속 찾아보고 해도화이트 라벨 에러 페이지만 뜨길래 예외 메시지를 보니According to TLD or attribute directive in tag file, attribute [items] does not accept any expressions가 있길래 검색해보니members.jsp에서<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>를<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>로 변경해주니까 정상적으로 페이지에 뜨더라구요..버전 차이때문이라는데 이것도 pdf에 추가되어야 되지 않을까 해서 올려봅니다.
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
BooleanExpression where 절
BooleanExpression를 querysdl where절에서 사용할 때콤마(,)를 and로 인식한다고 하셨는데 or는 어떻게 작성해야 하나요? (|)를 사용해야 할까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
h2 초기 연결시 오류..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Database "C:/Users/star5/test" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-224] 90149/90149 (도움말)org.h2.jdbc.JdbcSQLNonTransientConnectionException: Database "C:/Users/star5/test" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-224] 윈도우 환경에서 h2설치후 연결하면 Database "C:/Users/star5/test" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-224] 90149/90149 (도움말)org.h2.jdbc.JdbcSQLNonTransientConnectionException: Database "C:/Users/star5/test" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-224]이런에러가 뜨는데 어떤게 문제일까요?? 설정값은 강사님과 똑같이 하였습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의에 나온 코드에 대해서
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]수업 잘 듣는 중입니다. 다름이 아니라, 강의에 나온 jdbc 코드를 얼마나 알아야 하는지 궁금합니다. 저는 Mysql로 연동홰서 사용중인데, 순수 JDBC 강의에서 나온 데이터 CRUD 코드를 얼마나 알아야할까요? 대표적으로 알아야하는 코드가 있다면 알려주시면 감사하겠습니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
SessionManager 를 Bean 이 아니라 static 클래스로 해도 상관없나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 항상 강의 잘 듣고있습니다!강의를 보다보니 SessionManager 클래스를 Bean 으로 등록하지 않고 static class 로 사용해도 될 것 같다는 생각이 들었는데, 어떤 차이점이 있는지는 생각을 해봐도 잘 모르겠네요..SessionManager 를 Bean 으로 등록하신 이유가 뭘까요??
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
서블릿에 대한 질문이 있습니다
서블릿은 웹 서버를 직접 구현할 때 필요한 tcp/ip 연결이나 http 메세지 파싱, html 생성 등 비즈니스 로직 외의 것들을 대신 해줘서 개발자는 비즈니스 로직에만 집중하여 개발할 수 있는 장점이 있다고 하셨고, 자바 웹 기술의 역사를 설명하실 때 서블릿의 단점이 html 생성이 어려운 것이라고 하셨습니다.여기서 html 생성이 어렵다는 것은 비즈니스 로직에서 응답으로 보낸 HttpServletResponse를 자동으로 html화 하는 과정이 잘 이루어지지 않는다는 의미인가요? 어떤식으로 어렵다는 건지가 잘 이해가 안가서 질문드립니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
API validation
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의 잘 듣고 있습니다.예외처리 API 강의를 듣다보니 궁금한 점이 생겨 질문 드립니다. api를 사용하는 경우 validation을 어떻게 하는지 궁금합니다. 강의에서는 model과 view를 사용하여 bindingresult에 hasError를 사용하여 검증 성공 실패를 판단하여 view에서 타임리프를 활용해 에러 메세지등을 표시해주었는데요. api의 경우 찾아본 결과 bindinresult를 사용하지 않는 것을 확인 하였습니다. 여기서 그렇다면 api의 경우는 valid가 실패했을 시 어떤 과정이 일어나는지 궁금합니다. 검증이 실패한 것을 어떻게 확인하며 또 이 상황을 어떻게 처리하는지 궁금합니다. 또한 검증과 예외의 정확한 차이를 잘 모르겠습니다. 검증이 실패했을 경우도 exception이 터진 상황일까요?
-
해결됨스프링 DB 1편 - 데이터 접근 핵심 원리
왜 commit할 때 status를 넣어줘야 하나요.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]status는 트랜잭션 설정, 상태에 관한 정보인데, 이미 transactionManager는 생성할 때 dataSource를 넣어줬고, 또 트랜잭션 동기화 매니저가 있기 때문에 어떤 커넥션을 닫아야 할 지 알고 있을 것 같습니다.그럼 commit()할 때난 rollback()할 때 그냥 닫거나 롤백하면 될텐데, 왜 status가 필요한가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@Transactional 이 자동완성에도 안뜨는데 어떻게 해결해야할 지 모르겠어요
spring boot 3, java 17 버전사용하고 있습니다
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
Controller에서 BindingResult값을 유지한채로 @ExceptionHandler를 활용한 사용자 정의 예외를 처리하는법이 궁금합니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Spring data jpa 를 활용하여 지금까지 배운 내용들을 총 합한 프로젝트를 만들어 보고 있는데 한가지 궁금증이 생겨 질문 드립니다. @ExceptionHandler을 사용하여 사용자정의 예외를 만들어 아이디 중복 예외를 처리하고싶은데 예외를 처리하는 과정에서 아이디가 중복일시 Controller의 BindingResult를 활용하여 아이디가 중복이면 View에 아이디가 중복이라는 정보를 표현하고싶어서 프로젝트를 코딩중에 Controller 부분에서 service단에서 throw한 사용자 정의 예외를 처리하려 하는데 try catch로 예외를 처리하는 순간 @ExceptionHandler를 사용하지 못하고 그렇다고 다시 예외를 던지자니 @ExceptionHandler에서 View에 관련된 Binding result의 값이나 ModelAttribute의 값을 보존해지 못하여 처리가 불가합니다. 이럴때 제일 좋은 방법이 무엇인지 알고싶습니다. Controller 코드입니다.@Controller @RequiredArgsConstructor @RequestMapping("/users") public class UserController { private final LoginService loginService; @GetMapping("/add") public String addForm(@ModelAttribute("userDto") UserDto userDto) { return "user/addUserForm"; } @PostMapping("/add") public String save(@Valid @ModelAttribute UserDto userDto, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return "user/addUserForm"; } // if (loginService.signUpIdExists(userDto.getLoginId()) == false){ // bindingResult.reject("loginIdExists", "동일한 아이디가 존재합니다."); // return "user/addUserForm"; // } try { loginService.signUp(userDto); return "redirect:/"; } catch (UserIdExistsException e) { bindingResult.reject("loginIdExists", "동일한 아이디가 존재합니다."); return "user/addUserForm"; } } } Service 코드입니다.@Slf4j @Service @RequiredArgsConstructor public class LoginService { private final UserRepository userRepository; public User login(String loginId, String password) { return userRepository.findByLoginId(loginId).filter(m -> m.getPassword().equals(password)) .orElse(null); } public void signUp(UserDto userDto) { // if(signUpIdExists(userDto.getLoginId()) == false){ // throw new UserIdExistsException("이미 존재하는 아이디입니다."); // } try { Address address = new Address(userDto.getAddressDto().getZipcode(), userDto.getAddressDto().getStreetAdr(), userDto.getAddressDto().getDetailAdr()); User regisUser = new User(userDto.getLoginId(), userDto.getLoginName(), userDto.getPassword(), address); userRepository.save(regisUser); } catch (DataIntegrityViolationException e) { throw new UserIdExistsException("이미 존재하는 아이디입니다."); } } private boolean signUpIdExists(String loginId) { return userRepository.findByLoginId(loginId).isEmpty(); } } @ControllerAdvice 코드입니다.@Slf4j @ControllerAdvice public class ExceptionAdvice { @ExceptionHandler(UserIdExistsException.class) public ModelAndView userIdExHandler(UserIdExistsException e) { log.error("[userIdExistsException] ex", e); return new ModelAndView(); } } UserIdExistsException 코드입니다.public class UserIdExistsException extends RuntimeException{ public UserIdExistsException() { } public UserIdExistsException(String message) { super(message); } } 위 코드는 동작은 확인했지만 사실상 try catch 로 예외를 잡아버려서 @ExceptionHandler가 동작하지 않는 상태입니다. Entity의 아이디값에 unique 옵션을 걸어두어 아이디 중복이 일어날시 DataIntegrityViolationException에러가 일어납니다.추가로 궁금한것예외가 사실상 repository에서 터지는데 인터페이스에는 try catch가 권장되지 않는것으로 알고 통상 Service에서 에러를 처리하는것으로 알아 이렇게 코딩하였는데 이게 올바른건지 모르겠습니다. 예외를 발생시키는 지점을 repository로 옮기는것이 맞나요? Spring data jpa 는 알아서 Spring에 종속된 에러를 출력하는것으로 알고있는데 DataIntegrityViolationException에 속한 예외 두가지를 다른방법으로 처리하고싶으면 ErrorCode를 분석해 If문 으로 사용자 정의 예외를 만들어서 처리해야하나요? bindingresult를 사용하기 위해 어쩔수없이 예외를 throw하였더니 controller까지 예외가 전파되서 코드가 지저분해졌습니다. 이렇게 View에 특정한 값을 보내주어야할때 Controller에 예외를 throw 하지 않고 해결할수있는 좋은 방법이 있나요? 질문이 길고 지저분해서 죄송합니다. 나름 열심히 알아보고 코딩해보아도 잘 모르겠어서 질문남깁니다. 감사합니다.
-
해결됨스프링 부트 웹 개발 입문 - 따라하며 배우기
@Data 인식 문제
계속하여 아래와 같이 getNo()을 인식하지 못하는 오류가 발생하고 있습니다.Method getNo() cannot be found on type com.example.demo.v2_VO.VO.Order_list 그래서 한참을 해맨 후에 vo의 @Data가 Getter의 기능을 하지 못하고 있는 것을 알게되었습니다.일일이 getter를 만들어주니까 돌아가더라구요... 그래서 lombok의 문제로 생각하고 롬복을 설치하고 외부 라이브러리를 추가해주는 식으로 해결하려고 하였습니다. 이렇게 조치를 해도 계속 오류가 나더라구요.. 혹시 김부장님께서는 이런 경우 다른 방법으로 문제를 해결하신 적 있으신가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradle이 실행이 안됩니다
윈도우 환경에서 gardle을 빌드 시키려고 하면org.gradle.api.UncheckedIOException: Could not load properties for module 'gradle-cli' 이 오류가 뜹니다 인텔리제이 재설치,스프링 재설치,vscode로 실행등을 다 해봐도계속 저 오류가 뜹니다인텔리제이 재설치 이후에는 Unable to load class 'org.slf4j.LoggerFactory'.This is an unexpected error. Please file a bug containing the idea.log file.가 뜹니다
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
엄청 기초인데 기억이안나네요 ㅠㅠ 경로문제
@RequestMapping("/basic") @RequestMapping("basic") @GetMapping("text-basic") @GetMapping("/text-basic")위 두개의 차이점을 잘 모르겠습니다 ㅠㅠㅠ..... 두번째는 틀린건가요?.. 어떨때 /를 붙여야하는지 헷갈립니다.