javascript
java枚举比较大小写_Spring 3.0 MVC绑定枚举区分大小写
如果我像這樣在Spring控制器中有一個RequestMapping …
@RequestMapping(method = RequestMethod.GET, value = "{product}")
public ModelAndView getPage(@PathVariable Product product)
產品是一個枚舉。例如。產品首頁
我懂了
Unable to convert value "home" from type 'java.lang.String' to type 'domain.model.product.Product'; nested exception is java.lang.IllegalArgumentException: No enum const class domain.model.product.Product.home
有沒有辦法讓枚舉類型轉換器了解小寫的home實際上是Home?
我想保持url大小寫不敏感,并且我的Java枚舉使用標準大寫字母。
謝謝
解
public class ProductEnumConverter extends PropertyEditorSupport
{
@Override public void setAsText(final String text) throws IllegalArgumentException
{
setValue(Product.valueOf(WordUtils.capitalizeFully(text.trim())));
}
}
注冊
添加到需要特殊轉換的控制器
@InitBinder
public void initBinder(WebDataBinder binder)
{
binder.registerCustomEditor(Product.class, new ProductEnumConverter());
}
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java枚举比较大小写_Spring 3.0 MVC绑定枚举区分大小写的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java多线程传值覆盖_Java 多线程
- 下一篇: java 渐进式_JAVA转换jpg图片