대상 지향 사상 으로 데이터 베 이 스 를 설계 하 다.
자, 본론 으로 들 어가 자. 다음 작은 예 를 먼저 보 겠 습 니 다.
//
public class Product{
private long productId;
private String category;
private String productCode;
private String productName;
}
// ,
public class RecommendProduct{
private String recommend_username;
private String recommend_date;
private Product product;
}
보통 저희 디자인 이 그래 요.
검색 을 통 해 List < RecommendProduct > 를 첫 페이지 로 되 돌려 줍 니 다. 작업 이 완료 되 었 습 니 다.
다음 과 같이 디자인 하려 면 합 리 적 이지 않 고 디자인 의 원칙 인 기능 단일 성 도 깨 뜨 렸 다.
//
public class Product{
private long productId;
private String category;
private String productCode;
private String productName;
//
private String recommend_flag;//
private String recommend_username;
private String recommend_date;
}
자, 이제 이 디자인 사진 을 데이터 디자인 으로 옮 겨 보도 록 하 겠 습 니 다.
제품 과 recommend 제품 을 한 장의 표 에 디자인 하면 다음 과 같 습 니 다.
제품 표
product_id number(12)
category varchar2(16)
productCode varchar2(16)
productName varchar2(32)
recommend_flag char (1) / / 추천 표지 위치
처음에는 그 랬 을 거 예요.
2 급 도 메 인 이름 의 첫 페이지 10 개 를 추천 하려 면 어떻게 합 니까?표지 필드 10 개 를 추가 하 시 겠 습 니까?분명히 이렇게 하면 안 된다
대상 을 향 한 사상 설 계 를 채택 하면 다음 과 같다.
제품 표 (제품 관련 정보 만 포함 하 는 필드)
product_id number(12)
category varchar2(16)
productCode varchar2(16)
productName varchar2(32)
Recommend Product 표 (하나의 표지 가 아 닌 단독 표 로)
recommend_id (PK)
product_id (Fk)
recommend_username
recommend_date
이렇게 하 는 또 다른 장점 은 두 표 의 변 화 는 독립 적 인 것 이다. Recommend Product 표 에 필드 를 추가 할 수 있 고 produt 표 가 함께 디자인 되면 처음에 말 하 는 문제 가 발생 할 수 있다. 오늘 필드 를 추가 하고 내일 필드 를 추가 하 는 상황 이다.
대상 을 대상 으로 디자인 한 개폐 원칙 을 참고 하 였 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.