使用 Spring Data Couchbase 的简单 "count()" 查询
Simple "count()" query with Spring Data Couchbase
我遇到了一个问题,我似乎找不到解决方案,而且看起来真的很奇怪,因为我已经尝试了官方 Spring Data Couchbase 文档中的所有方法。
基本上我想做的只是一个简单的 count() 方法。
我的存储库:
public interface ICourrierRepository extends CrudRepository<Courrier, String> {
List<Courrier> findByCategorie(String categorie);
Long countByCategorie(String categorie);
@View(designDocument = "_design/courrier", viewName = "courrierBase")
long count();
}
视图设置如下:http://img15.hostingpics.net/pics/169793Capture.png
查看地图是这样的:
function (doc, meta) {
if (doc._class == "com.model.Courrier") {
emit(meta.id, null);
}
}
最糟糕的是,当我在 CouchBase GUI 中将 "reduce" 设置为“_count”时它确实有效,但是当我从我的客户端启动它时,我总是收到相同的消息,并且 return 是 0 :
[cb-computations-2] INFO c.c.c.java.view.ViewRetryHandler - Received a View HTTP response code (400) I did not expect, not retrying.
感谢您的帮助...
我确实发现了问题...它来自这一行:
@View(designDocument = "_design/courrier", viewName = "courrierBase")
应该是
@View(designDocument = "courrier", viewName = "courrierBase")
此外,视图应设置为 reduce : _count。
希望这对未来的用户有帮助!
我遇到了一个问题,我似乎找不到解决方案,而且看起来真的很奇怪,因为我已经尝试了官方 Spring Data Couchbase 文档中的所有方法。
基本上我想做的只是一个简单的 count() 方法。
我的存储库:
public interface ICourrierRepository extends CrudRepository<Courrier, String> {
List<Courrier> findByCategorie(String categorie);
Long countByCategorie(String categorie);
@View(designDocument = "_design/courrier", viewName = "courrierBase")
long count();
}
视图设置如下:http://img15.hostingpics.net/pics/169793Capture.png
查看地图是这样的:
function (doc, meta) {
if (doc._class == "com.model.Courrier") {
emit(meta.id, null);
}
}
最糟糕的是,当我在 CouchBase GUI 中将 "reduce" 设置为“_count”时它确实有效,但是当我从我的客户端启动它时,我总是收到相同的消息,并且 return 是 0 :
[cb-computations-2] INFO c.c.c.java.view.ViewRetryHandler - Received a View HTTP response code (400) I did not expect, not retrying.
感谢您的帮助...
我确实发现了问题...它来自这一行:
@View(designDocument = "_design/courrier", viewName = "courrierBase")
应该是
@View(designDocument = "courrier", viewName = "courrierBase")
此外,视图应设置为 reduce : _count。
希望这对未来的用户有帮助!