Axboot 신규화면 만들기 5 - 저장,수정시 자동으로 최종 등록/수정일 처리

1. 최초 등록, 최종 수정에 대한 정보관리
: 프로그램을 처리하다보면 데이타의 최초 등록자/등록일자와 최종 수정자/수정일자를 관리해야만 할일이 많다.
이럴때 Axboot에서는 자동으로 관리할 수 있도록 이미 구현해 놓은 BaseJpaModel class를 사용하기만 하면 된다.
2. 처리방법
1) 제품테이블에 컬럼 생성
: 먼저 등록/수정정보를 관리할 수 있는 컬럼을 대상테이블에 만든다. 여기서는 기존에 만들었던 제품테이블에
만들도록 한다. 쉽게 만들기를 원한다면 기존에 기본적으로 만들어져있는 menu_m 테이블에 있는
4개의 컬럼인 CREATED_AT(등록일시), CREATED_BY(등록자), UPDATED_AT(수정일시), UPDATED_BY(수정자)을
열복사 후 제품테이블에 붙여넣으면 된다.
- menu_m테이블에서 복사

- 제품정보 붙어넣기

3. Product.java 수정
package com.dasdes.shopmng.domain.prdt; import com.chequer.axboot.core.annotations.ColumnPosition; import com.dasdes.shopmng.domain.SimpleJpaModel; import lombok.*; import org.apache.ibatis.type.Alias; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; import com.chequer.axboot.core.annotations.Comment; import javax.persistence.*; import javax.validation.constraints.NotNull; import com.dasdes.shopmng.domain.BaseJpaModel; //BaseJpaModel 추가 @Setter @Getter @DynamicInsert @DynamicUpdate @Entity @EqualsAndHashCode(callSuper = true) @Table(name = "prdt_base") @Comment(value = "") @Alias("product") //기존에 SimpleJpaModel로 되어있던 부분을 BaseJpaModel 로 수정한다. public class Product extends BaseJpaModel<String> { @Id @Column(name = "prdt_cd", length = 50, nullable = false) @NotNull(message = "제품코드를 입력하세요") //pk이므로 not null 체크 추가 @Comment(value = "제품코드") private String prdtCd; @Column(name = "prdt_nm", length = 50, nullable = false) @Comment(value = "제품명") private String prdtNm; @Column(name = "origin", length = 50, nullable = false) @Comment(value = "원산지") private String origin; @Column(name = "purchase_price", precision = 10, nullable = false) @Comment(value = "매입가격") private Integer purchasePrice; @Column(name = "sales_price", precision = 10, nullable = false) @Comment(value = "판매가격") private Integer salesPrice; @Override public String getId() { return prdtCd; } } |
4. 결과
1) 화면에서 원산지 수정 및 신규제품을 추가해본다.

2) 테이블에서 확인해본다.
: 이미 BaseJpaModel 에 모두 구현되어있어 별다른 손을 대지 않고도 아래와 같이 생성 또는 수정정보가 정상적으로
갱신되고 있는것을 볼 수 있다.

만족하셨나요? ~~~~~~~
#등록정보 #axisj #Axboot화면만들기 #axboot 저장수정정보자동화 #저장수정정보관리 #수정정보