묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
@OneToMany 가 여러 개 갖고 오고 @ManyToOne 이 하나만 가져오는 건가요?
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발섹션 2. 도메인 분석 설계엔티티 설계시 주의점이 부분 듣고 있는데@OneToMany 가 여러 개 갖고 오고 @ManyToOne 이 하나만 가져온다고 했는데OneToMany 는 Many 에서 한개니까 한개 갖고 오는 것 아닌가요..?
-
미해결
김영한쌤 jpa 연관관계 메서드 부분에서 this.child.add(); 이게 왜 부모 컬렉션인가요?
이 부분인데 실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발섹션 2. 도메인 분석 설계엔티티 설계시 주의점 25:45 여기 부분인데요this.child.add(); 여기가 왜 부모 컬렉션 부분인가요??주석은 쌤이 마우스로 가리키면서 설명한 것을 그대로 적은 겁니다 !
-
미해결실전! 스프링 데이터 JPA
엔티티, DTO 유효성 검사 관련 질문드립니다!
https://www.inflearn.com/questions/548289/%EC%97%94%ED%8B%B0%ED%8B%B0-dto-%EC%9C%A0%ED%9A%A8%EC%84%B1-%EA%B2%80%EC%82%AC%EC%97%90-%EB%8C%80%ED%95%B4-%EC%A7%88%EB%AC%B8-%EB%93%9C%EB%A6%BD%EB%8B%88%EB%8B%A4안녕하세요 강사님!위 질문글을 보고 이유에 대해 궁금증이 생겨서 질문 드립니다!"엔티티, DTO를 둘 다 유효성 검사를 하나요?" 라는 질문에 대해서"저는 주로 파라미터로 넘어오는 DTO에 유효성 검사를 선호하는 편입니다."라고 답변 주셨는데 혹시 그 이유를 알 수 있을까요? 그러면 RequestDto에서만 유효성 검사를 해주고Entity에는 validation관련 어노테이션 같은 걸 따로 안해주시는 건가요? 이유가 궁금합니다!
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
수업 정답코드좀 알려주세요
이부분 이거 말고도 소과제 있는 부분 전부 다 정답코드 어디에 있나요? 아무리 찾아도 안나와요 자세한 경로좀 알려주세요
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
서비스 계층에서 삭제시 @Transactional 사용에 관해
당연히 구글링 해보셨져? 원하는 결과를 못찾으셨나요? 어떤 검색어를 입력했는지 알려주세요.- 검색해보았으나, 원하는 결과를 찾지 못했습니다. 검색어: 서비스 계층에서의 @Transactional 사용 기준문제가 발생한 코드(프로젝트)를 Github에 올리시고 링크를 알려주세요. ``` java@Transactionalpublic void write(Long postId, CommentCreate request) {Post post = postRepository.findById(postId).orElseThrow(PostNotFound::new);Comment comment = Comment.builder().post(post).author(request.getAuthor()).password(request.getPassword()).content(request.getContent()).build();post.addComment(comment);}public void delete(Long commentId, CommentDelete request) {Comment comment = commentRepository.findById(commentId).orElseThrow(CommentNotFound::new);commentRepository.delete(comment);}```서비스 계층에서 댓글 작성의 경우 @Transational 적용했지만, 삭제의 경우 적용하지 않았는데 강의에서 이 두 경우의 차이에 대해 이해해야 하고, 찾아보라고 이야기해주셨습니다. 지금까지 제가 공부한 내용에 비추어보면 서비스 게층의 생성 및 삭제의 경우모두 @Transcational 어노테이션을 항상 사용해 왔습니다. 왜냐하면, 수정 삭제의 경우 하나의 트랜잭션에서 시작 및 종료되어야 하기 때문이라고 생각했습니다.구글링도 해보았는데, 납득할만한 이유를 찾지 못하여 호돌맨님 및 수강생분들에게 질문드립니다.
-
미해결Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
복사 단축키
안녕하세요 ! 도메인과 영속성 객체 구분하기 수업에서 1분 34초에서 UserEntity 에 있는 행을 복사하는데 이 때 나오는 단축키가 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
C( ) 를 묶는 이유
예시문제 작업형3(신 버전)종자는 문자데이터에 잘 매칭되어있지만, 비료는 범주형임에도 불구하고 현재 수치형 11 ..로 배치되어 있기 때문에 비료에만 C ( )를 붙여준다고 설명해주셨습니다.그러나 궁금한것은 "예시문제 작업형3(신 버전)" 타이타닉 로지스틱변환 문제에서 Gender가 male, female 인 object 데이터로 되어있으니 이를 수치형으로 바꾸신다고 C(Gender)를 해주셨는데요 그래서 제가 이번 이원분산분석 모델 만들때 비료에 C( )를 붙이지 않고 종자에만 C( )를 붙여보았습니다. 왜냐하면 비료와 토마토수 데이터들이 모두 수치형 데이터들이라 범주형 데이터인 종자 데이터들을 수치형으로 바꿔야 겠다고 생각했기 때문입니다. 그러나 C( )를 종자에 붙여서 model.summary 한 경우와 C ( )를 비료에 붙여서 model.summary한 경우의 계수나 p값 등이 다르더군요 질문1: 예시문제 작업형3(신 버전)에선 object형인 Gender에 C( )를 붙이시고, 이원분산분석에서는 object인 종자에 C( )를 안붙이신 이유가 궁금합니다
-
해결됨넓고 얕게 외워서 컴공 전공자 되기
강의자료 관련문의
올려주신 강의자료가 강의내용과 다른부분이 있는데.. 최신 자료를 받아 볼 수 있을까요?
-
해결됨[SQL Quest] 실전 문제 풀이로 SQL 역량 강화 하기 (Basic)
데이터베이스에 맞게 연결했는데, BAD-REQUEST라고 나옵니다..
data-whiz에 첨부해주신 json파일을 강의에서 언급한 부분대로, Database를 Connect했는데, 자꾸 Connect error가 뜨네요.. 어떻게 해야할까요[기타 질문]쿼리 작성 질문 외 강의에서 사용된 용어 등 다양한 질문들도 환영합니다. 편안하게 질문 부탁드립니다🙋♂️🙋♀️
-
미해결선형대수학개론
A가 mxn에서 1xn으로 변환하는 이유
강의 1.4에서 A가 mxn matrix였는데 왜 각각의 열벡터 a1,,,an으로 다시 변환하는지 이유가 있을까요?
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
서버사이드 렌더링 적용 후, css가 풀렸다가 다시 적용되는것 같아요.
안녕하세요!서버사이드 렌더링 적용후에 css가 풀렸다가 다시적용되는 것 같은데, 해결 방법이 있을까요?로그인 후 새로고침을 하면 잠깐 첫번째 화면이 보였다가 두번째 화면을 보여줍니다. 세번째 화면은 리덕스 상태입니다.서버사이드 렌더링을 해서 user와 post의 데이터는 잘 받아오고 있는것 같습니다.
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "실전편"
1:52 ESLINT 설정
ctrl+, -> 설정탭에서 eslint를 입력 하면 설정을 찾을수 없음이라고 나오는데 어떤 설정이 안된걸까요? 프로젝트 생성부터 영상그대로따라하여 생성했습니다.
-
미해결실전! 웹사이트제작! Step by Step! (대방산업_InteractiveWeb)
슬라이드 안 find out more 버튼 위치관련
강사님, 안녕하세요.슬라이드 안 find out more 버튼 스크롤 애니메이션이,가운데 정렬로 올라가는게 아니라, 오른쪽으로 치우쳐있다 가운데로 올라갑니다. css에선 left:50%; 되어 있던데 왜 그럴까요??(올려놓으신 수업 파일도 똑같은 현상입니다.)
-
미해결스프링 핵심 원리 - 기본편
스프링 컨테이너와 스프링 빈 섹터 질문있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]스프링 빈 조회 - 기본 1분 19초ac.getBean("memberService", MemberService.class);입력하면 자동으로 MemberService memberService=가 자동으로 입력되는데 어떻게 하신건가요? 스프링 빈 조회 - 동일한 타입이 둘 이상 3분 49초@Test @DisplayName("타입으로 조회시 같은 타입이 둘 이상있으면 중복 오류가 발생한다") void findBeanByTypeDuplicate(){ MemberRepository bean =ac.getBean(MemoryMemberRepository.class); }타입만 지정했다고 하셨는데 이게 무슨 뜻이에요? 3. 스프링 빈 조회 - 동일한 타입이 둘 이상-5분 49초에서아래와 같이 오류가 나는 위치가 아래인거는 알겠는데 정확히 이유가 뭔가요? 강의에서 아래와 같은 오류를 일부로 유발 시킨 건 알겠는데 클래스 타입이 같아도 에러 안난다고 했는데 왜 에러가 나나요?@Configuration static class SameBeanConfig{//static을 쓰는 이유는 ApplicationContextSameBeanFindTest 안에서만 사용하겠다. @Bean public MemberRepository memberRepository1(){ return new MemoryMemberRepository();//클래스 타입이 같아도 에러 안남. } @Bean public MemberRepository memberRepository2(){ return new MemoryMemberRepository();//클래스 타입이 같아도 에러 안남. } } org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.core.member.MemoryMemberRepository' available: expected single matching bean but found 2: memberRepository1,memberRepository2 스프링 빈 조회 강의 에서 질문이요.첫번째 테스트에 부분에 MemberRepository bean =ac.getBean(MemberRepository.class); 이걸 넣으면 아래와 같이 에러가 나는데요. 근데 이거는 bean에 할당하는건데 에러가 날 이유가 없지 않나요? 할당하는 것만으로도 왜 에러가 나는지 궁금합니다.package hello.core.beanfind; import hello.core.Appconfig; import hello.core.discount.DiscountPolicy; import hello.core.member.MemberRepository; import hello.core.member.MemoryMemberRepository; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.NoUniqueBeanDefinitionException; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import static org.assertj.core.api.AssertionsForClassTypes.assertThat; import static org.junit.jupiter.api.Assertions.assertAll; import static org.junit.jupiter.api.Assertions.assertThrows; public class ApplicationContextSameBeanFindTest { AnnotationConfigApplicationContext ac =new AnnotationConfigApplicationContext(SameBeanConfig.class); @Test @DisplayName("타입으로 조회시 같은 타입이 둘 이상있으면 중복 오류가 발생한다") void findBeanByTypeDuplicate(){ MemberRepository bean =ac.getBean(MemberRepository.class); assertThrows(NoUniqueBeanDefinitionException.class,() ->ac.getBean(MemberRepository.class)); } @Test @DisplayName("타입으로 조회시 같은 타입이 둘 이상있으면 빈 이름을 지정하면 된다.") void findBeanByName(){ MemberRepository memberRepository = ac.getBean("memberRepository1",MemoryMemberRepository.class); assertThat(memberRepository).isInstanceOf(MemberRepository.class); } @Configuration static class SameBeanConfig{//static을 쓰는 이유는 ApplicationContextSameBeanFindTest 안에서만 사용하겠다. @Bean public MemberRepository memberRepository1(){ return new MemoryMemberRepository();//클래스 타입이 같아도 에러 안남. } @Bean public MemberRepository memberRepository2(){ return new MemoryMemberRepository();//클래스 타입이 같아도 에러 안남. } } } No qualifying bean of type 'hello.core.member.MemberRepository' available: expected single matching bean but found 2: memberRepository1,memberRepository2 스프링 빈 조회 강의에서 8분 20초에 아래처럼 key와 value부분이 나뉘어져있는데 키는 메소드 이름인것 같은데 벨류는 뭔가요?스프링 빈 조회 - 상속 관계 3분까지 따라 쳤는데 실수로 제가 bean을 한개만 등록했는데 실행해보니 아래와 같은 에러가 나옵니다. 이거는 예외 상황이 발생하지 않아서 오류가 생긴걸로 이해해도 되나요?package hello.core.beanfind; import hello.core.discount.DiscountPolicy; import hello.core.discount.RateDiscountPolicy; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.NoUniqueBeanDefinitionException; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import static org.junit.jupiter.api.Assertions.assertThrows; public class ApplicationContextExtendsFindTest { AnnotationConfigApplicationContext ac =new AnnotationConfigApplicationContext(TestConfig.class); @Test @DisplayName("부모 타입으로 조회시, 자식이 둘 이상 있으면, 중복 오류가 발생한다. 빈 이름을 지정하면 된다") void findBeanByParentTypeDuplicate(){ // DiscountPolicy bean=ac.getBean(DiscountPolicy.class); assertThrows(NoUniqueBeanDefinitionException.class,()->ac.getBean(DiscountPolicy.class)); } @Configuration static class TestConfig{ @Bean public DiscountPolicy rateDiscountPolicy(){ return new RateDiscountPolicy(); } } }에러사항: org.opentest4j.AssertionFailedError: Expected org.springframework.beans.factory.NoUniqueBeanDefinitionException to be thrown, but nothing was thrown. 스프링 빈 조회 - 상속 관계 6분하위 타입으로 조회한다는것이 class TestConfig 에서 return new RateDiscountPolicy(); 이부분과 이름이 같은걸로 조회한다는걸로 이해해도 되나요?@Test @DisplayName("특정 하위 타입으로 조회")//안좋은 방법 void findBeanBySubType(){ RateDiscountPolicy bean=ac.getBean(RateDiscountPolicy.class); assertThat(bean).isInstanceOf(RateDiscountPolicy.class); } @Configuration static class TestConfig{ @Bean public DiscountPolicy rateDiscountPolicy(){ return new RateDiscountPolicy(); } @Bean public DiscountPolicy fixDiscountPolicy(){ return new FixDiscountPolicy(); } } 스프링 빈 조회 - 상속 관계 8분@Test @DisplayName("특정 하위 타입으로 조회")//안좋은 방법 void findBeanBySubType(){ RateDiscountPolicy bean=ac.getBean(RateDiscountPolicy.class); assertThat(bean).isInstanceOf(RateDiscountPolicy.class); }assertThat(bean).isInstanceOf(RateDiscountPolicy.class);위 코드에서 assert 부분이 아래와 같은 의미를 갖는거 같은데 인스턴스 검사는 왜하는거에요?rateDiscountPolicy가 RateDiscountPolicy 클래스의 인스턴스인지를 검사합니다. 스프링 빈 설정 메타 정보 마지막부분에서 아래처럼 말씀하셨는데요.스프링이 다양한 형태의 설정 정보를 BeanDefinition으로 추상화해서 사용하는 것 정도만 이해하면 된다.추상화라는게 아래 사진처럼 나열한다는것으로 이해하면되는건가요?(위 질문 사항에서 추가 질문)빈을 직접 등록한다는게 강의에서 appconfig파일에 나와있는것처럼 직접 등록하는건가요?public class Appconfig { @Bean public MemberService memberService(){ return new MemberServiceImpl(memberRepository()); //멤버서비스임플을 만들고 MemoryMemberRepository()만들어서 주입을 시켜줄꺼야. } @Bean public MemberRepository memberRepository() { return new MemoryMemberRepository(); } @Bean public OrderService orderService(){ return new OrderServiceImpl(memberRepository(),DiscountPolicy()); }//멤버레파지토리와 디스카운트폴리시 쓰는데 @Bean public DiscountPolicy DiscountPolicy(){ // return new FixDiscountPolicy(); return new RateDiscountPolicy(); }// 디스카운트 바꾸면 여기만 바뀌면 됨됨 } 11.컨테이너에 등록된 모든 빈 조회5분 34초에 보통Object bean = ac.getBean(beanDefinitionName); 이부분 Object object 로 설정하는데 bean으로 다시 설정한 이유가 있나요? 아래는 전체 코드입니다. @Test @DisplayName("애플리케이션 빈 출력하기") void findApplicationBean(){ String[] beanDefinitionNames=ac.getBeanDefinitionNames(); for (String beanDefinitionName : beanDefinitionNames) { BeanDefinition beanDefinition=ac.getBeanDefinition(beanDefinitionName);//빈에대한 정보들 if(beanDefinition.getRole()==BeanDefinition.ROLE_APPLICATION) { Object bean = ac.getBean(beanDefinitionName); System.out.println("name = " + beanDefinitionName + "object= "+ bean); } } } }
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링입문시 인텔리제이 버전 및 필요한 자바 개념
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요김영한님 자바 버전 스프링 입문시 자바 버전은 11로 해야 되는 것을 알 고 있습니다-다만 인텔리제이버전(커뮤니티,무료기준)은 무엇으로 해야 되나요 ?- 인텔리제이가 어떤 버전이든 상관없나요 ?참고로 저는 지금 2023년 2월(커뮤니티)버전 인텔리 제이를 사용 중입니다 .그리고 자바는 스프링 프레임워크에 필요한 개념들 위주로 공부중입니다 .<stream, 삼항 연산자, Optional, 어노테이션, 인터페이스, 업/다운 캐스팅, 다형성, 추상 클래스, 상속, 생성자, 오버라이딩, 오버로딩, Getter/Setter, exception/throw/catch/finally, 람다식, 제네릭, 접근제한자위주로요 >-이 앞의 정도의 <개념>이면 스프링프레임워크를 학습 시 큰 문제가 없을 까요 ? -혹시 김영한님의 오프라인부트캠프 신설 계획이 있으신가요 ?유튜브에서 김영한님의 영상을 잘 보았습니다늘 항상 좋은 강의 감사드립니다 .
-
미해결
수료증 내용에 회사명 추가 가능 여부 문의(CPPG CPE 등록 목적)
안녕하세요. SK쉴더스 김준형입니다. 인프런에서 수강한 강의의 수료증을 CPPG CPE 등록하려고 하니 수료증에 회사명 없이 이름만 표기되어 CPE 등록이 불가능하다는 답변을 받았습니다.현재까지 제가 수강한 모든 강의의 수료증에 회사명을 추가할 수 있는지 확인 부탁 드립니다.감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
h2 db 파일 생성 안됨
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.강의와 강의 자료를 바탕으로 해도 계속 이런 에러가 발생합니다.db 파일이 제대로 생성되지 않아서 생긴 오류일까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
강의 소제목에는 비대칭키를 활용한 암호화라고 되어있는데
apiEncryptionKey.jks (개인키)와 이에 파생된 public.key (공개키)를 생성한 것 까지는 이해가 되었습니다.강의중 encrypt/decrypt 를 하는 과정에서 모두 apiEncryptionKey.jks (개인키)를 사용한 대칭키 방식을 사용한 것 같은데 비대칭키 전략을 사용하는 부분이 있나요? 아니면 비대칭키를 추후에 활용할 수 있도록 파생키를 생성하는 방법을 알려주신건가요?java key store를 통해 구성정보의 암/복호화에 대칭키 방식을 사용한건지 비대칭키 방식을 사용한건지 궁금합니다.
-
미해결AWS(Amazon Web Service) 입문자를 위한 강의
WINDOWS에서 실습하는데 따라가기 너무 어렵습니다.
[6-3] CloudWatch 실습 강의를 보고 있습니다.WINDOWS와 MAC의 실습 환경이 달라 따라가기가 어렵습니다.WINDOWS에서 실습할 수 있도록 관련 자료를 PDF나 영상으로 만들어주셨으면 좋겠습니다.실습을 따라하는 시간보다 실습을 진행하기 위해 구글링으로 찾아보는 시간이 더 오래 걸립니다.
-
해결됨카카오 퇴사자가 누설하는 [웹개발자 취업 비밀노트]
포트폴리오 관련하여...
예시로 보여주신 포트폴리오가 너무 깔끔한데 노션으로 만드신건가요?아니더라도 혹시 양식을 받을수 있을까요?