inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

생성 메서드에 대한 질문있습니다.

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 강의 내용에서 Order 클래스에서 생성메서드를 만들었습니다. //==생성 메서드==// public static Order createOrder(Member member, Delivery delivery, OrderItem... orderItems) { Order order = new Order(); order.setMember(member); order.setDelivery(delivery); for (OrderItem orderItem : orderItems) { order.addOrderItem(orderItem); } order.setStatus(OrderStatus.ORDER); order.setOrderDate(LocalDateTime.now()); return order; } 위의 Order 클래스에서 만든 생성메서드를 OrderItem 클래스에서도 만든 이유가 궁금합니다. //==생성 메서드==// public static OrderItem createOrderItem(Item item, int orderPrice, int count) { // 생성메서드는 언제 사용해야하는지 질문 OrderItem orderItem = new OrderItem(); orderItem.setItem(item); orderItem.setOrderPrice(orderPrice); orderItem.setCount(count); item.removeStock(count); return orderItem; } OrderItem 클래스에도 생성메서드를 만들어준 이유가 연관관계에 있어서 "다"인 쪽에 만드는건가요?(예를 들어서, 연관관계 1대 다에서 다 쪽에 생성메서드를 만드는 것인지에 대한 질문입니다.)

  • 생성메서드
  • 김영한강사님
  • 강의
  • spring
  • 스프링
whdk333 댓글 2 좋아요 0 조회수 217

강의 내용중 궁금한 점 질문드립니다.

미해결

//==생성 메서드==// public static OrderItem createOrderItem(Item item, int orderPrice, int count) { OrderItem orderItem = new OrderItem(); orderItem.setItem(item); orderItem.setOrderPrice(orderPrice); orderItem.setCount(count); item.removeStock(count); return orderItem; } 이러한 생성메서드는 언제 사용하는건가요? 코드를 분석해보니 연관관계에서 다 대 1인 케이스에서, '다'쪽에서 생성 메서드를 사용하는 것 같은데 맞나요? 감사합니다.

  • 강의
  • 김영한강사님
  • 스프링
  • spring
  • 생성메서드
  • 질문
whdk333 댓글 1 좋아요 0 조회수 142

setter없이 생성메서드 생성하는 방법

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

안녕하세요 강사님, 서포터즈님들 JPA 실전까지 모두 완강하고 개인 프로젝트를 진행 중입니다. 강사님께서 강의 때 setter의 사용을 지양하라고 하셨는데, 생성메서드 생성 시 setter를 사용하지 않고 제가 짠 코드대로 해도 문제가 없을까요? --------- 생각해보니까 이것도 setter를 사용한거나 다름 없는 것 같은데, 생성메서드 생성할 때 setter없이 하는 방법이 있나요? @Id @GeneratedValue @Column(name = "fileId") private Long id; private String fileNm; private String path; private Long size; private String extension; private String fileType; @JoinColumn(name = "restaurantId") @OneToOne(fetch = FetchType.LAZY) private Restaurant restaurant; @JoinColumn(name = "menuId") @OneToOne(fetch = FetchType.LAZY) private Menu menu; //생성메서드 public static FileEntity createFile(FileEntity fileInfo) { FileEntity file = new FileEntity(); file.setFile(fileInfo.getFileNm(), fileInfo.getPath(), fileInfo.getSize(), fileInfo.getExtension(), fileInfo.getFileType()); return file; } public void setFile(String fileNm, String path, Long size, String extension, String fileType) { this.fileNm = fileNm; this.path = path; this.size = size; this.extension = extension; this.fileType = fileType; }

  • 생성메서드
  • setter
  • spring-boot
  • JPA
  • jpa
  • 웹앱
  • springboot
  • 생성메소드
  • spring
  • java
lkis71 댓글 1 좋아요 0 조회수 422

인기 태그

인프런 TOP Writers

주간 인기글