Java和Kotiln 数据实体类

本文介绍了如何在Java和Kotlin中实现实体类的序列化和数据转换。在Java中,使用了fasterxml的Jackson库和lombok进行字段注解。而在Kotlin中,通过data关键字实现了get、set方法,并利用@Parcelize和@SerializedName注解实现了Parcelable和JSON转换。示例包括BottleNumDto和StudentModel类。

Java 实体类(序列化 和get、set和json数据转换)

引入第三方插件:fasterjson、lombok

package com.wang.car.model;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serializable;

/**
 * @desc: 瓶子数量
 * @author: wang
 * @date: 20xx/x/x
 */
@Data
public class BottleNumDto implements Serializable {

    //瓶子库存数量
    @JsonProperty("bottleStockNum")
    private Integer carStockNum;

    //瓶子报废数量
    @JsonProperty("bottleAbolishNum")
    private Integer bottleAbolishNum;
    
}

Kotlin 实体类(序列化 和get、set和json数据转换)

data 包含了 get、set ; @Keep 代码混淆 ;SerializedName gson;Parcelable 自动生成(见下图)

package com.iklicen.widget.myapplication.ui

/**
 * @desc: 学生实体数据类
 * @author: wang
 * @date: 20xx/x/x
 */

import android.os.Parcel
import android.os.Parcelable
import androidx.annotation.Keep
import com.google.gson.annotations.SerializedName

@Keep
data class StudentModel(
    @SerializedName("name")
    var name: String? = null,
    @SerializedName("age")
    var age: Int? = null
):Parcelable{
    constructor(parcel: Parcel) : this(
        parcel.readString(),
        parcel.readValue(Int::class.java.classLoader) as? Int
    ) {
    }

    override fun writeToParcel(parcel: Parcel, flags: Int) {
        parcel.writeString(name)
        parcel.writeValue(age)
    }

    override fun describeContents(): Int {
        return 0
    }

    companion object CREATOR : Parcelable.Creator<StudentModel> {
        override fun createFromParcel(parcel: Parcel): StudentModel {
            return StudentModel(parcel)
        }

        override fun newArray(size: Int): Array<StudentModel?> {
            return arrayOfNulls(size)
        }
    }

}

在这里插入图片描述


@Keep
@Parcelize
data class StudentModel(
    @SerializedName("name")
    var name: String? = null,
    @SerializedName("age")
    var age: Int? = null
):Parcelable
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黄毛火烧雪下

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值