没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
2页
1、前言 最近在用Kotlin+Spring Boot写一个后端项目,实体类习惯性地用了Kotlin中的data class,但是Spring要求要有一个无参的构造函数,否则可能会抛出java.sql.SQLDataException。要使data class能够生成一个无参的构造函数,有两种方法可以做到: 1.给data class的构造函数中的每一个参数都赋上默认值。比如: data class User( @TableId(value = id, type = IdType.AUTO) var id: Int?=-1, var userName: String?=nu
资源推荐
资源详情
资源评论
Kotlin之在之在Gradle中无参(中无参(no-arg)编译器插件的使用详解)编译器插件的使用详解
1、前言、前言
最近在用Kotlin+Spring Boot写一个后端项目,实体类习惯性地用了Kotlin中的data class,但是Spring要求要有一个无参的构
造函数,否则可能会抛出java.sql.SQLDataException。要使data class能够生成一个无参的构造函数,有两种方法可以做到:
1.给data class的构造函数中的每一个参数都赋上默认值。比如:
data class User(
@TableId(value = "id", type = IdType.AUTO)
var id: Int?=-1,
var userName: String?=null, //用户名
var age: Int?=null, //年龄
var password: String?=null, //密码
var name: String?=null, //姓名
var email: String?=null //邮箱
) : Serializable
2.使用无参编译器插件no-arg。下面我们就来看看这种方法。
2、具体步骤、具体步骤
2.1 添加插件依赖
首先需要在工程的build.gradle中添加no-arg插件的依赖,版本跟Kotlin的版本一致:
plugins {
……
id "org.jetbrains.kotlin.plugin.noarg" version "1.3.41"
}
我用的是plugins的形式,如果你使用的是buildscript 块的话就可以这样添加:
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-noarg:1.3.41"
}
}
apply plugin: "kotlin-noarg"
2.2 指定无参注解列表
说实话,在看官方文档时这一步并不好理解,这里只描述我经过自己的实践之后得出的经验。首先创建一个注解类,类名我们
可以定为NoArg:
annotation class NoArg
然后最关键一步来了,回到工程的build.gradle文件,添加无参注解列表:
noArg {
annotation("com.lindroid.projectname.annotation.NoArg")
}
annotation中的路径就是我们创建的NoArg注解类所在的包目录。路径一定要写好,不要出错!此时无参插件就已经配置好
了。我们可以在data class前面添加@NoArg注解,这样编译器就能为其生成一个无参构造函数。使用示例如下:
@NoArg
data class User(
@TableId(value = "id", type = IdType.AUTO)
var id: Int?,
var userName: String?, //用户名
var age: Int?, //年龄
var password: String?, //密码
var name: String?, //姓名
var email: String? //邮箱
) : Serializable
2.3 kotlin-jpa中的无参注解
资源评论
weixin_38514805
- 粉丝: 9
- 资源: 932
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 目标检测-零售食品LOGO检测数据集-40000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-30000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-20000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-10000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 基于GUI+MYSQL+JAVA图书管理系统文档说明+源码(高分大作业项目).zip
- 基于Qt使用C++实现图书管理系统源码+数据库(95分以上).zip
- 基于GUI+MYSQL+JAVA票务管理系统文档介绍+源码+数据库(高分大作业).zip
- 基于MC1496应用电路Multisim仿真源文件,Multisim10以上版本可打开运行.zip
- 基于LM386应用电路Multisim仿真源文件,Multisim10以上版本可打开运行.zip
- 优先编码器除法电微分运算电路 全加器函数发生电路等电路经典Multisim仿真实验源文件合集(25个).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功