2008-09-15 80 views

回答

0

不确定你在问什么?

Spring自带CustomEditorConfigurer来提供自定义字符串< - >对象转换器。

要使用它,只需将CustomEditorConfigurer作为bean添加到您的配置中,然后添加自定义转换器。但是,这些转换器通常用于将配置文件中的字符串属性转换为实际对象。

如果您在使用Spring MVC,然后看看节上annotated MVC

具体来说,看看在@RequestParam@ModelAttribute注解?

希望这会帮助吗?

4

我有一个MVC控制器RequestMapping注解。一种方法有一个UUID类型的参数。 感谢工具,阅读WebDataBinder后,我想,我需要这样的方法在我的控制器:

@InitBinder 
public void initBinder(WebDataBinder binder) { 
    binder.registerCustomEditor(UUID.class, new UUIDEditor()); 
} 

UUIDEditor仅仅简单地扩展PropertyEditorSupport和覆盖getAsText()和setAsText()。

很好地为我工作。

2

扩展到前面的例子。

Controller类

@Controller 
@RequestMapping("/showuuid.html") 
public class ShowUUIDController 
{ 

    @InitBinder 
    public void initBinder(WebDataBinder binder) 
    { 
    binder.registerCustomEditor(UUID.class, new UUIDEditor()); 
    } 

    public String showuuidHandler (@RequestParam("id") UUID id, Model model) 
    { 
    model.addAttribute ("id", id) ; 
    return "showuuid" ; 
    } 
} 

物业去芒格

class UUIDEditor extends java.beans.PropertyEditorSupport 
{ 

    @Override 
    public String getAsText() 
    { 
    UUID u = (UUID) getValue() ; 
    return u.toString() ; 
    } 

    @Override 
    public void setAsText (String s) 
    { 
    setValue (UUID.fromString (s)) ; 
    } 

} 
相关问题