package jp.terasoluna.batch.functionsample.b001;

import jp.terasoluna.fw.batch.blogic.AbstractTransactionBLogic;
import jp.terasoluna.fw.batch.blogic.vo.BLogicParam;
import jp.terasoluna.fw.dao.QueryDAO;
import jp.terasoluna.fw.dao.StoredProcedureDAO;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;

/**
 * DB関連ジョブのサンプル<br>
 * <br>
 * 
 * 事前準備：EMPLOYEEテーブルとINITEMPLOYEETABLEプロシージャを作成しておくこと<br>
 * <br>
 * サンプル内容：ストアドプロシージャを利用するサンプル。
 * 
 * 
 */
public class B001010BLogic extends AbstractTransactionBLogic {

	private static final int BATCH_NORMAL_END = 0;

	@Autowired
	@Qualifier("spDAO")
	private StoredProcedureDAO spDAO = null;

	@Autowired
	@Qualifier("queryDAO")
	private QueryDAO queryDAO = null;

	@Override
	public int doMain(BLogicParam arg0) {

		//Oracleの場合、コメントアウトを外す。
		//spDAO.executeForObject("B001010.initEmployee", null);

		//PostgreSQLの場合、コメントアウトを外す。
		queryDAO.executeForObject("B001010.initEmployee4Postgres", null,null);

		
		return BATCH_NORMAL_END;
	}

}
