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

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 저장수정정보자동화 #저장수정정보관리 #수정정보

Read more

마인츠(Mainz) 여행

마인츠(Mainz) 여행

라인강의 심장, 마인츠(Mainz) 여행: 역사와 와인, 문화가 숨 쉬는 보석 같은 도시 🇩🇪 마인츠(Mainz), 어떤 도시인가요? 독일 서부, 라인강과 마인강이 만나는 지점에 자리 잡은 마인츠는 천 년이 넘는 역사와 현대적인 활력이 공존하는 매력적인 도시입니다. 요하네스 구텐베르크의 인쇄술 발명으로 인류 문명사에 혁명적인 기여를 한 곳이자, 독일 최대 와인 생산지인 라인헤센(

SAP ABAP 문법 정리 및 각 예제

SAP ABAP 문법 정리 및 각 예제

SAP ABAP 문법 정리: 초보자부터 숙련자도 참고 가능 SAP 시스템은 전 세계 수많은 기업의 핵심 비즈니스 프로세스를 구동하는 강력한 솔루션입니다. 그리고 이 SAP 시스템의 심장부에는 바로 **ABAP(Advanced Business Application Programming)**이라는 독자적인 프로그래밍 언어가 있습니다. ABAP은 단순히 보고서를 생성하는 것을 넘어, 복잡한 비즈니스 로직 구현, 데이터베이스 상호작용, 사용자 인터페이스

Image 3
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
Image 4
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.