您好,登錄后才能下訂單哦!
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>
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。