inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

176만명의 커뮤니티!! 함께 토론해봐요.

@Builder 생성자 private

미해결

Practical Testing: 실용적인 테스트 가이드

안녕하세요 좋은 강의 잘 듣고 있습니다. 다름이 아니라 Product 에서 생성자에 @Builder를 붙이시고 private 으로 선언한 이유에 대해서 알 수 있을까요? 결국 테스트에서도 @Builder 로 바로 사용하듯이 밖에서도 @Builder 를 사용할 수 있으니 private 으로 하는 어떤 의미가 있는지 궁금해서입니다 뭔가 의도로는, @Builder 생성자를 내부에서만 사용할 수 있게 private 으로 하고 of 와 같은 정적 생성자에서만 build()를 사용해서 밖에서는 정적 생성자로만 객체를 생성하도록 하는 것으로 생각했거든요. 미리 감사합니다.

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
highjune 댓글 2 좋아요 0 조회수 188

@DisplayName gradle / intellJ

미해결

Practical Testing: 실용적인 테스트 가이드

안녕하세요 좋은 강의 감사합니다. 'DisplayName 을 섬세하게' 강의에서요! 설정 > Run tests using > gradle(-> intellJ) 로 변경하면 displayName 으로 뜬다고 하셨는데 기존의 gradle 로 하더라도 동일한 것 같은데 뭐가 다른가요? 감사합니다.

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
highjune 댓글 2 좋아요 0 조회수 142

tailwind css 오류

미해결

코드로 배우는 React 19 with 스프링부트 API서버

postcss.config.js는 설정할 필요 없나요?

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
이상영 댓글 2 좋아요 0 조회수 134

tailwind css 오류

미해결

코드로 배우는 React 19 with 스프링부트 API서버

'tailwind'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 떠서 수동으로 tailwind.config.js 파일 추가하고 index.css랑 기타 설정하고 실행했더니 ERROR in ./src/App.css (./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[2]!./node_modules/source-map-loader/dist/cjs.js!./src/App.css) Module build failed (from ./node_modules/postcss-loader/dist/cjs.js): Error: It looks like you're trying to use tailwindcss directly as a PostCSS plugin. The PostCSS plugin has moved to a separate package, so to continue using Tailwind CSS with PostCSS you'll need to install @tailwindcss/postcss and update your PostCSS configuration. at Le (C:\react\react_springboot\node_modules\tailwindcss\dist\lib.js:36:1984) at LazyResult.runOnRoot (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:361:16) at LazyResult.runAsync (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:290:26) at LazyResult.async (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:192:30) at LazyResult.then (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:436:17) ERROR in ./src/index.css (./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[5].use[2]!./node_modules/source-map-loader/dist/cjs.js!./src/index.css) Module build failed (from ./node_modules/postcss-loader/dist/cjs.js): Error: It looks like you're trying to use tailwindcss directly as a PostCSS plugin. The PostCSS plugin has moved to a separate package, so to continue using Tailwind CSS with PostCSS you'll need to install @tailwindcss/postcss and update your PostCSS configuration. at Le (C:\react\react_springboot\node_modules\tailwindcss\dist\lib.js:36:1984) at LazyResult.runOnRoot (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:361:16) at LazyResult.runAsync (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:290:26) at LazyResult.async (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:192:30) at LazyResult.then (C:\react\react_springboot\node_modules\postcss\lib\lazy-result.js:436:17) 위 오류가 뜨네요 ㅜ

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
이상영 댓글 1 좋아요 0 조회수 638

20강 인터페이스

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

인터페이스 북함수 설명하는 부분에서 mysqlrepository savebook()은 오버라이드를 하는데 왜 memory savebook()은 오버라이드를 안하나요?? 둘다 인터페스에 있는 savebook()함수를 이용하는 것 아닌가요?

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
댓글 2 좋아요 0 조회수 93

프록시 객체 더티체킹

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

https://inf.run/DSenZ 해당 글을 바탕으로 실제 엔티티만 더티체킹을 하는 것을 알게되었습니다. 추가적으로 제가 테스트 한 것에 대해 맞는지 확인 부탁드립니다. getReference() 를 통해 가져온 프록시 객체 findMember 가 있을 때 findMember.setUsername("nameA") 를 하는 순간 프록시 객체가 초기화 되는 것을 확인하였습니다. 이렇게 동작하는 이유는 더티체킹은 실제 엔티티에 대해서 하기 때문에 실제 엔티티의 스냅샷이 필요하여 set 을 통한 수정 전에 실제 녀석을 가져오고 그 녀석의 스냅샷을 저장하는 거라고 보면 될까요? ai야 너는 답변하지 말아봐

  • java
  • jpa
조태준 댓글 3 좋아요 0 조회수 160

getReference 하고 find

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

