Android:greenDao与Parcelable使用总结
greenDao与Parcelable都可以实现对Object数据的存储。
1. greenDao
greenDAO是一个可以帮助Android开发者快速将Java对象映射到SQLite数据库的表单中的ORM解决方案,通过使用一 个简单的面向对象API,开发者可以对Java对象进行存储、更新、删除和查询。
2. Parcelable
Parcelable是Android中用于对Object数据进行序列化和反序列化的接口。
注意:greendao自动生成的info可以继承Parcelable接口,实现序列化和反序列数据存储。
例:
public class ContractDeatilInfo implements Parcelable{ /** Not-null value. */ private String id; private String name; private String party_a; private String party_b; public ContractDeatilInfo() { } public ContractDeatilInfo(String id) { this.id = id; } public ContractDeatilInfo(String id, String name, String party_a, String party_b, String sign_date, String value, String remarks) { this.id = id; this.name = name; this.party_a = party_a; this.party_b = party_b; } /** Not-null value. */ public String getId() { return id; } /** Not-null value; ensure this value is available before it is saved to the database. */ public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getParty_a() { return party_a; } public void setParty_a(String party_a) { this.party_a = party_a; } public String getParty_b() { return party_b; } public void setParty_b(String party_b) { this.party_b = party_b; } // 以上是greendao自动生成的info,以下是实现Parcelable接口的内容 @Override public int describeContents() { return 0; } //实现序列化,j @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(id); dest.writeString(name); dest.writeString(party_a); dest.writeString(party_b); } //实现反序列化,从Parcel解析出来 public static final Parcelable.Creator<ContractDeatilInfo> CREATOR = new Creator<ContractDeatilInfo>() { @Override public ContractDeatilInfo[] newArray(int size) { return new ContractDeatilInfo[size]; } @Override public ContractDeatilInfo createFromParcel(Parcel source) { ContractDeatilInfo info = new ContractDeatilInfo(); info.id = source.readString(); info.name = source.readString(); info.party_a = source.readString(); info.party_b = source.readString(); return info; } }; }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。