在Mybatis中,處理枚舉類的TypeHandler有兩個:

  1. EnumTypeHandler: 用于保存枚舉名

  2. EnumOrdinalTypeHandler: 用于保存枚舉的序號。

在實際項目中,以上往往不能滿足我們的需求。

需求分析

枚舉需要包含兩個屬性,label(用于顯示), value(實際的枚舉值)。數(shù)據(jù)庫保存枚舉值(value)。

這很明顯Mybatis提供的兩個枚舉TypeHandler不能滿足我們的需求。此時,我們可以自定義一個通用的枚舉TypeHandler來滿足我們的需求。

自定義枚舉TypeHandler

通用枚舉DisplayedEnum

public interface DisplayedEnum {

    String DEFAULT_VALUE_NAME = "value";

    String DEFAULT_LABEL_NAME = "label";   &n
        
		

網(wǎng)友評論