Mr.PersisterでAUTO_INCREMENTさせるメモ

1.マッピングからAUTO_INCREMENTのカラムを消して返すクラス

public class EmployeeCustomMapper
  extends CustomObjectMapperBase
{
  @Override
  public void modify(Object objectMappingKey, IObjectMapping mapping)
  throws PersistenceException
  {
    /*
     * AUTO_INCREMENTのカラム"ID"のセッターを削除
     */
    mapping.removeSetterMapping("ID");
  }
}


2. 1で作ったクラス(EmployeeCustomMapper.class)とテーブルマッピング用のクラス(Employee.class)でマッピングキーを作る

IObjectMappingKey mappingKey =
  ObjectMappingKey.createInstance(
    Employee.class, new EmployeeCustomMapper()
  );


3. インサート時には2で作ったマッピングキーを使う

employee.setName("Steve");
dao.insert(mappingKey, employee);