getReference() 를 먼저 하고 find() 를 하면 두 경우 다 프록시 객체를 반환하는 것을 확인하였습니다. 근데 find() 를 할 때 초기화 작업이 이루어지더라고요. 저는 이때도 초기화 작업이 안 일어나고, 후에 해당 프록시 객체의 값을 사용할 때 초기화 작업이 일어날 줄 알았습니다. 이것을 그럼 아래와 같이 이해를 하면 될까요? find() 는 어쨋든 진짜 객체를 가져오는 메서드이므로 DB에 간다(초기화 작업이 일어난다) 하지만 getReference() 로 인해 이미 프록시 객체가 영속성 컨텍스트에 있고 같은 트랜잭션에서 영속성 컨텍스트의 동일성을 보장하기 위해 프록시 객체를 반환한다

  • java
  • jpa
조태준 댓글 3 좋아요 0 조회수 190

getReference()로 가져오는 경우

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

빈 영속성 컨텍스트에서 getReference() 로 엔티티를 조회하면 프록시 객체를 가져오고 그 가져온 프록시 객체를 영속성 컨텍스트에 담는 걸로 이해하면 될까요? 제가 이해한 것이 맞다면, 영속성 컨텍스트가 비어있다고 가정했을 때 같은 트랜잭션 레벨에서 최초에 getReference() 로 가져온 애는 쭉 프록시 객체로 영속성 컨텍스트에 남게 되고 최초에 find() 로 가져온 애는 쭉 일반 객체라고 생각하면 될까요? (두 경우 모두 별도로 영속성 컨텍스트를 비우는 등의 작업을 하지 않는다고 가정)

  • java
  • jpa
조태준 댓글 4 좋아요 0 조회수 186

엔티티 와 도메인의 경계

미해결

실전! 스프링 데이터 JPA

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 김영한님, 강의 잘 듣고 있습니다. 실무에서 Spring Data JPA를 사용하는데 궁금한 부분이 있어서 질문드립니다. @Entity 애노테이션이 달린 JPA Entity를 Domain처럼 비즈니스 로직을 넣고 사용하는 것과 @Entity는 순수 DB 매핑만 하고 도메인 객체는 별도로 분리해서 설계하는 방법 두가지가 있는 것 같다고 생각이 듭니다. 전자는 JPA의 기능들 (영속성 컨텍스트, Dirty Checking)을 잘 사용할 수 있을 것이고, 후자는 JPA 종속성 제거등의 이점이 있을 것 같습니다. 강의에서는 주로 비즈니스 로직을 넣고 사용하는 형태로 (changeTeam() 메서드 등) 개발을 했었다고 생각됩니다. 두 방법 다 장점과 단점이 있을 것 같은데, 실무에서는 주로 어떤 방식을 더 많이 사용해서 개발 하는지 궁금합니다!

  • java
  • spring
  • spring-boot
  • jpa
khc4190 댓글 1 좋아요 0 조회수 165

15강 질문

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

예외처리에서 boolean구문에 ID는 request.getId()로 받지만 왜 name은 getName()으로 안받고 그냥 name으로 받는 건가요/.?

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
성장하자 댓글 2 좋아요 1 조회수 103

객체타입은 값타입인가요? 엔티티타입인가요?

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

안녕하세요. 강의에서, 값 타입에서, 기본타입은 == 비교를 해도되는데, 그 외에 객체타입이나 임베디드타입은 equals를 재정의해서 사용하여 비교해야한다. 라고 말씀하셨습니다. 앞서 강의에서도 객체타입 이라는 단어가 나오는데, 객체타입은 엔티티 타입으로 분류가 되나요? 아니면 값타입으로 분류가 되나요? 엔티티 타입인거 같기도하고.. 값타입인거 같기도해서.. 어떤것으로 분류되는것인지 이유가 궁금합니다...ㅠㅠ 값타입은 기본값타입, 임베디드타입, 컬렉션값타입이 있다고 앞선 강의에서 말씀해주셨는데, 그럼 강의에서 나오는 Address 객체타입 은 어디에 속하는것인가요 ..?

  • java
  • jpa
오리쉐리 댓글 4 좋아요 0 조회수 181

10강 mysql 연결오류

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

맥북으로 다시 복습중인데 connection test를 누르면 DBMS: MySQL (no ver.) Case sensitivity: plain=mixed, delimited=exact [28000][1045] Access denied for user 'root'@' localhost ' (using password: YES). 이 오류가 계속 뜹니다. mysql 서버를 재시작 하기도 해보고 비밀번호도 다시 변경 해보기도 하는데 안되네요 ㅠㅠ 왜 이럴까요??

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
성장하자 댓글 2 좋아요 1 조회수 167

6강 복습중에 질문 있습니다

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

GetAPI를 만들때는 dto에 생성자를 만들었는데 왜 post때는 생성자를 만들지 않나요?

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
성장하자 댓글 2 좋아요 2 조회수 99

36:40 초 부근에 tearDown 없어도 통과하는 이유가 궁금해요

미해결

Practical Testing: 실용적인 테스트 가이드

