homeLoginV3 에서 질문드립니다. //세션에 회원 데이터가 없으면 home로 보내주는 로직 if (loginMember == null) { return "home"; } 에 대해서 의문점이 있어서 질문을 남기게 되었습니다. 상단에서 이미 세션 관리자에 저장된 회원 정보를 조회했고, 세션이 존재하지 않는다면 home 으로 이동하고, 그렇지 않은경우(세션 관리자에 회원 loginMember가 있는경우)에서는 회원 데이터가 없을 수가 있나요?? 이미 기존에 회원이 로그인을 했었기 때문에, 세션에는 당연히 회원 데이터가 있다고 생각이 듭니다.. 세션에 회원 데이터가 없는 경우가 있는 상황이 있는지 궁금합니다.
Unable to start the daemon process. This problem might be caused by incorrect configuration of the daemon. For example, an unrecognized jvm option is used. Please refer to the User Manual chapter on the daemon at https://docs.gradle.org/7.5/userguide/gradle_daemon.html Process command line: C:\Program Files\Java\jdk-11.0.16\bin\java.exe --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.invoke=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.prefs/java.util.prefs=ALL-UNNAMED --add-opens java.prefs/java.util.prefs=ALL-UNNAMED --add-opens java.base/java.nio.charset=ALL-UNNAMED --add-opens java.base/java.net=ALL-UNNAMED --add-opens java.base/java.util.concurrent.atomic=ALL-UNNAMED -XX:MaxMetaspaceSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xms256m -Xmx512m -Dfile.encoding=UTF-8 -Duser.country=KR -Duser.language=ko -Duser.variant -cp C:\Users\***(이름부분)\.gradle\wrapper\dists\gradle-7.5-bin\f1w0cc9nuo0eivz97x2xlu9sv\gradle-7.5\lib\gradle-launcher-7.5.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.5 Please read the following process output to find out more: ----------------------- Error: Could not find or load main class org.gradle.launcher.daemon.bootstrap.GradleDaemon Caused by: java.lang.ClassNotFoundException: org.gradle.launcher.daemon.bootstrap.GradleDaemon 혹시 저처럼 이런 오류 뜨는분 계실 까봐 글남깁니다. 제생각인데 이거 원인이 윈도우 사용자이름 때문인거 같습니다 . 사용자 이름이 한글이면 뭔가 안맞아서 이런 오류가 뜨는거같아요. 똑같은 컴에서 사용자 추가해서 실습하니까 아무문제 없이 잘되네요. 제 경험담인데 비슷한 일로 마인크래프트가 있습니다 마인크래프트도 사용자 이름이 한글로 되어있으면 실행이 안되더라고요(Exit code : 0 라고뜨면서 꺼집니다) 그래서 그때 사용자(윈도우 운영체제 계정?)를 새로 만들어서 하니까 잘되더라고요 바보같이 마이크로소프트 계정이름이 한글로 되어있는바람에 컴터 사용자가 한글로 됐고 그래서 이런일이...있는거같습니다.포멧하지 않는이상 해결안되는거같고 다른방법으로 사용장 계정(?)을 새로 만들어서 해결했습니다 저는요.. 좀더 자세히 추측해보자면 C:\Users\hong 이거랑 C:\Users\홍길동 이차이 인거같습니다 이폴더가 이름으로 되는거같은데 한글이면 문제가 되는거같습니다. 혹시 비슷한 문제 있으신분들은 참고하시면 될듯 합니다.
설명하는 역할들이 어디서 일어나는지 궁금합니다. 서블릿 컨테이너 내에 디스패처서블릿이 있는건가요? 스프링 컨테이너 내에 디스패처서블릿이 있는건가요? 기존 서블릿 컨테이너를 설명하실때, 서블릿 객체의 역할에 추가 기능이 붙어 디스패처 서블릿이 되는건지, 아니면 별개인지 헷갈립니다
이전에 service 메소드 작성할떄 유사한 질문을 드렸었는데요 ( https://www.inflearn.com/questions/607828 ) 이 강의에서는 req, resp를 쓰면 오류가나고 request, response라고 써야 오류가 안나던데.. 왜 req, resp는 못쓰는걸까요?
강의 너무 잘 듣고 있습니다. 강의 듣던 중 궁금한 점이 있는데 Model의 생명 주기가 어떻게 되는지 검색을 해봐도 원하는 검색이 안나오네요. Model의 생명주기가 궁금합니다. 34번째줄 @RequestMappint("/save")를 호출할때 model이 없어 model.addAttribute("member", member);할 때 value가 넣어지는 거 같은데 model이 존재하고 key가 같다면 member가 덮어쓰기되는 식인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 강의를 듣다 궁금한점이 있어서 질문드립니다! file.transferTo(new File(fullPath)) 이렇게 해주면 fullPath 경로에 파일이 저장된다고 하셨는데 어떻게 파일이 저장되는 걸까요? @RequestParam MultipartFile file 이렇게 file을 처음에 컨트롤러에서 받는데 이 file 객체에 현재 첨부한 파일이 들어있는거고 file.transferTo()를 하면 ()안의 경로에 file 객체가 가지고 있는 파일이 저장이 되는거라고 생각하면 될까요? 그리고 new File() 이 무슨 역할을 하는지 혹시 알수있을까요?
강의 너무 잘보고 있습니다. 여기서 Model추가 -v3에서 한 가지 부분이 이해가 안됩니다. ModelView클래스에는 model값을 넣어주기 위해 생성자에서도 값을 넣어주지않고 setter를 통해서도 넣어주지 않는데 아래 코드의 44번행 view.render(mv.getModel(), request, response);에서 mv.getModel()을 해서 request.setAttribute(key,value)부분에서 값이 들어가는게 이해가 안됩니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 이번에 스프링부트를 공부해보려고 이사이트에 찾았습니다. vscode가 친숙해서 vscode로 개발을 진행하는데 자바파일 실행시 아래와 같은 오류가 계속 뜨게됩니다... 어떻게 해야 해결할 수 있을까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. MemberServiceTest에서 memberRepository를 사용하여 afterEach메서드를 통해 초기화 시켜주는데 memberService 안의 memberRepository가 final 하기 때문에 건드리지 못해서 밖에서 memberRepository 오버로딩을 통해 초기화 해주는건가요?? 맞다면 final 키워드가 붙어있는 memberRepository를 밖에서 오버로딩할수 있는건가요? MemberService안에 있는 memberRepository는 private final인데 그 밖에서 선언한 memberRepository를 초기화해주는것으로 어떻게 초기화가 되는거인지 궁금합니다...!!
안녕하세요 단순한 질문이긴 한데.. 제가 뭔가 착각하고 있나 싶어 질문 드립니다 ㅠ @Component 어노테이션을 붙이면 빈으로 등록이 되죠 그리고 등록될 때 이름을 지정하지 않으면 해당 클래스 이름의 첫글자를 소문자로 바꿔 등록된다고 이해하고 있는데요 강의 1분 24초에 HelloBean 이라는 클래스를 하나 만들어서 빈으로 등록해 사용하는데 이 때 @Component static class HelloBean{ } 이렇게만 등록해도 helloBean 이라는 이름으로 빈이 등록되 않나요? @Conponent("helloBean") 이라고 이름을 지정해 주어야만 정상적으로 코드가 동작하고 이름을 지정해 주지 않으면 빈을 찾을 수 없다는 에러가 발생하던데 결과적으로 빈의 이름을 지정하지 않아도 타임리프에서 사용된 빈의 이름과 일치할 텐데 빈 이름을 지정해야 코드가 정상적으로 동작하는 이유를 모르겠습니다..
강좌에서는 자바 11로 하라고 하셨는데, 혹시 자바17로 해도 되는걸까요? Build.grade 의 sourceCompatibility 에 자바 17 버전이라고 돼있습니다 . Preference 의 gradle JVM 은 Project SDK corretto-17 Project settings 에서 SDK 는 corretto-17 Amazon Corretto version 17 입니다 . 그리고 혹시 JVM 에 원래 선택 돼있는 Project SDK corretto-17 말고 corretto-17 Amazon Corretto version 17.0.4 도 있는데 , 이걸로 바꿔야 하나도 궁금합니다 .
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 강사님 타임리프 부분이 가물가물해서 복습하고 있는 수강생입니다. 다름이 아니라 '타임리프 - 스프링 통합과 폼' 챕터 '입력 폼 처리' 강의에 질문이 있어서 글을 남깁니다. 지금 저는 JPA를 사용하면서 MVC 2 강의를 복습하고 있고, 기본 생성자의 접근 제한자를 모두 protected로 두고 사용하고 있습니다. 강의 내용 중, addForm을 Get으로 불러올 때, 빈 객체를 넘기셔서 일단 강의대로 적용하기 위해 public으로 접근 레벨을 변경하였으나, 여기서 문제가 발생하였습니다. 질문이 몇개 있어서 번호를 붙여서 질문하겠습니다!! 1. 기본 생성자를 사용하여 진행 시, save 및 update가 정상 작동하지 않습니다 (id를 제외한 모든 값이 null로 들어갑니다) 이 경우, 제가 생각하기에 flush가 동작하지 않아 그런 것 같은데, 정확한 버그 발생 이유와 해결 방안이 너무 궁금합니다!!ㅠㅠ 2. 결국 엔티티에서 빈 객체 생성자를 public으로 두고 싶지 않아, ItemDTO를 따로 만들어서 빈 객체를 생성하여 넘겨줬는데, 이렇게 해도 기능 자체는 정상 작동했습니다. 혹시 이 경우, 문제가 되는 점이 있을까요? (DTO => 엔티티 변환 과정 하나도 없이 그냥 ItemDTO만 전달했습니다) 바쁘실텐데 질문 읽어주셔서 감사합니다!! 또 항상 좋은 강의 제공해주셔서 강사님과 인프런 모든 분들에게 너무 감사드립니다!