묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
도메인 모델패턴과 트랜잭션 스크립트 패턴의 유용성 비교
강의에서 도메인 모델 패턴이라고 무조건 좋은게 아니고 트랜잭션 스크립트 패턴이라고 무조건 나쁜게 아니다, 라고 하셨는데 도메인 모델 패턴과 트랜잭션 스크립트 패턴 각각 어떤 상황에서 사용하면 더 유용한지 궁금합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
변경감지 update
강의에서 jpa의 진가가 update 쿼리를 안날려줘도 되는 것에 있다. 라고 말씀하셨는데 설명하시면서 jpa가 아니라 직접적으로 쿼리를 다루게 되면 이걸 다 빼서 update을 해줘야하고... 이런식으로 말씀하셨는데 이게 이해가 안갑니다 ㅠ_ㅠ 변경감지 자체는 알겠어요 근데 jpa를 쓰지 않았을 때에 이걸 다시 빼서 update 쿼리를 날려줘야 한다는게 무슨 뜻인지 모르겠어요. jpa를 사용하지 않으면 어디 클래스에서 update을 개발자가 해줘야 하나요? 그리고 이게 약간 코드가 더러워지는? 뉘앙스로 얘기하시는걸로 이해했는데 이런 의도가 맞는지 궁금합니다.
-
미해결스프링 핵심 원리 - 기본편
@Component로 등록한 빈을 조회하는 방법은 어떤게 있나요?
@Component로 등록한 빈을 조회하는 방법은 어떤게 있나요?궁금합니다. 아래와 같은 코드가 아니라 다른 클래스를 이용해야 하나요?AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class );
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
@GeneratedValue 전략 중 IDENTITY와 SEQUENCE 특징에 대해 질문 드립니다.
기본 키 매핑 강의를 수강하다 키 생성 전략과 관련해 궁금한 점이 있어 질문 드립니다. IDENTITY 전략을 사용할 경우 키 값이 DB에 삽입된 이후에 생성되기 때문에, 트랜잭션 커밋 시점이 아닌 em.persist()를 호출할 시점에 쿼리를 DB로 전송한다고 하셨는데요.혹시 이 경우, 문제가 생겨 트랜잭션이 rollback 되는 경우 해당 insert문도 같이 rollback이 될까요? SEQUENCE 전략에서 auto-ddl 설정을 사용하지 않을 때에도 @SequenceGenerator 을 사용하여 기존에 사용 중인 DB 시퀀스와 매핑 시킬 수 있나요??어노테이션의 이름이 Generator라고 지정되어 있어 auto ddl을 사용하는 경우에만 해당 어노테이션이 유효한 건지에 대해 헷갈리더라구요..만약 기존에 DB에서 사용중이던 시퀀스와 매핑시키기 위해서는 @SequenceGenerator 의 SequenceName 속성만 잘 매칭시키면 성능 최적화 등의 전략을 사용할 수 있는 거겠죠..?? 또한 SEQUENCE 전략 사용 시 성능 상의 이슈를 해결하기 위해 allocation을 50과 같이 큰 값으로 할당하여 DB 상에서 한 번에 크게 올리고 메모리에서는 1씩 가져다가 사용하는 방식에 대해 설명 해주시면서 동시성 이슈가 없다고 설명해 주셨는데요! 여러 대의 was와 서로 다른 서버에서 기동되어 메모리가 공유되지 않는 상황에서도 동시성 보장이 가능한 것인가요??...
-
미해결스프링 핵심 원리 - 기본편
@Configuraion에 빈 등록 name이 소문자로 되는 이유가 궁금합니다.
@Configuraion에 빈 등록 name이 소문자로 되는 이유가 궁금합니다.@Bean으로 등록하면 메서드명으로 빈네임이 등록되는건 알았습니다.AppConfig에 @Configuraion 어노테이션을 썻을때 빈 이름이 appConfig로 등록되는 이유가 있을까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
왜 addStock, removeStock 메서드를 사용하는 것이 왜 객체지향적인지
강의에서 setter 메소드로 재고 수량을 조절하는게 아니라 addStock 메서드, removeStock 메서드를 이용해 재고 수량을 조절하는 것이 객체지향적이라고 하셨는데 왜 이게 객체지향적인지, setter 메소드를 사용하는 것이 왜 객체지향과는 거리가 있는 것인지 자세하게 설명 부탁드립니다. 감사합니다
-
해결됨자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
안녕하세요. 대입문에 조건문이 들어갈 때, 변수 타입이 결정되는 방식에 대해서 질문이 있습니다.
안녕하세요. 강사님코틀린 질문이 있습니다. 코틀린은 정적타입 언어로 알고 컴파일 시점에 변수의 타입이 결정되는 것으로 알고 있습니다. 또 코틀린은 if-else문과 같은 조건을 표현식으로 사용하는 것으로 압니다.그래서 다음 처럼 조건식을 넣고 사용자 입력에 따라 정수/실수를 결정해서 할당하니 다음처럼 입력에 따라 정수일 수도 있고 실수일 수도 있습니다.마치 런타임 시점에 결정되는 듯이 보이는데, 내부적으로 어떻게 처리되는 것인지 궁금합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
인터프리터 지정이 안돼요
여러 사람들이 글 남겼던데똑같이 해도 지웠다 깔아도 다른 컴에서 해도 인터프리터 지정이 안 됩니다 이런 경우 강의 못 듣나요?? 아톰으로 해서 들어도 되는건가요?
-
미해결게임 프로그래머 취업 전략 가이드
학원을 다시 다녀야 하나 고민입니다
s학원에서 사비과정 1년 + 국비 6개월(겹쳐서 들었습니다) 총 1년을 다녀서 유니티 포트폴리오를 하나 만들었고 최근에 취업 준비를 하던 사람입니다.결론적으로 개인의 실력이 부족하다고 판단해(스스로 봤을때 용게임보다 낫지 않다고 판단됩니다) 더 공부를 해야겠다고 결정한 상황인데 서울로 올라가 ㅈㅅ을 다녀야 하나 고민중인 상황입니다.1년정도 학원을 다녔다면 스스로 공부할것을 찾아서 독학을 하는 방향이 낫다고 생각하시는지 아니면 그럼에도 학원을 다니는 것이 낫다고 생각하시는지 질문을 드려봅니다.만약독학을 한다면
-
미해결실전! Querydsl
실무에서 Entity간 객체 탐색을 사용하는 경우가... 있을까요?
안녕하세요. 먼저 질 좋은 강의 덕분에 새로운 기술을 배우고 서비스에 적용 시키며 보람을 느끼고 있습니다. 감사합니다.다름이 아니라 현재 Spring JPA +QueryDSL 로 개발을 하던 도중 소스를 다시 훑어 보니 문득 의아한 생각이 들었습니다.제가 개발 해 놓은 소스를 보다 보니 Query 시 객체 탐색을 통한 구현이 거의 이루지지 않았더군요. 그래서 왜 이렇게 개발을 했나 하고 생각 해보니각 client(ex:브라우저) 의 요구사항에 맞는 데이터를 각 Entity에서 조회를 해야하나 사용하지 않은 모든 컬럼의 데이터를 조회 하는 것에 대해서는 비효율적일 수 있다. (테이블 내 컬럼이 많아질수록... 컬럼 내 타입 사이즈가 커질수록...)이에 Entity를 자체를 조회가 아닌 QueryDSL의 on 절 및 Projection을 통해 성능 향상을 이룰 수 있다.그러다 보니 기능 동작 관점에선 각 Entity간 연관관계를 통해 탐색을 거의 하지 않게 된다.결국 이런 결론에 도달하게 되었는데요. 이러다 보니 초기 강의를 들으면서 적용 했던 소스와는 달리 현재는 대부분 객체간의 연관관계를 설정하더라도 객체 탐색을 쓰지 않게 되고 있습니다.그 외에도 개인적인 생각이지만 객체 탐색을 통해 실무에서 주니어분들이 의도치 않은 성능 저하를 (n : 1 등) 일으킬 수 있어서 지양하는 대신, 정말 작은 규모의 테이블 하나만 조회 할 때 빼고는 사용을 안하는 방향으로 개발을 진행하고 있는데 이게 jpa의 기능을 절반 떼어버리는 듯한 느낌이 들어서 잘 이해한건지 불안불안 합니다.그래서 혹시 실무에서는 객체 탐색을 하는 경우가 있으신지 있다면 어느 케이스일 때 사용하는지 궁금합니다.그리고 객체 탐색 시 필요한 컬럼만 조회 하는 기능이... 있을까요?? 있다면 이런 질문을 드리지 않았을 거 같긴한데... 찾아 봐도 잘 안나오더군요ㅠ
-
해결됨파이썬/장고로 웹채팅 서비스 만들기 (Feat. Channels) - 기본편
안녕하세요 실습 6:16 부분에서 오류가 발생합니다.
LG+ 사용중입니다. 해결 방법이 있을까요??
-
해결됨[코드캠프] 훈훈한 Javascript
수업 내용 질문은 아닌데, 테마...
안녕하세요 :)강의 너무 잘 듣고 있습니다.선생님이 쓰시는 vscode 색 테마가 눈도 안 아프고 좋은데 뭔지 알 수 있을까요? 감사합니다!
-
미해결스프링 배치
트랜잭션 범위 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요,TaskletStep - 개념 및 API 소개 수강하면서 궁금한 점이 있어 여쭤보고자 합니다. TaskletStep의 경우 트랜잭션 경계 내에서 수행되며, 따로 트랜잭션 처리를 하지 않아도 SpringBatch에서 알아서 트랜잭션 설정을 해주는 것으로 이해를 하였는데요. 만약, TaskletStep 내에 커스텀하게 만든 Tasklet 속에서 Service(@Transactional 어노테이션이 붙은)를 호출하게 된다면, 이 서비스 로직은 TaskletStep의 트랜잭션 내에 트랜잭션이 또 생겨서 독립적으로(?) 움직이는 것인지 궁금합니다. 답변 기다리겠습니다. 감사합니다.
-
미해결스프링 배치
안녕하세요. 질문드립니다.
안녕하세요. 강의 잘 듣고 있습니다.사소한 부분일 수 있지만 ppt 56 페이지 도식에서 StepExecutionID 가 5인 StepExecution은 StepExecutionID 3에서 성공했으니 생성되지 않는게 아닌가요 ?제가 잘못 생각하고 있는 거라면 답변 부탁드립니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Jpa 를 이용하면 자바 객체를 pojo하게 가져갈 수 있나요?
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]🧶 상황 설명 : spring jdbc 로 구현중입니다. 엔티티 객체와 도메인에서 사용하는 객체를 분리했습니다.. 영속성 중간에 converting 해주는 과정이 있습니다.🧶 이렇게 구현한 이유 : 도메인 객체는 순수 자바로만 이루어지게끔 하고 싶었어요. 다른 기술이나 영속성 관련 정보 (@Table, @Id)등의 부가정보와 의존성을 해당 도메인 레어어와 객체에 넣고 싶지 않았습니다. 🧶 그래서 질문 :Jpa 를 이용하면 POJO 하게 사용하는 것을 포기해야하나요?방법이 있을까요?POJO 하게 사용한다는 것이 어떤 거라고 생각하세요?분리없이 하나의 객체로 사용하는 것과 도메인과 레포지토리 객체를 분리하여 POJO 하게 지키는 것 중 어느 것이 더 낫다고 생각하세요?
-
미해결Power BI 데이터 분석과 시각화
값 (Y축) 표시 단위
전월세 데이터로 만든 바 그래프를 보면 값 (Y축)의 표시 단위가 10억으로 되어 있는데 1억으로 바꿀 순 없나요? 표시 단위 항목을 보니 억 단위는 없는데 항목에 없는 표시 단위를 사용할 수는 없는 것인지 궁금합니다.
-
미해결따라하며 배우는 리액트 A-Z[19버전 반영]
클래스명 __ 사용 이유에 대해 질문드립니다.
클래스명 사용 시 아래와 같이 언더바 두 개를 사용하셨는데 특별한 이유가 있는지 궁금합니다.className="nav__input"
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
jpa EntityManager 빨간줄
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]SpringConfig의 EntityManager em에서 빨간 줄이 생깁니다.다른 질문 글들을 읽어보니 H2 데이터베이스를 사용하면 빨간 줄이 생기지 않는 거 같은데저는 AWS의 RDS mysql을 연결했습니다./resource/appication.property입니다.em에서 빨간 줄이 생기지만 실행해보면 정상적으로 회원가입, 회원목록 조회가 되긴 되는데h2 DB가 아니라 RDS의 mysql을 사용하면 왜 em에서 빨간 줄이 생기는지 알고 싶습니다.그리고 김영한님의 다른 jpa강의도 듣고 싶은데 H2가 아니라 mysql을 사용하면 강의 수강에 무리가 있을까요 ?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
yarn dev 실행 시 새로고침 미실행 오류에 대한 질문
포트폴리오 섹션 01의 UI 작업을 수행하던 도중 궁금한 점이 생겨 질문드립니다. css의 설정이 변경되면 새로고침되면서 설정에 맞게 바뀌어야 하는 게 맞습니다. 하지만 제가 작업하다 보면 css가 잘 적용되다가도 자주 중간에 wait-compiling이 계속 이어지며, 그런 도중 새로고침 (ctrl+f5랑 그냥 ctrl 둘 다)을 하면 설정한 화면과 저 아래 새로고침 영역이 사라지고 화면에 Internal Server Error가 출력되고 결국 다시 yarn dev를 새 터미널을 열어 실행시켜야 합니다. 이 문제를 어떻게 해결할 수 있을까요? 사진은 제가 페이지가 잘 만들어졌나 테스트를 위해 핑크로 글자를 만든 것이고, 핑크색을 적용하는 css를 빼고 다른 설정을 넣었는데도 화면은 로딩중이라고 계속 뜨며 화면 변화도 없는 상황입니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Entity 내의 로직들, 생성 함수에 대한 질문
안녕하세요! 간단한 질문이 있어서 살짝 남겨보게 되었습니다. 1. 지금까지 JPA 강의를 들으면서 - "Entity 에는 Setter 를 열어두지 말고, Getter 만 열어둔채, 초기값 Setting 에는 생성자를 사용하라. 그리고 변경에 대해서 setter 가 필요하다면 그 때 열어두고, 연관관계에 대해 수정시 setting 외의 로직을 수행해야 하기 때문에 change, modify 등의 수식어를 사용해서 함수를 만들어라 ". 정도로 이해하고 있었습니다. 이 관점에서 createOrder() 함수는 설명해주신대로 그냥 Order 을 생성해주는 함수고, 초기값을 setting 해주는 함수인데, 이게 생성자와 어떤 점에서 다른지 이해가 잘 되지 못했습니다. public Order(Member member, Delivery delivery, OrderItem ... orderItems){ this.member = member; this.delivery = delivery; ... OrderItem for 문 this.status = OrderStatus.ORDER; this.orderDate = LocalDateTime.now(); }위처럼 그냥 생성만 해주는 함수와 어떤 차이가 있는지 이해를 못하였습니다 ㅠㅠ2. 비즈니스 로직들을 Service 단에서 수행하지 않고, Entity Class에서 모두 짜는 이유가 잘 이해가 되지 않았습니다 ㅠ 애를 들면 cancel() 의 명령어 같은 경우, ~~ /orderItem/cancel/3 이런식으로 들어오게 된다면, Service Layer 에서 OrderItem 조회하고, Repository 를 호출하며 Order에 대한 \ 필요 로직 수행, Item에 대한 필요로직 수행을 하는것으로 생각을 했어서 그런 것 같습니다. 지금 현재 강의 부분과 같은 설계는 약간 영속성 컨텍스트를 계속 관리하면서 필요 SQL들이 자연스럽게 호출되게 하는 방식인 느낌인데 이런 방향이 맞을까요?