묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
No message found under code 'totalPriceMin' for locale 'ko_KR'. 오류
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]'오브젝트 오류' 강의 3:53 경에 '필드가 아닌 복합 룰 검증' 관련 코드들을 복붙한 후 실행한 결과 아래 사진과 같이 Caused by: org.springframework.context.NoSuchMessageException: No message found under code 'totalPriceMin' for locale 'ko_KR'.라는 오류가 출력됩니다.몇시간동안 관련 내용들을 구글링해도 해결되지 않아 문의드립니다. 답변 부탁드립니다.아래 링크는 압축파일입니다.https://drive.google.com/file/d/1BvnXi4zMz54nFj2op-MlvGw8czjP7DAB/view?usp=sharing
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
http://www.thymeleaf.org 가 실행이 안되는 것 같아요
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]gradle에도 있고build.gradle에도 있는데hello.html을 실행하면 저렇게 에러 페이지가 뜹니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
회원가입 PRG
@GetMapping("/join") public String addMemberForm(@ModelAttribute("form") MemberSaveForm form) { return "members/join"; } @PostMapping("/join") public String join(@Valid @ModelAttribute("form") MemberSaveForm form, BindingResult bindingResult, RedirectAttributes redirectAttributes) { //복합 룰 검증 validateObjectError(form, bindingResult); if (bindingResult.hasErrors()) { return "members/join"; } //회원가입 Long memberId = memberService.join(form); redirectAttributes.addFlashAttribute("memberId", memberId); return "redirect:/members/join/complete"; } @GetMapping("/join/complete") public String joinComplete(@ModelAttribute(name = "memberId") Long memberId, Model model) { NewMemberInfo newMemberInfo = memberService.getNewMemberInfo(memberId); model.addAttribute("member", newMemberInfo); return "members/join_complete"; }안녕하세요. 회원가입 완료페이지(/join/complete)에서 뒤로가기로 다시 회원가입하는 페이지(/join)로 이동했을 때 필드의 값(MemberSaveForm)들이 유지되는데 값들을 없애려면 어떻게 해야하나요?POST /join 에서 리다이렉션으로 /join/complete로 이동할때 memberId를 addFlashAttribute가 아닌 세션을이용하려하는데 흔히 사용하는 방식인지 궁금합니다. 다른 좋은 방법이 있나요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
예외 처리 부분에 대해서 질문드립니다
안녕하세요. 좋은 강의 잘 듣고 있습니다.다름이 아니라 예외처리에 대해서 질문드립니다.MemberService2 코드를 보면 예외를 처리하는 부분에 있어서 ,try~catch로 예외를 처리하는데 catch에는 단순히 로그만 찍거나 try~catch로 예외를 처리하는데 catch에서 throw로 예외를 발생시키고,어떤부분은 단순히 throws로 예외를 넘기는데, 어떤기준에 의해서 이렇게 하셨는지 궁금합니다.. 혹시 강의 뒤편에 있는 예외처리부분을 학습하면 해결이 되는 부분일까요..? 트랜잭션에 관련된 부분은 이해가 되었는데 이 부분이 애매해서 질문드립니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
controller가 널일수도 있으니까 Optional로 감쌀 수는 없나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.ifPresentOrElse()같은 걸 사용할 수는 없는지 여쭤봅니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
BindingResult는 SSR에서만 쓰이는 방식인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]BindingResult는 ssr 방식에서 사용하는 방식 같은데 맞나요..? csr 방식일 때는 컨트롤러 어드바이스로 예외를 던져주고 그 예외를 웹쪽에서 따로 처리해주는 게 일반적인걸까요?
-
미해결Kotlin으로 개발하는 Spring Boot Web MVC
[제발 부탁 드립니다.]react와 스프링 부트간 통신하는데 통신이 안되네요. 무엇이 문제일까요??
=========중용한 부분이 오타가 있어서 수정합니다================ 안녕하세요. 완강을 한후에 제가 프론트엔드와 백엔드간 통신을 확인하려합니다. 그런데 예상과 다르네요...일단 프론트 엔드 (react을 먼저 보여드릴께요) const handleSubmit = (event) => { fetch('http://localhost:8080/api/posttest', { method: 'POST', // *GET, POST, PUT, DELETE 등 body: JSON.stringify({ name: 'foo', email: 'kjy@gmail.com', message: '1', }), headers: { 'Content-type': 'application/json; charset=UTF-8', }, }) .then((response) => response.json()) .then((json) => alert(json)); alert("test") };이렇게 작성하고 ...백엔드( spring boot)는@RestController @RequestMapping("/api") class _____ApiController{ @PostMapping(path=["/posttest"]) fun postTest( @RequestBody body: BodyClass ): ResponseEntity<String> { println(body) return ResponseEntity.ok().body("test") } }data class BodyClass( var name: String = "", var email: String = "", var message: String = "" ) 이렇게 코딩 했는데 ..분명해서 테스트 해서 정상 확인했는데 ...react에서 전송하면 postTest 함수를 진입하지 않습니다. ... 백엔드쪽에 코드를 좀 바꿔서 Requestbody에서 json 파일 그대로 받자는 식으로 아래처럼 바꿨어요fun postTest( @RequestBody json: String ): ResponseEntity<String> { println(body) return ResponseEntity.ok().body("test") } react는 json 형식인지 표시하는걸 지웠는데fetch('http://localhost:8080/api/posttest', { method: 'POST', // *GET, POST, PUT, DELETE 등 body: JSON.stringify({ name: 'foo', email: 'kjy@gmail.com', message: '1', }), headers: { // 삭제 }, }) .then((response) => response.json()) .then((json) => alert(json)); alert("test" 백엔드의 postTest함수에 진입 합니다.프론트 엔드에서 전송한 json 내네요용이 전송됩니다.이게 ... 새롭게 프로젝트를 만들어도 똑같고 프론트 엔드 백엔드 모두 새롭게 프로젝트를 만들어서 테스트 해도 똑같아요...스프링 부트에서 잘못된건지... react에서 잘못된건지 잘 모르겠네요...아마도 스프링 부트에서 뭔가 잘못된거 같은게 api 서버가 있어서 그걸로 접속하니깐 되긴 하네요...그렇다면 스프링 부트에서 잘못한건지..분명 스프링 부트에도 문제가 없어 보이는데힘드네요 ... ㅠ.ㅠ 살려주세요 ㅠ.ㅠ 몇일째 못풀고 있어요...
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
홈화면 추가에서 index.html이 실행되고 home이 실행이 안되는 문제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 강의 보고 똑같이 코딩했는데localhost:8080이렇게넣었을때 welcom화면으로 index.html이 뜹니다다른분들이질문하신 글들을 다 읽어보고 답변해주신내용들 대로 다 실행해보았으나 해결이 되지 않아, 같은 내용이지만 글을 올립니다..home에서 ctrl + B했을때 home.html화면이 잘 떴었고,전체기간 캐시도 삭제해 봤습니다..그리고 index.html지우면 화이트라벨 에러뜨면서 안되더라구요.제거https://drive.google.com/file/d/1mDv9-Z_r6aChpDBx1ZhtlJZL0dZG6Hzj/view?usp=sharing
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
첫 프로젝트 생성 문의
프로젝트 생성해서 자바 17버전을 깔고 다시 나갔다 들어오니 처음 화면이 저렇게 나옵니다 우측 선생님과 같은 화면이 안나오는데 어떻게 해야하나요??
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
redirectAttributes 질문
@PostMapping("/login") public String loginV4(@Validated @ModelAttribute LoginForm form, BindingResult bindingResult, // @RequestParam(defaultValue = "/") String redirectURL, RedirectAttributes redirectAttributes, HttpServletRequest request) { if (bindingResult.hasErrors()) { log.info("errors={}", bindingResult); return "login/loginForm"; } Member loginMember = loginService.login(form.getLoginId(), form.getPassword()); log.info("login? {}", loginMember); if (loginMember == null) { bindingResult.reject("loginFail", "아이디 또는 비밀번호가 맞지 않습니다."); log.info("bindingResult={}", bindingResult); return "login/loginForm"; } //세션이 있으면 있는 세션 반환, 없으면 생성 HttpSession session = request.getSession(); //세션에 로그인 회원 정보 보관 session.setAttribute(SessionConst.LOGIN_MEMBER, loginMember); //redirectURL 적용 log.info("request.getParameter={}",request.getParameter("redirectURL")); redirectAttributes.addAttribute("redirectURL", request.getParameter("redirectURL")); return "redirect:{redirectURL}"; }맨 아래에서 강사님과 다르게 @RequestParam을 사용하지 않고 RedirectAttributes와 getParameter를 이용해서 처리를 해 보려 했는데,실행 결과 {redirectURL}의 부분이 'localhost:8080/%2Fitems' 로 뜹니다.redirectAttributes에 넣을 때 잘못된 건가 싶어서 request.getParameter의 로그를 찍어보면 정상적으로 /items로 나옵니다.어디가 잘못 된 건지 여러 번 돌려봐도 모르겠어서 질문 남깁니다! 추가 : URL에 변수를 더해서 사용하는 것은 URL 인코딩이 안되기 때문에 위험하다. 다음에 설명하는 RedirectAttributes 를 사용하자.라고 하셨는데 @RequestParam 으로 받은 변수값을 써도 괜찮은 건지 잘 모르겠습니다!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
ide 질문
안녕하세요 이제 막 수업을 따라가려하는데 이클립스, 인텔리제이가 아닌 sts4로 실습을 해도 괜찮은지자바 버전은 11로 알려주셨지만 11이상의 다른 버전으로 해도 무방한지 여쭙고 싶습니다. 감사합니다.
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
pdf의 Exception 자바 직접 실행 부분에서 궁금한 점이 있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]아래는 pdf에 나온 설명입니다. Exception(예외)자바 직접 실행 자바의 메인 메서드를 직접 실행하는 경우 main 이라는 이름의 쓰레드가 실행된다. 실행 도중에 예외를 잡지 못하고 처음 실행한 main() 메서드를 넘어서 예외가 던져지면, 예외 정보를 남기고 해당 쓰 레드는 종료된다. 자바 문법책으로 공부할 때 try catch 없이 예외가 터지면 프로그램이 종료되고,try catch 없더라도 throws를 통해 메서드를 호출한 곳으로 떠넘기면, 그곳에서 try catch를 하거나, 아니면 또 계속 떠넘겨서 main 메서드에서도 throws를 통해 JVM이 예외를 처리하는 방법도 있다고는 알고 있습니다. 강의 자료 pdf에 나온 "실행 도중에 예외를 잡지 못하고 처음 실행한 main() 메서드를 넘어서 예외가 던져지면" 이 의미는 throws 키워드를 사용해서 계속 떠넘겼다는 의미인가요? 아니면 throws를 안 쓰더라도 저런 식으로 예외가 넘어간다고 생각하면 되는 건가요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
세션 질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의를 들어보면 loginV3메소드 파라미터에 HttpServletRequest request를 선언하고 HttpSession session = request.getSession(); 을 통해 세션을 생성하는 것을 볼 수 있었습니다.하지만, 저는 프로젝트를 진행할 때 세션이 사용되는 메서드에 파라미터를 HttpSession session을 사용했습니다.그래서, HttpSession session = request.getSession(); 이와 같은 코드 없이 세션을 생성하거나 삭제하였습니다. 둘의 차이가 있을까요? 굳이 HttpSession session = request.getSession(); 를 작성할 필요가 있나요?아래는 저의 코드입니다.
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
트랜잭션 및 커밋 질문드립니다.
1. "자동커밋모드에서 수동커밋모드로 변환하는것" 을 트랜잭션을 시작한다라고 표현하는것일까요? 아니면 "수동커밋모드로 작업을 하는것" 을 트랜잭션을 시작한다고 표현하는것일까요?2. 강의 14분경에, memberRepository.update() 코드에서 "트랜잭션이 없어서 auto commit된다" 라고 말씀하셨습니다. 여기서 "트랜잭션이 없어서 auto commit 된다" 는게 무슨의미인지 잘 모르겠습니다. 2-1. 트랜잭션이 없다는게 트랜잭션을 시작하지 않았다는것일까요? 2-2. 수동커밋모드가 아니라서 트랜잭션이 없고 트랜잭션이 시작하지않은것일까요?2-3. 트랜잭션이 없으면 무조건 auto commit일까요?3. 트랜잭션이라는것이 수동커밋모드로 하고나서, 쿼리를 실행하고, commit이나 rollback을 하는 과정을 의미하는게 맞을까요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
트랜잭션 및 커밋 질문 드립니다.
0
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 오디오 안들림
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의를 듣는 도중 오디오가 잘 나오다가 갑자기 안 나오더니 그때부터 모든 강의 소리가 안들리는데 왜그런지 알 수 있을까요?.. 노트북 오디오는 잘 작동합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
Getparameter
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Request.getparameter에서 매개변수를 “username”이라던지 ”age”이렇게 받잖아요 이렇게 스트링으로 어떻게 파라미터를 전달받는지 궁금해요 http 또는 request에서 username이라는 스트링이ㅜ있으면 스트링으로 변환하는 건가요?아 그리고 grtWriter는 뭐하는 거고 write는 뭔지 궁금합니다
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
Index.html
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]처음에 인텔리제이를 시작할 때 localhost8080을 가면 바로 index.html화면이 나오는데 왜 그런 건가요?따로 설정을 해야ㅜ하는 건가요?
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
프록시 객체의 this
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요! 이번 강의 내용 중에 자바 언어에서 메서드 앞에 별도의 참조가 없으면 this라는 뜻으로 자기 자신의 인스턴스를 가리킨다는 this.internal() 이 되는데, 여기서 this 는 자기 자신을 가리키므로, 실제 대상 객체(target)의 인스턴스를 뜻한다.라고 설명이 되어 있는데 지금 까지 알던 개념은 CallService(부모), CallServiceProxy(자식)관계가 존재한다면 CallServiceProxy 입장에서는 this는 자기 자신의 주솟값을 가리킨다. super는 부모 즉 CallService의 주솟값을 가리킨다 입니다 여기서 this는 그럼 프록시 자기 자신의 객체 주솟값이 아닌(부모의 주솟값 == super == trarget )를 가리킨다고 이해하면 될까요? 그렇다고 하면 해당 프록시 객체는 자기 자신의 참조 주솟값은 스택 프레임에서 가지지 않는 걸까요?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
homeLoginV3에서 세션에서 멤버를 꺼내와서 타입변환을 하는 이유
@GetMapping("/") public String homeLoginV3(HttpServletRequest request, Model model) { //세션 관리자에 저장된 회원 정보 조회 HttpSession session = request.getSession(false); if (session == null) { return "home"; } // 여기에요 여기!! Member member = (Member) session.getAttribute(SessionConst.LOGIN_MEMBER); //세션이 유지되면 로그인으로 이동 model.addAttribute("member", member); return "loginHome"; }세션에서 값을 꺼내와서 Object 타입을 그대로 넣지 않고 Member로 강제 타입 변환을 시키는 이유가 무엇인가요?타입 변환없이 돌려도 작동하는데 굳이 타입을 변경하는 이유가 궁금합니다!