使用 MongoDB 的 Querydsl
Querydsl with MongoDB usage
我在 Java Spring 项目中有以下 Mongo 配置:
@Configuration
public class MongoConfiguration {
public static int allocateRandomPort() {
try {
ServerSocket server = new ServerSocket(0);
int port = server.getLocalPort();
server.close();
return port;
} catch (IOException e) {
throw new RuntimeException("Failed to acquire a random free port", e);
}
}
@Bean
public Mongo mongo() throws IOException {
System.setProperty("DB.TRACE", "true");
return new EmbeddedMongoBuilder()
.version("2.6.0")
.bindIp("127.0.0.1")
.port(allocateRandomPort())
.build();
}
}
要开始使用 Querydsl Mongodb 模块构建查询,documentation 表示:
Morphia morphia;
Datastore datastore;
// ...
QUser user = new QUser("user");
MorphiaQuery<User> query = new MorphiaQuery<User>(morphia, datastore, user);
我不知道如何创建 MorphiaQuery 的实例 class。 Datastore
对象应该是一个 inject Mongo 实例吗? Morphia
对象呢? Other tutorials 我发现在线创建实例为:
Morphia morphia = new Morphia()
.map(Book.class, Author.class, Tag.class);
我想在 Spring Data MongoDB repository
中构建查询。某处有功能齐全的示例吗?
谢谢。
Morphia 和 Spring Data Mongodb 是 Querydsl Mongodb 的替代对象映射器。 Querydsl 本身与 Morphia 集成捆绑在一起,对于 Spring 数据 Mongodb 你需要参考 references docs 来设置它。
我在 Java Spring 项目中有以下 Mongo 配置:
@Configuration
public class MongoConfiguration {
public static int allocateRandomPort() {
try {
ServerSocket server = new ServerSocket(0);
int port = server.getLocalPort();
server.close();
return port;
} catch (IOException e) {
throw new RuntimeException("Failed to acquire a random free port", e);
}
}
@Bean
public Mongo mongo() throws IOException {
System.setProperty("DB.TRACE", "true");
return new EmbeddedMongoBuilder()
.version("2.6.0")
.bindIp("127.0.0.1")
.port(allocateRandomPort())
.build();
}
}
要开始使用 Querydsl Mongodb 模块构建查询,documentation 表示:
Morphia morphia;
Datastore datastore;
// ...
QUser user = new QUser("user");
MorphiaQuery<User> query = new MorphiaQuery<User>(morphia, datastore, user);
我不知道如何创建 MorphiaQuery 的实例 class。 Datastore
对象应该是一个 inject Mongo 实例吗? Morphia
对象呢? Other tutorials 我发现在线创建实例为:
Morphia morphia = new Morphia()
.map(Book.class, Author.class, Tag.class);
我想在 Spring Data MongoDB repository
中构建查询。某处有功能齐全的示例吗?
谢谢。
Morphia 和 Spring Data Mongodb 是 Querydsl Mongodb 的替代对象映射器。 Querydsl 本身与 Morphia 集成捆绑在一起,对于 Spring 数据 Mongodb 你需要参考 references docs 来设置它。