现在的位置: 首页 > 综合 > 正文

LitePal学习总结 (八)…续二

2017年04月04日 ⁄ 综合 ⁄ 共 687字 ⁄ 字号 评论关闭

LitePal框架是郭神的开源框架,郭神博客

接续一继续开播,查询的东西太多了,郭神辛苦。


下面总结激进查询,我理解的激进查询就是关联表查询。



如图,在我们前面介绍的find()方法里,添加一个isEager参数即可,其他使用方法不变。

上代码

	/**
	 * 演示激进查询
	 */
	private void selectTest6() {
		News news=DataSupport.find(News.class, 2,true);
	}

就这样,就可以把与News表中的id=2的数据及相关联的数据查询出来了,我们这边News表中id=2相关联的数据有Introduce的数据。



郭神说,这样写简单,但是当关联的数据很多的时候,查询耗时。

郭神说,还是使用以下方式来写,怎么写呢?就是修改Introduce实体类中getNews方法

public News getNews() {
		return (News) DataSupport.where("introduce_id=?",String.valueOf(id)).find(News.class);
	}

这个方法的内部就是使用了一句连缀查询。改成这种写法之后,我们就可以将关联表数据的查询延迟,当我们需要去获取新闻所对应的介绍时,再去调用Introduce的getNews()方法,这时才会去查询关联数据。这种写法会比激进查询更加高效也更加合理。


哎呀,CURD终于都总结了。。。。。累死了。。。


还有就是LitePal获取数据库对象db后,还是可以进行传统的数据库操作的,所以,在掌握框架的时候,传统的方法不能忘了,万一框架不能满足我们的需求呢

自此,我还想说一句,郭神,你太牛了



















抱歉!评论已关闭.