GreenDao高级用法
生活随笔
收集整理的这篇文章主要介绍了
GreenDao高级用法
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
GreenDao高级用法:
1.类内部有List
2.类内部有类
3.类内部有List<类>
1.类内部有List
复制该类到项目内
import org.greenrobot.greendao.converter.PropertyConverter;import java.util.Arrays; import java.util.List;public class StringConverter implements PropertyConverter<List<String>, String>{@Overridepublic List<String> convertToEntityProperty(String databaseValue) {if (databaseValue == null) {return null;}else {List<String> list = Arrays.asList(databaseValue.split(","));return list;}}@Overridepublic String convertToDatabaseValue(List<String> entityProperty) {if(entityProperty==null){return null;}else{StringBuilder sb= new StringBuilder();for(String link:entityProperty){sb.append(link);sb.append(",");}return sb.toString();}} }定义处这样写
@Convert(columnType = String.class, converter = StringConverter.class) public List<String> list;存储数据时请自己调用setXxx()方法
获取数据时请调用getXxx()方法,方法内会自动去查询数据
2.类内部有类
定义一个Id(名字随意起,不冲突就行)
public Long authorId;定义处这样写(注意此类不要写成内部类,会执行失败,应该放在一个单独的文件中,也需要Id和@Entity标识)
@ToOne(joinProperty = "authorId") public AuthorBean author;存储数据时请自己调用setXxx()方法
获取数据时请调用getXxx()方法,方法内会自动去查询数据
3.类内部有List<类>
在内部类的内部定义一个Id(不要写成内部类)
public Long chapterId;定义处这样写
@ToMany(referencedJoinProperty = "chapterId") public List<ChapterBean> chapter;存储数据时,需要遍历'chapter'集合,并给每一个子元素的chapterId设置为外部类的主键id,然后通过.chapterBeanDao.insert(chapterBean)来添加到数据库中
获取数据时请调用getXxx()方法,方法内会自动去查询数据
《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读总结
以上是生活随笔为你收集整理的GreenDao高级用法的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: LtScrollImageView:自动
- 下一篇: (一) 自带刷新的列表-LtRecycl