一、
使用參數構造器的方式來解決
1 @ConstructorArgs({ 2 @Arg(column="id",javaType=Integer.class), 3 @Arg(column="name",javaType=String.class), 4 @Arg(column="enum1",javaType= enum1.class,typeHandler=EnumOrdinalTypeHandler.class) 5 }) 6 @Select(value="select id,name,enum1 from test1 where id=#{id}") 7 Zhyonk queryTest(int id);
第二種、
使用結果集映射注解來解決
@Results({ @Result(property = "enum1", column = "enum1", typeHandler = EnumOrdinalTypeHandler.class) }) @Select(value = "select id,name,enum1 from test1 where id=#{id}") Zhyonk queryTest2(int id);
若是采用這種方式,則在實體類中必須要要有無參數的構造器
第三種、
采用@TypeDiscriminator類型鑒別器
@TypeDiscriminator( column = "enum1",javaType = enum1.class,typeHandler=EnumOrdinalTypeHandler.class, cases={ @Case(value="zhyonk",type=Zhyonk.class,results={@Result(property="enum1",column="enum1",typeHandler=EnumOrdinalTypeHandler.class)}) ,@Case(value="success",type=Success.class,results={@Result(property="enum1",column="enum1",typeHandler=EnumOrdinalTypeHandler.class)}) }) @Select(value="select id,name,enum1 from test1 where id=#{id}") Zhyonk queryTest3(int id);