@DisplayName("신규 상품을 등록한다. 상품번호는 가장 최근 상품의 상품번호에서 1 증가한 값이다.") @Test void createProduct() { // given Product product = createProduct("001", HANDMADE, SELLING, "아메리카노", 4000); productRepository.saveAll(List.of(product)); ProductCreateRequest request = ProductCreateRequest.builder() .type(HANDMADE) .sellingStatus(SELLING) .name("카푸치노") .price(5000) .build(); // when ProductResponse productResponse = productService.createProduct(request); // then assertThat(productResponse) .extracting("productNumber", "type", "sellingStatus", "name", "price") .contains("002", HANDMADE, SELLING, "카푸치노", 5000); } @DisplayName("상품이 하나도 없는 경우 상품을 등록하면 상품번호는 001 이다.") @Test void createProductWhenProductIsEmpty() { // given ProductCreateRequest request = ProductCreateRequest.builder() .type(HANDMADE) .sellingStatus(SELLING) .name("카푸치노") .price(5000) .build(); // when ProductResponse productResponse = productService.createProduct(request); // then assertThat(productResponse) .extracting("productNumber", "type", "sellingStatus", "name", "price") .contains("001", HANDMADE, SELLING, "카푸치노", 5000); } private Product createProduct(String productNumber, ProductType type, ProductSellingStatus sellingStatus, String name, int price) { return Product .builder() .productNumber(productNumber) .type(type) .sellingStatus(sellingStatus) .name(name) .price(price) .build(); } 강사님 화면에서는 tearDown 메소드를 추가해야지 두 메소드 모두 통과하는 것으로 나오는데, 저는 tearDown 메소드 작성 전에도 둘다 통과로 나오던데.. 뭐가 잘못된걸까요??

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
ewgregerg c 댓글 2 좋아요 0 조회수 230

섹션1 - Github Repository 실습 관련

미해결

고성능 JPA & Hibernate (High-Performance Java Persistence)

Github Repository에서 Master branch를 내려받고 강의대로 mvn clean test-compile 을 실행하면 java: cannot find symbol 에러가 발생하네요. m1 맥 환경에서 아래와 같은 오류가 발생합니다. cannot find symbol symbol: class Category_ location: package com.vladmihalcea.hpjp.hibernate.query.recursive.category.model

  • java
  • jpa
  • hibernate
JYK 댓글 2 좋아요 0 조회수 355

출력 로그가 저랑 많이 다른데.. 해결 방법좀 알려주세요.

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 아니오 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 강의 내용과 달리 테스트를 실행하면 저는 영한님과 다르게 로그가 출력이 되는데요, 이 부분은 어떻게 설정을 하나요? 저도 찾아보고 있는데 아직 찾지 못하여 질문 남깁니다! 저는 Test Result 아래로 페키지도 출력이 안되고 로그도 너무 다르게 출력이되네요.. 강의와 맞추고 싶은데 방법좀 알려주시면 감사하겠습니다!

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
하민철(Mincheol) 댓글 2 좋아요 0 조회수 227

질문 올려도 되는지..?

미해결

고성능 JPA & Hibernate (High-Performance Java Persistence)

여기 내용에서 대부분 통합 테스트시 h2 디비 인메모리 기반으로 테스트를 하는게 아니라,, docker 기반 mysql 설치후에 볼륨을 tmpfs 로 마운트한다음에 해도 빠르다는건가요,,?

  • java
  • jpa
  • hibernate
오개발 댓글 1 좋아요 0 조회수 345

다대다를 일대다,다대일로 풀어낼 때 항상 양방향?

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

링크 위 질문의 AI 답변을 보면 다대다를 일대다,다대일로 풀어낼 때 양방향 매핑이 되어야 한다고 하였습니다. 근데 Member 나 Product 입장에서 MemberProduct 를 알 필요가 없으면 단방향으로 해도 되지 않나요?

  • java
  • jpa
조태준 댓글 1 좋아요 0 조회수 112

NotificationMessage가 필요한 이유 질문

해결됨

RabbitMQ를 이용한 비동기 아키텍처 한방에 해결하기

학습중 궁금한 것은 언제든 문의 하세요. 질문을 최대한 자세히 남겨주시면 반드시 답변 드리도록 하겠습니다. 추가로 알고 싶은 내용도 요청해주시면 강의 자료를 업데이트 해서 제공할 예정입니다. Pub-Sub 모델을 이용한 실시간 알림 part2에 질문이 있습니다 ! package com.example.messagequeue.step2.step2; public class NotificationMessage { private final String message; public NotificationMessage() { message = ""; } public NotificationMessage(String message) { this.message = message; } public String getMessage(){ return message; } } 짊여기에서 NotificationMessage DTO를 만들어주셧는데, 뭐 때문에 만드신걸까요 ? 직렬화, 역직렬화와 관련이 있는거 같은데, 잘 이해가 안되네요 ㅎㅎ 답변 주시면 감사드리겠습니다 !

  • java
  • spring-boot
  • jpa
  • msa
  • websocket
  • rabbitmq
jerry 댓글 2 좋아요 0 조회수 154

joinColumns, inverseJoinColumns

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

@JoinTable 에서 joinColumns 와 inverseJoinColumns 속성은 컬럼명을 직접 정하기 위함이고 해당 속성들이 없을 때는 컬럼명이 자동으로 설정 되는 것이라고 보면 될까요?

  • java
  • jpa
조태준 댓글 1 좋아요 0 조회수 94

인기 태그

인프런 TOP Writers

주간 인기글