- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用的是 SpringBoot2.0.0.RELEASE,Kotlin 1.2.30,Java9。
我在配置文件中有如下配置:
test:
user:
id: 111
username: 111
password: 111
addtime: 2018-11-11 11:11:11
User.kt代码如下:
data class User(
val id: String,
val username: String,
val password: String,
val addtime: LocalDateTime
) : Serializable
我尝试使用以下代码读取配置:
Binder.get(this.context.environment)
.bind("test.user", User::class)
.orElse(null)
但是,它没有成功并返回以下错误:
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [demo.User]: Illegal arguments for constructor; nested exception is java.lang.IllegalArgumentException: No argument provided for a required parameter: parameter #0 id of fun <init>(kotlin.String, kotlin.String, kotlin.String, java.time.LocalDateTime): demo.User
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:179)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:124)
at org.springframework.boot.context.properties.bind.JavaBeanBinder$Bean.lambda$getSupplier$0(JavaBeanBinder.java:173)
at org.springframework.boot.context.properties.bind.JavaBeanBinder$BeanSupplier.get(JavaBeanBinder.java:227)
at org.springframework.boot.context.properties.bind.JavaBeanBinder$BeanProperty.lambda$getValue$0(JavaBeanBinder.java:303)
... 80 more
完整错误日志:https://gist.github.com/Cat7373/174b0ddaf103b35062e7b03982f8cb38
我怎样才能成功?感谢您的帮助。
最佳答案
也许这个引用会有所帮助,尝试在定义数据类时添加 @PersistentConstructor
注释:Spring constructor annotations on Kotlin data class with default values或者,尝试为每个属性设置默认值。例如:
data class User(
val id: String = "",
val username: String = "",
val password: String = "",
val addtime: LocalDateTime = LocalDateTime.now()
) : Serializable
关于spring-boot - 如何使用Binder反序列化为Kotlin数据类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49189434/
出于好奇,我尝试了一些原型(prototype)制作,但似乎只允许在第一个位置使用子例程的原型(prototype) &。 当我写作时 sub test (&$$) { do_somethin
我需要开发一个类似于 Android Play 商店应用程序或类似 this app 的应用程序.我阅读了很多教程,发现几乎每个教程都有与 this one 类似的例子。 . 我已经开始使用我的应用程
考虑一个表示“事件之间的时间”的列: (5, 40, 3, 6, 0, 9, 0, 4, 5, 18, 2, 4, 3, 2) 我想将这些分组到 30 个桶中,但桶会重置。期望的结果: (0, 1,
我是一名优秀的程序员,十分优秀!