Spring setter在解析参数时不执行
我想创建TradePost域的一个对象。对于数据字段,我只传递grails操作中默认获得的参数 但是在解析时,根据grails文档,params映射到构造函数中,它应该为params中的所有这些属性调用setter。 但在我的例子中,setStatus enum不会执行Spring setter在解析参数时不执行,spring,hibernate,grails,gorm,Spring,Hibernate,Grails,Gorm,我想创建TradePost域的一个对象。对于数据字段,我只传递grails操作中默认获得的参数 但是在解析时,根据grails文档,params映射到构造函数中,它应该为params中的所有这些属性调用setter。 但在我的例子中,setStatus enum不会执行 class TradePost { long id StatusEnum status //Used to get the status of post i.e Buy or Sell Strin
class TradePost {
long id
StatusEnum status //Used to get the status of post i.e Buy or Sell
String location
String currency
public void setStatus(String key)
{
println "cAlledgggggggggggggggggggggggggggggg"+key
this.status=StatusEnum.getStatus(key)
}
}
并调用我创建的对象
user.tradePosts.add(new TradePost(params))
它应该调用status属性的setter,但不调用。只是做了一个有根据的猜测,但我怀疑这是因为实现的方法签名与所调用的不匹配。e、 参数映射中的g setStatus vs setStatusSir为类型。因此,我将得到status:value。对于转换,我使用setter。是的,我意识到,然而,除了简单的属性赋值之外,还有很多事情要做。您确实有Grails来确保为您正确地转换数据类型。我怀疑这是对StatusEnum的攻击。