String 字符串到字符串的ValueConverter

String 字符串到字符串的ValueConverter,string,grails,valueconverter,String,Grails,Valueconverter,我需要对所有字符串执行其他修改,是否可以使用目标类型字符串制作一个ValueConverter,或者如果不可以,我可以用什么其他方式来做 class StringValueConverter implements ValueConverter { @Override boolean canConvert(Object value) { value instanceof String } @Override Object convert(O

我需要对所有字符串执行其他修改,是否可以使用目标类型
字符串
制作一个ValueConverter,或者如果不可以,我可以用什么其他方式来做

class StringValueConverter implements ValueConverter {
    @Override
    boolean canConvert(Object value) {
        value instanceof String
    }

    @Override
    Object convert(Object value) {
       //modifying value
    }

    @Override
    Class<?> getTargetType() {
        return String
    }
}
类StringValueConverter实现ValueConverter{
@凌驾
布尔canConvert(对象值){
字符串的值实例
}
@凌驾
对象转换(对象值){
//修改值
}
@凌驾
类getTargetType(){
返回字符串
}
}

在Groovy中绑定之前,我需要这样做。是的,您可以。有多种方式:

使用是其中之一

另一种方法是使用运行时元编程,例如:

String.metaClass.flip = {
    delegate.reverse()
}

assert "Hello".flip() == "olleH"
上面是一个人为地向字符串元类添加方法的示例,但您的示例中的convert方法也适用


但是,如果您希望通过
canConvert
添加健全性,则扩展模块在您的情况下是健壮的,因为运行时元类方法不需要它,因为它们只适用于
String
类。

举个例子会有所帮助。@Vladimir:这个问题发生了什么?问题解决了吗?我需要类似的东西。@sola我创建了一个扩展DataBindingListenerAdapter@sola