class Todo {
String name
Date createdDate
String priority
String status
static constraints = {
priority blank: true
}
}
@TestFor(Todo)
class TodoSpec extends Specification {
void "test persist"() {
when:
new Todo(name: 't1', createdDate: new Date(), priority: "1", status: 'ok').save()
new Todo(name: 't2', createdDate: new Date(), priority: '', status: 'ok').save()
then:
Todo.list().size() == 2
}
}
Todo.list().size() == 2
| | |
| 1 false
[collab.todo.Todo : 1]
at collab.todo.TodoSpec.test persist(TodoSpec.groovy:18)
我在new Todo(名称:'T2',createddate:new Date(),优先级:',status:'OK')
行中发现了空字符串''
,并通过调试将其转换为null
。在google了一段时间后,我看到Grails中有一个特性,可以将web表单中的空字符串转换为空字符串以持久化,可以通过config.groovy中的配置Grails.databinding.convertemptyStringstonull=false
禁用该特性。但我不认为斯波克UT是这样的。我试过了,但不像我想的那样有效。
我想知道为什么空字符串被转换为null作为传递给构造函数的参数?提前谢了。
它现在有点笨拙,但可以很容易地工作。下面的测试通过Grails 2.3.9...
域类:
// grails-app/domain/com/demo/Person.groovy
package com.demo
class Person {
String title
}
config.groovy:
// grails-app/conf/Config.groovy
grails.databinding.convertEmptyStringsToNull = false
// ...
// test/unit/com/demo/PersonSpec.groovy
package com.demo
import grails.test.mixin.TestFor
import spock.lang.Specification
@TestFor(Person)
@TestMixin(grails.test.mixin.web.ControllerUnitTestMixin)
class PersonSpec extends Specification {
void "test empty string conversion"() {
when:
def p = new Person(title: '')
then:
p.title == ''
}
}
问题内容: 我已经编写了一个android程序来将值从Web服务加载到表行。但是值变为null,因此我需要将其转换为字符串。有人可以告诉我这样做的方法吗? 现在从Web服务获取空值,因此我需要将其转换为string 。 LogCat: 问题答案: 用这个,
问题内容: Oracle Java Community网站上的一篇文章提供了以下方法作为示例(对于JPA Converter,但这并不相关): 将String y强制转换为String val有什么用?有正当的理由吗? 原始文章:JPA的新增功能 问题答案: 这样的转换是完全没有必要的。我可以想象那是以前 但是后来参数类型更改为,而作者只是忘了删除强制类型转换。
问题内容: 有什么方法可以将null转换为Integer。null实际上是一个字符串,我在我的服务层中传递该字符串,将其接受为整数。因此,每当我尝试将null字符串强制转换为Integer时,都会引发异常。但是我必须将null转换为Integer。 问题答案: 您 不能 从String强制转换为Integer。但是,如果您尝试将字符串转换为整数,并且必须提供处理字符串的实现,请查看以下代码片段:
我想从属性转换空字符串值,并在API响应模型对象中用替换它。 我尝试了这个解决方案,但它在类级别上不起作用。
我在Kotlin中使用Gson将对象转换为json字符串。 var json2可以返回正确的结果,但是var json1返回null,为什么?
如果我有 我去拿 <代码>空 有没有一种优雅的方法可以将其更改为空字符串? 我可以做: 上下文是我将生成以下表单的字符串: 字符串myString=a“\n”b“\n”c 但我想知道是否有更好的解决方案。