您好,登錄后才能下訂單哦!
springmvc默認無法自動封裝枚舉類,解決方法如下:
1.枚舉類
public enum GoodsPromoteEnum { /** * 0 精品 */ fine("精品",0), /** * 1 限時購 */ limit("限時購",1), /** * 2 特價 */ cheap("特價",2); private String value; private int index; private GoodsPromoteEnum(String value, int index) { this.value = value; this.index = index; } public static GoodsPromoteEnum get(String value){ for (GoodsPromoteEnum p : GoodsPromoteEnum.values()) { if (p.getValue().equals(value)) { return p; } } return null; } public static GoodsPromoteEnum get(int index){ for (GoodsPromoteEnum p : GoodsPromoteEnum.values()) { if (p.getIndex() == index) { return p; } } return null; } public String getValue() { return value; } public void setValue(String value) { this.value = value; } public int getIndex() { return index; } public void setIndex(int index) { this.index = index; } }
2.編寫自定義處理類,繼承Converter接口
public class StringToGoodsConverter implements Converter<String, GoodsPromoteEnum> { @Override public GoodsPromoteEnum convert(String value) { if (StringUtils.isBlank(value)) { return null; } return GoodsPromoteEnum.get(value); } }
3.在springmvc配置文件里配置
<!--自定義枚舉類封裝 --> <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean"> <property name="converters"> <set> <bean class="com.tentcoo.zbh.util.StringToGoodsConverter" /> </set> </property> </bean>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。