NutzCN Logo
问答 已知主键集合如何查询
发布于 2692天前 作者 bb3239 2083 次浏览 复制 上一个帖子 下一个帖子
标签: nutzwk

已知主键集合List,调用什么接口可以快速查询?query似乎没有这样的便捷接口啊

14 回复

不就是拼个in条件吗??

dao.query(XXX.class, Cnd.where("id", "in", list.toArray()));

@wendal 额,是我不太了解Nutz支持的操作符,再问一句,假如我要联表查询,例如 select * from A where id in (select id from B where filed="test"),这样的话,我最好是用自定义sql语句,然后利用回调来做吗?

cnd也能写

dao.query(XXX.class, Cnd.where(Exps.inSql("id", "select id from B where filed="%s"", "test")));

@wendal 首先非常感谢你的耐心指导,我用你给的方式取到了我想要的记录,但是在前端页面似乎没有任何变化,为啥?

前端我用的是如下方法重新加载数据

datatable.ajax.url(url).load();

datatable需要特定的格式呢,参考一下nutzwk里面的写法?

public Object data(@Param("status") String status,@Param("operator") String operator,@Param("length") int length, @Param("start") int start, @Param("draw") int draw, @Param("::order") List order, @Param("::columns") List columns) {

难道必须要进这种入口方法才能正确显示吗?

那你原本是怎么返回的??

return opeService.query(Cnd.where(sql));
@At
	@Ok("json:full")
	@RequiresAuthentication
	public Object dTask() {

datatable没那么仁慈....

return opeService.data(length, start, draw, order, columns, cnd, null);

之前进入data方法就可以,不同的是data返回NutMap对象,query返回List而已

这有啥冲突的吗??

添加回复
请先登陆
回到顶部