728x90 분류 전체보기152 1.객체지향설계와 스프링 1.객체지향설계와 스프링 목차 1.자바진영의 추운겨울과 스프링의 탄생 2.스프링이란? 3.좋은 객체 지향 프로그래밍이란? 4.좋은 객체지향 설계의 5가지 원칙 5.객체지향 설계와 스프링 1.자바진영의 추운겨울과 스프링의 탄생 EJB 자바진영의 표준기술 가격이 비쌈.. 진짜 어렵고 복잡하고 느리다 스프링 EJB 컨테이너 대체 단순함의 승리 현재 사실상 표준기술 하이버네이트 EJB 엔티티빈 기술을 대체 JPA 새로운 표준정의 스프링의 역사 2002년 로드존슨 책 출간 (EJB의 문제점 지적) 스프링의 핵심개념과 기반코드가 들어있다 유겐힐러 와 얀카로프가 로드존슨에게 오픈소스 프로젝트를 제안 2003년 스프링 프레임워크 출시 XML로 설정 2014년 스프링부트 출시 2.스프링이란? 스프링의 핵심 자바언어의 큰.. 2020. 12. 30. 5.상품도메인 개발 5.상품도메인개발 목차 1.상품 엔티티 개발 (비즈니스 로직 추가) 2.상품 리포지토리 개발(Repository) 3.상품 서비스 개발(Service) 4.상품 기능 테스트(Test) 1.상품 엔티티 개발 (비즈니스 로직 추가) Item @Entity @Inheritance(strategy = InheritanceType.SINGLE_TABLE) @DiscriminatorColumn(name = "dtype") @Getter @Setter public abstract class Item { //비즈니스로직 //재고수량 증가 public void addStock(int quantity){ this.stockQuantity +=quantity; } //재고량 감소 public void removeStock(.. 2020. 12. 30. 4.회원도메인 개발 4.회원도메인개발 목차 1.회원엔티티 다시보기 2.회원 리포지토리 개발(Repository) 3.회원 서비스 개발(Service) 4.회원기능 테스트(Test) 1.회원엔티티 다시보기 Member @Entity @Getter @Setter public class Member { @Id @GeneratedValue @Column(name="member_id") private Long id; private String name; @Embedded private Address address; @OneToMany(mappedBy = "member") private List orders=new ArrayList(); } @Id @GeneratedValue 을 이용해서 기본키와 값이 자동으로 상승 @Column(n.. 2020. 12. 30. 3.엔티티클래스 개발2 3.엔티티 클래스 개발2 Category @Entity @Getter @Setter public class Category { @Id @GeneratedValue @Column(name = "category_id") private Long id; private String name; @ManyToMany @JoinTable(name = "category_item", joinColumns = @JoinColumn(name = "category_id"), inverseJoinColumns = @JoinColumn(name = "item_id")) private List items = new ArrayList(); @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name =.. 2020. 12. 30. 2.엔티티 클래스 개발1 2.엔티티 클래스 개발1 Member 엔티티 @Entity @Getter @Setter public class Member { @Id @GeneratedValue @Column(name="member_id") private Long id; private String name; @Embedded private Address address; @OneToMany(mappedBy = "member") private List orders=new ArrayList(); } @Id : 기본키 @GenerateValue : 자동으로 값이증가 @Column : 컬럼의 이름을 member_id로 바꾸어줌 @Embedded : 임베디드 타입 값타입하는곳에 표시 @OneToMany : 1대다 관계를 표시한다 mappedBy=.. 2020. 12. 30. 1.도메인 분석설계 1.도메인분석 설계 목차 1.요구사항 분석 2.도메인 모델과 테이블 설계 3.엔티티 클래스 개발1 4.엔티티 클래스 개발2 5.엔티티 설계시 주의점 1.요구사항 분석 회원기능 회원등록 회원조회 상품기능 상품등록 상품수정 상품조회 주문기능 상품주문 주문내역조회 주문취소 기타요구사항 상품은 제고관리가 필요하다. 상품의 종류는 도서,음반,영화가 있다. 상품을 카테고리로 구분할수 있다. 상품주문시 배송정보를 확인할수 있다.2.도메인 모델과 테이블 설계 회원,주문,상품의 관계 회원은 여러상품을 주문할수있다. 주문할때 여러상품을 선택할수 있으므로 주문과 상품은 다대다 관계이다 다대다 관계는 사용하지 않는다 그래서 주문상품을 넣는다 주문상품을 넣어서 다대다 관계를 다대일,일대다 관계로 풀어낸다 상품분류 상품은 도서,.. 2020. 12. 30. 이전 1 ··· 19 20 21 22 23 24 25 26 다음 728x90