我使用kotlin来停止一个简单的ArticlesService,我创建了一个Articles数据类
data class Articles(var artid: Int, var artTitle: String, var artContent: String, var artAut: String, var artTime: Date)
但是类无法实例化bean类:找不到默认构造函数;嵌套异常是java.lang.NoSuchMethodException:com.zxl.blog.server.Articles。()
@Controller
class mainServer() {
@Autowired val artSer: ArticlesService? = null
@RequestMapping("/i")
fun fuwuqi(name: String, model: ModelMap): String {
model.put("name", name)
return "i"
}
@RequestMapping(value = "/saveArt", method = arrayOf(RequestMethod.POST))
fun saveArt(art: Articles): String {
return if (artSer!!.save(art)) "saved" else "savefail";
}
@RequestMapping("/arts")
fun arts(): String {
return "articles";
}
}
我想也许spring mvc不支持kotlin dataclass自动注入吗?
答案 0 :(得分:3)
在JVM上,如果生成的类需要具有无参数构造函数,则必须指定所有属性的默认值(请参阅构造函数)。
data class User(val name: String = "", val age: Int = 0)