강의

멘토링

로드맵

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của suhani931081
suhani931081

câu hỏi đã được viết

Trong thực tế! Sử dụng Spring Boot và JPA1 - Phát triển ứng dụng Web

Đăng ký sản phẩm

상품 등록시에 데이터 받는 로직

Viết

·

281

0

안녕하세요
따로 공부하다가 궁금한 점이 생겨서 질문 남깁니다.

item에서 InheritanceType.JOINED 를 사용하게 되면 화면에서 컨트롤러로 Form data를 받아와서 처리하는 로직은 어떤식으로 구현을 하는게 효과적인가요? 

예를들면 
formData에 타입을 넣어줘서 if else문으로 각각에 맞는 


Controller(formData){
if(formData.getType equals "B")

persist( new B(formData.a formData.b , formData.c))

else if ("A") 

persist( new A(formData.dd formData.gg )

else if ~~~~

}

이런식으로 전부 빼야 하나요??

만약 위와 같은 상황이라면 타입이 엄청나게 많아지는 경우 무한if else을 쓰기는 좀 비효율적인 코드가 될 거 같아서 질문드립니다.

spring-bootjava웹앱springJPA

Quiz

61% người trả lời sai. Hãy thử ngay!

회원 가입 시 화면 입력 데이터를 엔티티 객체 대신 별도의 Form 객체로 받는 주된 이유는 무엇일까요?

데이터베이스 성능을 최적화하기 위해서

화면 종속적인 데이터나 유효성 검증 로직을 분리하기 위해서

JPA 영속성 컨텍스트와 직접적인 관계를 맺기 위해서

코드의 자동 생성 기능을 활용하기 위해서

Câu trả lời 2

2

yh님의 프로필 이미지
yh
Người chia sẻ kiến thức

안녕하세요. suhani93님

요구사항과 상황에 따라서 조금씩 다르겠지만, 책이나 앨범처럼 다른 상품을 등록할 때는 비슷하지만 다른 UI를 사용할 가능성이 높습니다. 다른 검증코드도 사용하구요.

이런경우 컨트롤러 메서드와 view 자체를 a,b,c 각각 전용으로 분리하는게 더 나은 선택일 확율이 높습니다. 폼도 각각에 맞도록 분리하구요.

도움이 되셨길 바래요.

1

suhani93님의 프로필 이미지
suhani93
Người đặt câu hỏi

도움이 많이 된거 같습니다. 답변 감사합니다!

Hình ảnh hồ sơ của suhani931081
suhani931081

câu hỏi đã được viết

Đặt câu hỏi