분류 전체보기591 spring JpaAuditing JpaAuditing은 엔티티에서 공통으로 사용하는 칼럼을 재활용 하여 중복을 제거하기 위해 사용하는 설정 (대표적으로 시간 칼럼) 크게 아래 3가지 설정만 하면 된다. @EnableJpaAuditing @Configuration public class JpaConfig { } public class PackageEntity extends BaseEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer packageSeq; private String packageName; private Integer count; private Integer period; } @MappedSuperclass @EntityListener.. 2022. 11. 6. h2 inmemory db 설정 위한 정보 build.gradle runtimeOnly 'com.h2database:h2:1.4.199' application.yml spring: h2: console: enabled: true path: /h2-console datasource: url: jdbc:h2:mem:mydb username: sa password: driver-class-name: org.h2.Driver 2022. 11. 6. 데이터베이스 기본 키 데이터베이스 기본 키는 다음 3가지 조건을 모두 만족해야 한다. null 값은 허용하지 않는다. 유일해야 한다. 변해선 안 된다. 테이블의 기본 키를 선택하는 전략은 크게 2가지가 있다. 자연 키 비즈니스에 의미가 있는 키 ex : 주민등록번호, 이메일, 전화번호 대리 키 비즈니스와 관련 없는 임의로 만들어진 키 ex : auto_increment 등 자연 키보다는 대리 키를 권장한다. 대리 키는 비즈니스와 무관한 임의의 값이므로 요구사항이 변경되어도 기본 키가 변경되는 일은 드물다. 대리 키를 기본 키로 사용하되 주민등록번호나 이메일처럼 자연 키의 후보가 되는 컬럼들은 필요에 따라 유니크 인덱스를 설정해서 사용하는 것이 좋다. ex : 주민등록 번호는 null이 아니고 변하지 않으며 유일하다는 모든 조.. 2022. 11. 4. 객체지향 설계 및 구현 예시 /** * 음식점에서 음식 주문하는 과정 구현 * 요구사항 * 객체지향 설계 및 구현 * 1. 도메인을 구성하는 객체에는 어떤 것들이 있는지 고민 (해당 단계에서 전부 도출하는 것이 아니라 생각나는 부분까지만 도출함) * ㄴ 손님, 메뉴판, 돈까스/냉면/만두, 요리사, 요리 * 2. 객체들 간의 관계를 고민 * ㄴ 손님 ---- 메뉴판 * ㄴ 손님 ---- 요리사 * ㄴ 손님 ---- 요리 * 3. 동적인 객체를 정적인 타입으로 추상화해서 도메인 모델링 하기 * ㄴ 손님 --- 손님 타입 * ㄴ 돈까스/냉면/만두 --- 요리 타입 * ㄴ 메뉴판 --- 메뉴판 타입 * ㄴ 메뉴 --- 메뉴 타입 * 4. 협력을 설계 * 5. 객체들을 포괄하는 타입에 적절한 책임을 할당 * 6. 구현하기기 * */ 2022. 11. 2. 이전 1 ··· 58 59 60 61 62 63 64 ··· 148 다음