メタデータのDAOインターフェース。
今紹介しているサンプルでは、データベースをTSVファイルとしているが、DAOインタフェースはデータベースがTSVファイルでもMySQLでも問題ないように記述する必要がある。(フレームワークやデータベースを別のものに入れ替えても、DAOが影響を受けないようにするため)
package dao;
import java.util.List;
import entity.MetaData;
/**
* メタデータDAO
*/
public interface MetaDataDao {
/**
* 引数で指定されたエンティティを、データベースに追加します。
*
* @param metaData
* データベースに追加するエンティティ
* @return INSERTされた件数
*/
public int insert(MetaData metaData);
/**
* 引数で指定された主キー(サロゲートキー)を持つエンティティを取得します。
*
* @param metaDataId
* メタデータID
* @return メタデータ
*/
public MetaData get(Integer metaDataId);
/**
* 引数で示されるメタデータが存在するかチェックします。
*
* @param metaDataName
* メタデータ名
* @return メタデータが存在すればtrue、そうでなければfalse
*/
public boolean hasMetaData(String metaDataName);
/**
* ルートメタを検索します。
*
* @return ルートメタのリスト
*/
public List<MetaData> findRootMeta();
/**
* 子メタを検索します。
*
* @return 子メタのリスト
*/
public List<MetaData> findChildMeta(Integer metaDataId);
/**
* メタデータを更新します。
*
* @return 子メタのリスト
*/
public void update(MetaData metaData);
/**
* メタデータを削除します。
*
* @param metaDataId
* 削除するメタデータのメタデータID
*/
public void delete(Integer metaDataId);
/**
* データベースのデータを、ファイルに保存します。
*
* @param fileName
* ファイル名
*/
public void save(String fileName);
}
0 件のコメント:
コメントを投稿