학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] @nullable로 잡혀있는 rejectedValue 을 addItemV1에서 new FieldError 매개변수에 넣지 않으니 가격이나 수량에 넣어줬던 값이 error 발생 시 그대로 저장이 안되더라구요. 그래서 구글링 후에 bindingResult.addError(new FieldError("item", "price", item.getPrice(), false, null, null, "상품가격 범위 초과(1000~1000000)")); 이런 식으로 넣으니까 강의처럼 값이 그대로 넘겨지긴 하네요. 영상에서는 해당 부분말고 상품명까지만 확인한거같은데 참고 부탁드립니다~
return에 redirect:/ + 값 위와같이 URL매핑주소에 파라미터를 그대로 넘겨서 반환하게 된다면 URL 인코딩에 대한 위험성을 함께 지적하시면서 RedirectAttribute수업을 진행하였는데요. 수업 중 status를 통한 유효성 검증 처리만 하고 인코딩 여부를 어떤식으로 확인할 수 있는지에 대한 내용이 생략된거 같습니다. 혹시 따로 글로라도 확인시켜주실수는 있을까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 vs코드에서 자바 배우려고 intellj(무료버전)를 설치 후 강의를 따라가고 있습니다. 그런데 HelloSpringApplication을 런 했을때 3가지 에러가 발생하는데 핸들링 부탁드립니다. 크게는 이 3가지가 나오고, 이건 첫번째 에러인데 해결하지 못했습니다 ㅠㅠ 답변 부탁드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 회원등록을 하지 않았으 때 회원 조회를 하게되면 # 이름은 뜨게 되는데 회원등록을 하고 난 후 회원조회를 하게되면 오류가 뜹니다. 도와주시면 감사하겠습니다! https://github.com/JongchanJeon/starter_Spring 감사합니다.
@Controller를 클래스 레벨에 붙이면 스프링에서 애노테이션 기반 컨트롤러로 인식한다고 학습했습니다. 강의 10분 쯤에서 @RequestMapping과@Component를 같이 클래스 레벨에 쓰면 @Component에 의해 스프링 빈에 등록돼서 매핑정보로 인식된다고 하셨는데 그렇다면 이것도 애노테이션 기반 컨트롤러로 인식되는 건가요? 그렇다면 스프링 빈에 등록될 때 빈 이름은 무엇으로 등록되나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. Caused by: org.springframework.beans.NotReadablePropertyException: Invalid property 'item' of bean class [hello.itemservice.domain.item.Item]: Bean property 'item' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter? 에러가 발생합니다. Item.java 파일에 private Boolean open; 라고 쳤는데도 오류가 발생하는데 어디서 문제가 생긴걸까요? @Data도 넣었습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의에 나온 코드를 그대로 복사 붙여 넣기하여 작성한 코드임에도 불구하고 계속 localhost:8080/hello 에서 이 오류가 발생합니다. 몇번을 봐도 문제는 없는거 같은데 왜 이럴까요?
의존성에 대해 갑자기 헷갈려서 총 4가지 질문드립니다. MemberService에 아래와 같은 메서드(Member findMemberById(Long id))가 있고 PostService(다른 Service 클래스)에서 memberId로 Member를 조회해야 할 일이 있습니다. 이 경우 아래 메서드를 이용하기 위해 PostService 클래스에서 private final MemberService memberService 형태로 멤버변수로 포함한다고 가정하겠습니다.(memberService.findMemberByMember(id) 로 이용하기위해) public Member findMemberById(Long id) { return memberRepository.findById(id) .orElseThrow(() -> new BusinessLogicException(MEMBER_NOT_FOUND)); } Q1) PostService에서 MemberService를 생성자 주입을 통해 받아서 이용할 경우 MemberService의 의존성(예를 들면 MemberRepository 등의 MemberService 클래스에서 사용하는 클래스들)까지 PostService에 포함되는 것일까요? Q2) 의존성이라는게 단순히 생성자 주입으로 받았던 멤버 클래스들 뿐 아니라 내부 메소드에서 매개변수로 받은 클래스가 있다면 이 또한 의존성인가요?(import 로 포함된 클래스들을 모두 의존클래스로 보면 될지, 아니면 내부에서 사용하는 모든 객체를 의존성으로 보면될지 >> 같은 패키지의 경우 import 안하는걸 고려했을때 내부에서 객체로 이용하지만 같은 패키지라 import 안되는걸 고려) Q3-1) Q1의 답변에서 MemberService의 의존성까지 PostService에 포함되는 거라면 PostService에서 Member를 조회하기 위해서는 memberService.findMemberById(id) 로 조회하기 보단 MemberRepository를 주입받아서 memberRepository.findById(id).orElseThrow(() -> new BusinessLogicException(MEMBER_NOT_FOUND)); 형태로 변경하는게 맞을지? Q3-2) Q1의 답변에서 MemberService의 의존성까지 PostService에 포함되는게 아니라면 PostService에서 MemberService가 아닌 MemberRepository로 조회하는게 맞을지? Member 조회가 여러곳에서 사용되고 Member findMemberById(Long id) 메소드의 내용이 여러곳에서 중복되는 걸 생각했을때 처음에는 단순히 member 조회가 여러곳에서 일어나고 공통된 내용이 반복되어 MemberService의 findMemberById 로 묶어서 사용하는게 맞다고 생각했는데 의문이 들었고 예전에 의존성은 최대한 줄이라고 하셨던게 생각나서 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 cmd창으로 실행을 하였는데 강사님이 알려주신대로 해봤는데 gradlew.bat 이 실행이 안되네요 저는 windows, 자바 17버젼이고 스프링은 3. 버전을 사용하고 있습니다. 도와주시면 감사하겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] C:\Users\권순형\work_spring\hello-spring\build\libs>java -jar hello-spring-0.0.1-SNAPSHOT.jar . ____ _ /\\ / ___'_ __ ( _)_ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v3.0.5) 2023-03-28T22:37:12.803+09:00 INFO 16492 --- [ main] h.hellospring.HelloSpringApplication : Starting HelloSpringApplication v0.0.1-SNAPSHOT using Java 19.0.2 with PID 16492 (C:\Users\沅뚯닚??work_spring\hello-spring\build\libs\hello-spring-0.0.1-SNAPSHOT.jar started by 沅뚯닚??in C:\Users\沅뚯닚??work_spring\hello-spring\build\libs) ibs) 2023-03-28T22:37:12.807+09:00 INFO 16492 --- [ main] h.hellospring.HelloSpringApplication : No active profile set, falling back to 1 default profile: "default" 2023-03-28T22:37:13.668+09:00 INFO 16492 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8081 (http) 2023-03-28T22:37:13.678+09:00 INFO 16492 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2023-03-28T22:37:13.678+09:00 INFO 16492 --- [ main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.7] 2023-03-28T22:37:13.777+09:00 INFO 16492 --- [ main] o.a.c.c.C.[Tomcat].[ localhost ].[/] : Initializing Spring embedded WebApplicationContext 2023-03-28T22:37:13.779+09:00 INFO 16492 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 920 ms 2023-03-28T22:37:14.088+09:00 INFO 16492 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8081 (http) with context path '' 2023-03-28T22:37:14.103+09:00 INFO 16492 --- [ main] h.hellospring.HelloSpringApplication : Started HelloSpringApplication in 1.632 seconds (process running for 2.006) cmd창에서 이렇게 잘 뜬 것 같은데 localhost 치고 들어가면 안되네요.. 인텔리J에서는 잘 작동합니다..
memberRepository에 member를 저장하고 난 이후, 왜 ModelView mv 값을 생성할 때, save가 아닌, save-result가 들어가나요? ModelView mv = new ModelView("save-result"); viewResolver로 변환된 코드는 "/WEB-INF/views/save-result.jsp" 가 되는데 기존에 썼던 jsp인 WEB-INF/views/save.jsp를 사용하기 위해선 mv를 생성할때, ModelView mv = new ModelView("save"); 가 나와야 알맞은 코드 아닌가요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 제목 그대로 입니다. 저기 아래에도 같은 질문이 있었는데 그 질문에 대한 답은 intelliJ 콘솔창에서 깨지는 문제에 대한 답변을 하신것같아서 다시 올립니다 ㅠㅠ
깃허브에 따로따로 추가하고 싶지 않아서 사진과 같이 servlet 패키지와 동일한 레벨에 패키지를 추가하여 구동하려고 합니다. 현재 프로젝트 패키징이 war 방식인데 이 상태에서 jar로 변경하지 않고 servlet 패키지를 포함하는 모든 하위 패키지는 webapp 디렉토리로 설정하고, spring 패키지를 포함하는 모든 하위 패키지에서 호출하는 정적 파일들은 webapp 경로가 아닌 resources로 따로따로 잡아줄수 있는 설정이 있을까요? 이렇게 하는 이유는 공부 한 내용을 하나의 프로젝트로 관리하고 싶기 때문입니다. 부탁드립니다.
hello서블릿 강의 이제 막 듣기 시작했는데 webapp디렉토리를 만들고 index.html을 작성하였을 때 왜 localhost:8080/index.html이 아닌 localhost :8080으로 입력하여도 index.html이 열리는지 이유를 말씀해주시지 않았는데 왜그런지 알 수 있을까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. home.html 에 <a href="/members/new">회원 가입</a> 여기서 /members/new 가 localhost:8080/members/new 로 연결이 되는 것 같은 데 어떻게 가능한건지 잘 모르겠습니다. /members/new 는 절대경로로 알고 있는데 프로젝트 폴더에는 이러한 폴더가 없습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에서 어떻게 질문해야지 스냅샷이 선생님이 한것처럼 나오나여?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. 2023-03-27T20:32:57.394+09:00 ERROR 5304 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that's listening on port 8080 or configure this application to listen on another port. Process finished with exit code 1 이런식으로 오류가 뜨는데 어떻게 해결해야 되는지 모르겠어요..