묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 데이터 JPA
DTO 조회하기 n+1오류
강의 내용은 간단하게 설명해주셧는데1.OneToMany의 경우나 n+1문제가 발생할 경우는 어떻게 해결하나요?2.강의에서는 join만 썻는데 fetch join은 불가능한가요?
-
미해결스프링 핵심 원리 - 기본편
소멸 메서드의 호출 시점
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]SingletonBean.init singletonBean1 = hello.core.scope.PrototypeTest$SingletonBean@54504ecd singletonBean2 = hello.core.scope.PrototypeTest$SingletonBean@54504ecd org.springframework.context.annotation.AnnotationConfigApplicationContext - Closing SingletonBean.destroysingletonBeanFind()의 실행 결과입니다.결과를 보면 ac.close() 로 인해 스프링 컨테이너가 종료된 뒤(네 번째 라인), 싱글톤 빈의 종료 메서드가 호출됩니다. 제가 이해한 바로는 싱글톤 빈의 소멸 메서드는 스프링 컨테이너가 종료되기 전에 호출된다고 알고 있습니다. 그런데 출력 순서를 보면 반대로 되어있어서 왜 그런건지 모르겠습니다
-
해결됨스프링 핵심 원리 - 기본편
basicScan() 테스트는 통과되는데 설정된 빈 내역이 로그에 나오지 않습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]AutoAppConfigTest.java의 basicScan() 테스트 메소드는 잘 돌아가는데요.Test Passed라고만 뜨고 설정된 빈 내역들이 로그에 뜨지 않네요...빈들은 제대로 설정 됐는지 모든 테스트들은 패스가 되긴하는데ㅠㅠ...강의를 따라하면서 종종 선생님 로그와 다를때가 있긴 했는데 큰 문제는 되지 않아서 그냥 넘겼거든요.혹시나 따로 뭘 설정해줘야하는지, 아니면 제가 놓친게 있는 걸까요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
스프링 부트에서 트랜잭션 매니저, 데이터소스 리소스 자동 등록 시 Connection 얻는방법에 관한 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]제목내용처럼, 트랜잭션 매니저와, 데이터소스 리소스를 자동으로 등록된 걸 사용할때, 레포지토리에서 DataSource를 통하여 connection 객체를 불러올 때 DataSourceUtils.getConnection()를 사용해야하는지, 아니면 dataSource.getConnection()를 사용해야 할까요 ??
-
미해결스프링 부트 웹 개발 입문 - 따라하며 배우기
안녕하세요 section9 주문내역 검색에서 자꾸 오류가나네요
수업내용 V1,V2 와는 별개로 제가 V3로 다시 만들어서 수업을 따라서 진행중인데, 주문내역에서 검색을 하면 저런 오류창이 뜨네요..ㅠ제 소스파일을 압축해서 구글링크로 걸어두겠습니다 한번만 봐주시면 감사할것같습니다!! https://drive.google.com/file/d/1f6M5tRzjpVYh6lloJEcaiquiP2y_DI6w/view?usp=sharing
-
미해결재고시스템으로 알아보는 동시성이슈 해결방법
격리수준과 동시성에 대해서 질문 있습니다!
안녕하세요! 강의 너무 잘들었습니다.강의를 들으면서 느꼈던 궁금증들이 있습니다.동시성 문제에서 락을 하는 이유는 트랜잭션의 격리 수준으로는 해결할 수 없기때문에 하는건가요? 아니면 격리수준을 높이면 성능이 안나와서 락킹을 하는 건지 궁금합니다.Redis가 인메모리라 빠른건 많이 들었는데 실제 개발 환경이면 Redis나 MySQL이나 클라우드 환경을 사용할텐데, 이게 클라우드 서버에서 인메모리를 사용한다는 건가요? Redis나 MySQL이나 네트워크 I/O가 발생하는 것은 같은데 차이가 많이 큰지가 궁금합니다!너무 궁금한 내용이라 답변해주시면 감사하겠습니다!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
@RequestParam, @ModelAttribute 파라미터받는방식
계속 강의를 듣던중에 @RequestParam,@ModelAttribute 가 파라미터를 받는 것으로 이해하고 있었습니다. 근데 여기서 html-form방식으로 메시지바디에 쿼리 파라미터 형식으로 전달하는데 @RequestParam은 url형식(/?xxx=xxx) 으로 전달받아야해서 오류가 나야되는거 아닌가요? @RequestParam도 html-form 형식으로 와도 정상작동하는건가요?
-
미해결스프링 핵심 원리 - 기본편
스프링3에 어떻게 깔아야할까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요. 인텔리제이가 비싸 스프링3에 스타터스트링에서 설정해놓은 파일을 다운받아 임포트 하려고 하는데 강의상 말씀하신 툴이 달라 어떻게 임포트 해야하는지 모르겠습니다 ㅜㅜ설명 부탁드립니다.
-
미해결스프링 부트 - 핵심 원리와 활용
Java 파일이 생성이 안됩니다..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]build.gradle 파일 오픈을 하면실행 로그 창에Unexpected lock protocol found in lock file. Expected 3, found 0.해당 오류문구가 뜨고이후, hello 패키지 밑에 hello.servlet 패키지 파일 안에 java 클래스 파일이 생성이 안되는데 어디서 잘못된 것인지 모르겠습니다..강의자료 소스파일을 다시 다운받아서 실행했는데도 오류는 계속 발생하는 상황입니다..추가로, 소스파일 내부에 강의 내용에서는 build 폴더가 따로 있는데, 제가 받은 강의자료 소스파일에는 build 파일이 없습니다.
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
/basic-objects url 매핑 함수에 대해 질문있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]/basic-objects 매핑 함수에는 HttpSession 밖에 없는데 어떻게 쿼리스트링을 html 에서 param 으로 바로 가져올 수 있는건가요?argument resolver 나 http 메시지 컨버터의 개입이 있어서 그런 것인가요??
-
해결됨스프링 핵심 원리 - 기본편
request 코스의 다음 http에서 나오겠죠..?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의에서는 되게 느낌 상 중요한데.. HTTP 섹션이랑 소제에는 안보여서.. 웹 브라우저 요청 흐름, 리다이렉션 이런 곳에서 나올려나요.. ㅎㅎ
-
미해결스프링 핵심 원리 - 기본편
구성정보 클래스에 @Configuration 이 없는 경우
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의 내용중 위와 같은 테스트 과정이 있습니다. 구성 정보인 PrototypeBean 클래스에 @Configuration 애노테이션이 없는 이유를 "@Bean으로 등록할 객체가 없기때문에 굳이 붙힐 필요가 없다." 라고 이해하면 되나요?
-
미해결스프링 핵심 원리 - 기본편
빈 스코프 강의 관련
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]빈 스코프 강의에서 싱글톤 스코프 빈 테스트 하는 도중에요 SingletonBean 클래스에 @Configuration 이나 @Bean 같은걸 붙이지 않았는데 위의 메소드에 new AnnotationConfigApplicationContext(SingletonBean.class); 를 해서 어노테이션을 붙이지않아도 자동으로 SingletonBean 클래스가 컴포넌트 스캔돼서 등록되는 게 맞나요?? 그리고 SingletonBean 객체는 new Annotation~(SingletonBean.class) 할 때 생기는게 맞나요? 그리고 @PostConstruct 가 붙은 함수는 getBean(SingletonBean.class) 를 할 때 스프링 컨테이너가 의존관계를 주입하고 나서 호출이 되는건가요?? 싱글톤 스코프 빈일때는 @PostConstuct 가 붙은 함수가 1번만 호출이 되는데 다른 곳에서 스프링 빈을 요구할때 스프링 컨테이너가 @PostConsturct 는 호출하지 않고 스프링 빈만 반환해 주는건가요??
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
13강에서 막혀서 문의드립니다
13강에서 이러한 오류가 떠서 해결해보려고 이것저것 시도해봤는데 영 안되서 문의드립니다 ㅠ해결방법에 대해 도움주시면 감사하겠습니다
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberServiceIntegrationTest 회원가입,중복회원가입 실패(bad SQL grammar)
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]문제에 대해 간략하게 이야기하자면 JdbcTemplateMemberRepository를 작성 후, 통합Test를 돌리는데 회원가입과,중복회원가입에서 오류가 납니다.아래는 해당 오류코드내용입니다.제가 오류코드를 읽어본 결과 이해한 바로는 회원가입 통합test소스에서 Join()에서 문제가 생겼고 MemberService에 join함수를 보니까 validateDuplicateMember()에서 findByName()에서 문제가 생겼습니다. jdbc템플린 레포지토리의 findByName()은 쿼리에서 뒤에 name을 필수로 받아야되는데 name이 안받아져서 생기는 문제같습니다.해당 문제가 발생할 수 있는 부분을 확인했습니다.근데 분명 테스트케이스에서 Member 객체 생성하고 setName을 해주었고 중복검사함수에서 member.getName()을 통해 String을 넘기고 있는데 왜 sql에서 identifier가 제외됬다고 나오는지 모르겠습니다...ㅠ문제가 발생하는 부분의 코드를 아래에 첨부합니다.결론)제가 생각한 부분에서의 오류가 맞는지 아닌지맞다면 어떤부분에서 잘못이 된건지ex) JdbcTemplateMemberRepo.findByName() 문법오류아니라면 어떤부분이 잘못된건지 궁금합니다...!
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
"런타임 예외는 문서화" 에 대해서
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요. 런타임 예외는 문서화에 대한 내용을 보고 적용하려던 중 궁금증이 생겨 질문드립니다.체크 예외의 경우 이미 클래스가 해당 예외에 대해 의존하기 때문에 자바독의 @throws를 통해 예외를 문서화하는데 문제가 없습니다.런타임 예외의 경우 의존하지 않는다면, 자바독의 @throws를 통해 런타임 예외임을 표시하면(예시의 JPA EntityManager 방식과 같이) 해당 예외에 대한 의존이 추가됩니다.이는 변경에 의해 영향을 받는 관계(의존)라고 볼 수 있는데, 어떻게 생각하시나요?
-
미해결토비의 스프링 부트 - 이해와 원리
초기 설정에서 질문 있습니다
제가 community version을 사용 중이라 이니셜라이져에서 파일 만들어서 오픈 하는 방식으로 프로젝트 생성을 했는데 404에러도 나오지 않고 컨트롤러를 만들어도 우측 상단에 런버튼이 작동 하지 않습니다. 혹시 다른 설정해야 할 부분이 있을까요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
실행 오류 관련 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]사진과 같이 설정을 한 후에 실행을 파일을 열었는데 계속해서 파일들이 빨간줄로 표시가 됩니다.실행 중지 시 'Execution failed for task ':HelloSpringApplication.main()'.> Build cancelled while executing task ':HelloSpringApplication.main()''오류가 뜹니다 bulid.gradle 설정은plugins {id 'java'id 'org.springframework.boot' version '2.7.13'id 'io.spring.dependency-management' version '1.0.15.RELEASE'}group = 'hello'version = '0.0.1-SNAPSHOT'java {sourceCompatibility = '11'}repositories {mavenCentral()}dependencies {implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'implementation 'org.springframework.boot:spring-boot-starter-web'testImplementation 'org.springframework.boot:spring-boot-starter-test'}tasks.named('test') {useJUnitPlatform()}이렇습니다!
-
미해결스프링 핵심 원리 - 기본편
빈 생명주기 콜백
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]빈 생명주기 콜백 강의를 듣고 있는데요 정확히 초기화 콜백이 뭔지 잘 이해가 되지 않아서요ㅠㅠ@Bean(initMethod = ~) 이렇게 초기화, 소멸 메서드를 지정할 경우 강의에서 보여주신 예시처럼 LifeCycleConfig 클래스를 보면NetworkClient networkClient = new NetworkClient();networkClient.setUrl(~);return networkClient;인데 setUrl 메서드가 수행되고나서 초기화 메서드인 init() 메서드가 수행되는 건가요??초기화 메서드는 객체가 생성되고 의존관계가 주입된 후 수행된다고 했는데 그게 정확히 언제를 말하는지 잘 모르겠어요ㅠㅠ 그리고 @Bean(initMethod = "init", destroyMethod = "close")라고 했는데요 저기있는 초기화, 소멸 메서드는 등록되는 빈의 타입(?)인 NetworkClient 클래스에 존재하게 해야되는건가요? 아님 다른 클래스에 있어도 쓸 수 있는건가요??
-
미해결스프링 핵심 원리 - 기본편
생성자 주입을 사용하는 경우 생성과 초기화의 분리
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요 :) 강의를 듣다가 초기화 시점에 대한 의문이 생겨 질문 드립니다. 먼저 객체의 생성과 초기화를 분리해야 한다는 말의 요지는 이해하였습니다!그런데 생성자 주입을 사용하는 경우에는 생성자 호출과 함께 의존관계가 주입된다고 배웠는데,이 경우에는 생성자 내에서 초기화를 함께 해도 정상적으로 초기화가 일어날 수 있는 것인가요? (객체에서 외부 API 연결 초기화 등의 작업을 해야 하는 경우)혹은 다른 권장되는 방법이 있다면 알려주시면 감사하겠습니다 !! 항상 좋은 강의 감사합니다 🙂