묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Order Entity Cascade 관련 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name = "delivery_id") private Delivery delivery;Order Entity의 코드입니다. 현재 Order와 Delivery의 관계에서 연관관계의 주인은 Order입니다. 그렇다면 Order에서 delivery의 값을 변경하면 연관관계의 주인이기 때문에 반영이 된다고 알고 있습니다. 그래서 cascade를 굳이 써야하나 고민을 하고있었습니다. 제가 생각해낸 이유는 연관관계의 주인이여서 Order에서 delivery의 값을 변경이 가능한 것은 객체 관점(delivery에 값이 입력되기만 함 영속성 컨텍스트에 저장 X)이고 cascade는 db관점에서의 접근이므로 cascade를 작성해 줘야 묶여서 영속성 컨텍스트로 넘어간다(cascade를 작성하지 않으면 order를 persist했을 경우 delivery에 값은 있지만 영속성컨텍스트로 넘겨주지않음). 입니다. 제가 생각한 방법이 맞는지 궁금합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
객체의 의존성 주입 할때 주인 테이블에 대한 궁금증
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/)[질문 내용]안녕하세요. 제가 JPA 기본편을 들을 시간이 없이 실무에 바로 적용해보고자 JPA 활용을 먼저 듣게 되었습니다.그래서 의존성 주입에 대한 기본편 내용을 숙지하지 못해서 질문을 드립니다. 강사님께서 테이블 간의 FK지정 시 다 대 1 관계에서 무조건 다의 테이블에 Joincolumn을 엮고 1의 테이블에는 mappedby를 통해서 이 둘을 엮는다고 말씀하셨습니다.하지만, 무조건 적으로 다의 테이블에서만 이를 시행해야하나요? 그 반대로 할 수는 없는건가요???
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
세션 삭제 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]메모리에 세션이 쌓이는것을 방지하고자 세션 만료시간을 사용하여 만료시간이 지난 세션들을 삭제한다고 이해했는데요.세션 삭제가 서버에서 주기적으로 만료시간이 지난 세션들을 삭제 하는건지 아니면 사용자가 요청을 보냈을때 만료시간을 체크하고 만료시간이 지나면 삭제를 하는건지 궁금합니다.
-
미해결스프링부트 시큐리티 & JWT 강의
Lombok 안되는 분들 참고
Lombok 안되시는 분들 있을 수 도 있어 남깁니다. 스프링부트 시작할 때 플러그인 넣어도 안되는 경우프로젝트 폴더 내 lombok 우클릭 -> Run As -> Java Application 눌러서 실행하면 설치 화면이 나옵니다.1. Specify location 누르신 후 IDE 실행파일 선택2. Install / Update 눌러서 실행3. Quit Installer 눌러서 나가기4. 이클립스 실행 하면 되는데 만약 이클립스 눌러도 반응이 없으신분들은이클립스 설치 폴더 안에 eclipse.ini 파일이 있습니다.눌러서 확인해보면 경로가 한글이 섞여 있는 경우는 이클립스 실행이 안되니 경로를 영어로 다 바꾸시면 됩니다. ※바탕화면이 한글로 되어 있는데 어떻게 Desktop 으로 바꾸죠 ??ㄴ 이건 인터넷 검색해보시면 되겠습니다. ※Lombok 설치 후 이클립스가 느려졌어요!!ㄴ eclipse.ini 파일 내부에-Xms256m-Xmx2048m여기 메모리 관련 부분을 수정-Xms2048m-Xmx4086m로 변경해서 사용하면 이전 처럼 빠르게 사용할 수 있습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
localhost:8080 로그인 Unauthorized
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]localhost:8080 접속시 로그인창이 나오고 취소시 Unauthorized이런 오류가 나오네요 build.gradleapplicaton.properties 해결책을 알려주시면 감사하겠습니다 우선 프로젝트를 다시 생성해보겠습니다
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
프로젝트 만들 때 선택사항
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.스프링 부트 프로젝트 만들 때 Packaging은 jar, war 둘중 무엇을 선택해야 하나요?java 버전은 11버전으로 진행하면 될까요?
-
미해결스프링 핵심 원리 - 기본편
실무에서 생성자 주입
안녕하세요. 현재 실무 소스가 모두 @Autowired 를 통해 주입이 되어있는데요. 여러 사람의 손을 거쳐가서 그런지 DI가 10개가 넘는 클래스도 있습니다.이럴 경우에도 생성자 주입으로 모두 사용하나요?의존관계가 너무 많으면 생성자 메소드가 너무 길어져서 가독성이 안좋아질텐데 이럴 때 어떻게 하는지 궁금합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
SpringConfig import문제
강의영상에서는 MemberService가 제대로 import 되고MemberService의 메서드도 불이 잘들어가있는데왜 import가 안되는지 모르겠습니다.앱실행하면 구동은 잘됩니다
-
미해결스프링 핵심 원리 - 기본편
hashmap사용시 항상 map으로 선언하시나요?
[질문 내용]여기에 질문 내용을 남겨주세요.항상 궁금했던건데, 인터페이스의 구현체에서, 구현체 자체 메서드가 있는 구현체들도 있는데, 변경 용이성때문에 항상 상위 타입으로 선언하는건가요?예를들어, 인터페이스 Map에는 clone메서드가 없고, HashMap에는 clone 메서드가 있는데, Map으로 선언하면, HashMap 자체 메서드들은 사용못하게되는데 구현체 자체 메서드를 사용할 상황도 있을거같은데, 항상 구현 객체 생성할때 상위로 선언하는 이유가 궁금합니다. 구현체 기능을 더 사용한다 vs 변경에 용이하게한다. 둘다 비슷한 느낌이여서 뭐에 우위를 두고 선정해야할지 잘모르겠습니다.
-
미해결스프링 핵심 원리 - 기본편
객체 지향 설계와 스프링 강의에서 실무 고민
객체 지향 설계와 스프링 강의 5분에 나오는 인터페이스 도입시 추상화라는 비용이 발생한다는데, 인터페이스안에 구현을 찾는 경우 타고 타고 들어가는 과정에서 추상화 비용이 발생한다라고 알아들었는데 잘 이해가 안가서요 좀더 예시를 들어볼 수 있을 까요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
2분 23초 단축키 보는 방법에 대해 질문드립니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요강의 중간 중간에 아래에 단축키를 보여주시는 것으로 이해하고 있습니다.1번째 질문입니다.2분 23초 화면 아래에Extend Selection via 와 문자들이 여러가지 있는데읽는 법을 모르겠습니다구글링해도 알 수 없어서 질문드립니다https://www.google.com/search?q=extend+selection+via&sxsrf=AJOqlzUlb-H_5m0gOhEFarRhon8t-0fufw%3A1679410552822&ei=eMUZZM_fMcGRseMPmJm38Ag&ved=0ahUKEwjP-7rro-39AhXBSGwGHZjMDY4Q4dUDCA8&uact=5&oq=extend+selection+via&gs_lcp=Cgxnd3Mtd2l6LXNlcnAQAzIICCEQoAEQwwQ6CAgAEAcQHhATOhAIABCABBAUEIcCELEDEIMBOgoIABCABBAUEIcCOgsIABCABBCxAxCDAToECAAQAzoUCC4QgAQQsQMQgwEQxwEQ0QMQ1AI6EQguEIAEELEDEIMBEMcBENEDOgUIABCABDoGCAAQBxAeOgcIABANEIAEOggIABAHEB4QCjoICAAQBxAeEA86CAgAEAgQBxAeOgUIABCiBDoKCCEQoAEQwwQQCkoECEEYAFAAWMAbYPseaABwAHgAgAHLAYgBhBOSAQYwLjE3LjGYAQCgAQHAAQE&sclient=gws-wiz-serp 2번째 질문입니다3분 47초에서 화면 아래에 Save All via 라고 적혀있고 그 다음에 특수문자가 적혀있는데, 해석 방법에 대해 질문드립니다
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
서블릿 컨테이너에 대하여
[질문 내용]이전 시간에 들었던 강의를 제대로 이해한 건지 궁금해서 질문드립니다!컴파일시 서블릿 컨테이너 안에 작성한 메서드들이 자리하게 됩니다. 그 후, 호스트로 부터 요청이 들어오면 WAS가 request, response 객체를 생성합니다. 마지막으로, service에 작성한 함수를 스레드 풀안에 스레드가 동작하여 response에 전달해 호스트에게 반환되는 것이 맞나요??
-
미해결스프링 핵심 원리 - 기본편
coreApplication 실행
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.See https://docs.gradle.org/7.6.1/userguide/command_line_interface.html#sec:command_line_warningsBUILD SUCCESSFUL in 24s3 actionable tasks: 3 executed오후 10:07:38: Execution finished ':CoreApplication.main()'. coreApplication 실행했더니 밑에 이렇게 나왔는데 괜찮나요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
로드맵에 몇번째 강의까지 들어야지 개인 프로젝트를 할 수 있을까요?
안녕하세요파이썬으로 알고리즘만 공부하다가, 백엔드 개발자가 되기 위해 스프링을 배워보고 싶어서 영한님 로드맵을 시작했습니다.기본적인 자바 공부를 하고 첫번째 로드맵 강의를 다 끝냈는데, 혹시 간단한 개인 or 협업 프로젝트를 할정도의 실력을 갖추려면 몇번째 강의까지 듣고 시작하는게 좋을까요? 강의를 들으면서 프로젝트도 해보고 싶은 욕구가 강하게 들어서 꼭 해보고 싶습니다.그런데 무작정 프로젝트를 시작하기에는, 첫번째 강의를 다 들었음에도 불구하고 아무것도 모른다는 느낌이 들어서 선뜻 손을 대기가 어렵네요..막상 게시판 하나 만들어 보려고 구글링을 하면서 봐도 config controller service repository를 어떻게 작성해야 할지도 모르겠구요답변 주시면 감사하겠습니다..!
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
업로드에대한 질문이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용] 1. 업로드 강의를 듣고 이해하지 못한 부분이 있는데 지금 강의에서 나온 부분이 메모리에 넣고 map에 넣는 방식이고 만약 서버에 넣고 db에 주소값만 넣어서 사용하려고 하면 AWS의 S3를 사용해서 외부 서버에 넣고 사용하는 건가요? 혹시 jpa에 적용하는 것은 실전 jpa때 한번더 나오나요? 업로드는 이대로 끝인가요? 여기서 db에 넣는 방식으로 바꾸려고 하면 repository 부분을 빼고 mybatis는 마이바티스 jpa는 jpa방식으로 하는 건가요? 2번 질문이 끝이면 어떤식으로 구조를 짜야하나요? Item과 ItemForm 클래스의 차이는 뭔가요?
-
미해결스프링 핵심 원리 - 기본편
스프링 어노테이션을 사용하면 5가지 원칙을 적용하는건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.그러면 결국 어노테이션으로 스프링에 인식하게 해서 스프링 컨테이너에 빈으로 관리하게 되면 좋은 객체 지향 설계의 5가지 원칙의 적용을 충족하는거죠?
-
해결됨실무 환경 그대로 주문게시판 만들기 웹개발 기초 마스터
안녕하세요. pdf 강의자료는 어디서 받아야하나요?
별첨자료에도 강의교재PDF 파일이 없는데 어디에서 확인가능하나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
controller에서 redirect처리 하는 경우 왜 이렇게 되는지 궁금합니다!
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요! 스프링 인터셉터 작동 순서에 대해 공부하다 의문이 생겨 문의 드립니다~ 일부 생략해서 말씀드리면, 대충 이런 흐름으로 인터셉터내의 메서드가 작동한다고 알고 있는데요.preHandle -> 컨트롤러 -> postHandle -> afterCompletion 이때 컨트롤러에서 redirect 처리를 하는 경우, postHandle과 afterCompletion까지 모두 작동하고 나서 새로운 URL로 preHandle가 호출되기 시작하더라구요. 단순히 생각했을 땐 redirect 처리가 되는 경우 postHandle은 실행되지 않고 afterCompletion만 실행될 줄 알았는데.. 아니더라구요! 밑에는 제가 테스트 해본 나온 로그입니다. (실제 로그는 아니고 조금 생략했어요!) [uri : /test1] preHandle [uri : /test1] controller , redirect [uri : /test1] postHandle , response status : 200, modelAndView.getViewName : redirect:/test2 [uri : /test1] afterCompletion , response status : 302 [uri : /test2] preHandle [uri : /test2] postHandle , response status : 200, modelAndView.getViewName : test2 [uri : /test2] afterCompletion , response status : 200 아무튼 질문은 다음과 같습니다!redirect 처리에도 postHandle이 호출되는 이유가 궁금합니다.postHandle은 컨트롤러 이후에 호출되는 메서드라 response status code가 302이어야 할 것 같은데, afterCompletion이 되서야 302로 나오는 이유가 궁금합니다.redirect시에는 postHandle이 호출되지 않게 하는 방법은 없을까요? 단순히 생각하면 modelAndView의 viewName으로 거를 수 있을 것 같은데.. 다른 방법은 없나 해서요!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
SpringMemberFormControllerV1 부분 질문입니다.
@Controller public class SpringMemberFormControllerV1 { @RequestMapping("/spring/v1/members/new-form") public ModelAndView process(){ return new ModelAndView("new-form"); } }위의 식을 풀이하면(1) @Controller에 의해 SpringMemberFormControllerV1(핸들러)가 스프링빈에 등록됩니다.(2) 클라이언트가 "/spring/v1/members/new-form"를 요청하면 @RequestMapping에 의해 요청 정보를 매핑하는데 @Controller때문에 애노테이션 기반 컨트롤러로 인식되기 때문에 Requestmappinghandlermapping가 핸들러를 조회합니다.(3) 이 조회한 핸들러를 처리할수 있는 어뎁터인RequestMappingHandlerAdapter가 핸들러를 호출(process()를 호출)합니다.먼저 이 과정이 맞는 궁금합니다.그리고 ModelAndView의 정확한 역할(?)이 궁금합니다.반환값으로 return new ModelAndView("new-form");을 하게 된다면 스프링에서 알아서 뷰 렌더링해서 new-form.jsp로 보내준다는 건가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
test.mv.db가 생성되지 않음
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]