bbossgroups永続層ConfigSQLExecutorコンポーネントの典型的な使い方-プリコンパイル操作


この文書ではbbossgroups永続層ConfigSQLExecutorコンポーネントの典型的な使用法であるプリコンパイル操作について説明します.
本文は三つの部分に分けられる.
1.dao層の書き方
2.sqlプロファイルの構成方法(複数のデータベースsql構成をサポート可能)
3.関連するdatasourceの構成
第一部dao層の書き方
package com.chinacreator.tjbb.dao.impl;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;



import com.chinacreator.tjbb.dao.SjxftjDao;
import com.chinacreator.tjbb.dto.DssjxfTj;
import com.chinacreator.tjbb.dto.SjxftjDto;
import com.frameworkset.common.poolman.ConfigSQLExecutor;
import com.frameworkset.common.poolman.Record;
import com.frameworkset.common.poolman.handle.NullRowHandler;


public class SjxftjDaoImpl implements SjxftjDao{
	public static final String DBNAME = "stsmc";
	private static ConfigSQLExecutor executor = new ConfigSQLExecutor("com/chinacreator/tjbb/dao/impl/stxftj.xml");

	public List<SjxftjDto> findSjxftjList()  throws Exception{		
		return executor.queryListWithDBName(SjxftjDto.class, DBNAME, "findSjxftjList");
	}

	public List<DssjxfTj> findDstjList(String startDate,String endDate, String tbname) throws Exception{
		return executor.queryListWithDBName(DssjxfTj.class, DBNAME, "findDstjList", startDate,endDate,tbname);
	}

	public List<String> findDsMcList(String date) throws Exception{
		final List<String> list = new ArrayList<String>();
		executor.queryWithDBNameByNullRowHandler(new NullRowHandler() {
			@Override
			public void handleRow(Record record) throws Exception {
				list.add(record.getString("DSMC"));
			}
		}, DBNAME, "findDsMcList", date);
		return list;
	}


	
	
	public Map<String, String> findDsMcMap(String startDate,String endDate) throws Exception {
		final Map<String, String>  map = new HashMap<String, String>();
		executor.queryWithDBNameByNullRowHandler(new NullRowHandler() {
			@Override
			public void handleRow(Record record) throws Exception {
				String mc = record.getString("DSMC");
				String dm = record.getString("DSDM");
				map.put(dm, mc);
			}
		}, DBNAME, "findDsMcMap", startDate,endDate);
		
		return map;
	}
}