Insert
1. 과정
-
SQL ID를 추가하면서 prefix로 insert* 를 사용하면, 구문 유형이 자동으로 insert로 변경된다.
-
[기본 SQL] 버튼을 클릭 후 SMP_EMP_TST 테이블을 검색하고 OK 버튼을 누르면, INSERT SQL이 자동생성된다.
-
입력 타입을 추가한 후 저장한다. 단건 조회 서비스 샘플 만들 때 생성한 DSmpEmpTst000Dto IO를 재사용했다.
-
출력 타입은 자동으로 int가 지정된다.
2. DBIO 샘플
INSERT INTO SMP_EMP_TST /* 샘플용직원정보TST */
(
FEDU_EMP_NO /* FW샘플 임직원번호 */
, FEDU_EMP_NM /* FW샘플 임직원명 */
, FEDU_OCCP_NM /* FW샘플 직업명 */
, FEDU_MNGR_EMP_NO /* FW샘플 관리자임직원번호 */
, FEDU_IPSA_DT /* FW샘플 입사일자 */
, FEDU_PAY_AMT /* FW샘플 급여금액 */
, FEDU_DEPT_NO /* FW샘플 부서번호 */
)
VALUES
(
#{feduEmpNo} /* FW샘플 임직원번호 */
, #{feduEmpNm} /* FW샘플 임직원명 */
, #{feduOccpNm} /* FW샘플 직업명 */
, #{feduMngrEmpNo} /* FW샘플 관리자임직원번호 */
, #{feduIpsaDt} /* FW샘플 입사일자 */
, #{feduPayAmt} /* FW샘플 급여금액 */
, #{feduDeptNo} /* FW샘플 부서번호 */
)
3. Bean 샘플
@BxmCategory(logicalName = "Single Insert")
public int addEmpInf(DSmpEmpTst000Dto input) throws DefaultApplicationException {
logger.debug("============== START ==============");
logger.debug("input = {}", input);
int addCnt = 0;
dSmpEmpTst000 = DefaultApplicationContext.getBean(dSmpEmpTst000, DSmpEmpTst000.class);
/**
* @BXMType Try
* @Desc Check duplicate employee id
*/
try {
/**
* @BXMType DbioCall
* @Desc insert a single employe info
*/
addCnt = dSmpEmpTst000.insert00(input);
} catch (DasDuplicateKeyException de) {
/**
* @BXMType ApplicationException
* @Desc throw application exception if employee id is already exists
*/
throw new DefaultApplicationException("BXME60007", new Object[] { input.getFeduEmpNo() } );
}
logger.debug("output = {}", addCnt);
logger.debug("============== END ==============");
return addCnt;
}