Using querydsl with undetermined schema with mongo and spring boot
up vote
0
down vote
favorite
I've the following mapping:
@Document
class Event {
Object carbonCopy;
}
carbonCopy
has several attributes and its schema is undetermined - various events can have different set of attributes. Assume that carbonCopy
has status
field. I need to find all Event
s that have carbonCopy.status
equal to NEW
. Is it possible with query DSL, how? I'm struggling with various mixes of Path
and Expression
instances to no avail.
java mongodb spring-boot spring-data-mongodb querydsl
add a comment |
up vote
0
down vote
favorite
I've the following mapping:
@Document
class Event {
Object carbonCopy;
}
carbonCopy
has several attributes and its schema is undetermined - various events can have different set of attributes. Assume that carbonCopy
has status
field. I need to find all Event
s that have carbonCopy.status
equal to NEW
. Is it possible with query DSL, how? I'm struggling with various mixes of Path
and Expression
instances to no avail.
java mongodb spring-boot spring-data-mongodb querydsl
Can you please look into below link may it help you. querydsl.com/static/querydsl/2.1.0/reference/html/ch02s07.html
– Raheela Aslam
Nov 20 at 12:24
@RaheelaAslam have you checked the link before suggesting it? Is there any particular section I should pay attention to?
– Opal
Nov 20 at 12:25
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I've the following mapping:
@Document
class Event {
Object carbonCopy;
}
carbonCopy
has several attributes and its schema is undetermined - various events can have different set of attributes. Assume that carbonCopy
has status
field. I need to find all Event
s that have carbonCopy.status
equal to NEW
. Is it possible with query DSL, how? I'm struggling with various mixes of Path
and Expression
instances to no avail.
java mongodb spring-boot spring-data-mongodb querydsl
I've the following mapping:
@Document
class Event {
Object carbonCopy;
}
carbonCopy
has several attributes and its schema is undetermined - various events can have different set of attributes. Assume that carbonCopy
has status
field. I need to find all Event
s that have carbonCopy.status
equal to NEW
. Is it possible with query DSL, how? I'm struggling with various mixes of Path
and Expression
instances to no avail.
java mongodb spring-boot spring-data-mongodb querydsl
java mongodb spring-boot spring-data-mongodb querydsl
asked Nov 20 at 12:20
Opal
52k20102117
52k20102117
Can you please look into below link may it help you. querydsl.com/static/querydsl/2.1.0/reference/html/ch02s07.html
– Raheela Aslam
Nov 20 at 12:24
@RaheelaAslam have you checked the link before suggesting it? Is there any particular section I should pay attention to?
– Opal
Nov 20 at 12:25
add a comment |
Can you please look into below link may it help you. querydsl.com/static/querydsl/2.1.0/reference/html/ch02s07.html
– Raheela Aslam
Nov 20 at 12:24
@RaheelaAslam have you checked the link before suggesting it? Is there any particular section I should pay attention to?
– Opal
Nov 20 at 12:25
Can you please look into below link may it help you. querydsl.com/static/querydsl/2.1.0/reference/html/ch02s07.html
– Raheela Aslam
Nov 20 at 12:24
Can you please look into below link may it help you. querydsl.com/static/querydsl/2.1.0/reference/html/ch02s07.html
– Raheela Aslam
Nov 20 at 12:24
@RaheelaAslam have you checked the link before suggesting it? Is there any particular section I should pay attention to?
– Opal
Nov 20 at 12:25
@RaheelaAslam have you checked the link before suggesting it? Is there any particular section I should pay attention to?
– Opal
Nov 20 at 12:25
add a comment |
2 Answers
2
active
oldest
votes
up vote
2
down vote
You can use similar like
in terminal
db.events.find({"carbonCopy.status":"NEW"})
in termilnal if you need existance as well
db.events.find({carbonCopy.status:{"$exists":true}},"carbonCopy.status":"NEW"})
NOW when it comes to SDM
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW")
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW").And("carbonCopy.status").exists(true)
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
add a comment |
up vote
0
down vote
accepted
It's possible with the following piece of code:
QEvent event = QEvent.event;
PathBuilder<Event> query = new PathBuilder<Event>(Event.class, "entity");
BooleanExpression expr = query.getMap("objectCarbonCopy", String.class, String.class).get("status").eq(Expressions.constant("NEW"));
Where QEvent
is querydsl generated class.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53392877%2fusing-querydsl-with-undetermined-schema-with-mongo-and-spring-boot%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
You can use similar like
in terminal
db.events.find({"carbonCopy.status":"NEW"})
in termilnal if you need existance as well
db.events.find({carbonCopy.status:{"$exists":true}},"carbonCopy.status":"NEW"})
NOW when it comes to SDM
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW")
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW").And("carbonCopy.status").exists(true)
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
add a comment |
up vote
2
down vote
You can use similar like
in terminal
db.events.find({"carbonCopy.status":"NEW"})
in termilnal if you need existance as well
db.events.find({carbonCopy.status:{"$exists":true}},"carbonCopy.status":"NEW"})
NOW when it comes to SDM
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW")
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW").And("carbonCopy.status").exists(true)
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
add a comment |
up vote
2
down vote
up vote
2
down vote
You can use similar like
in terminal
db.events.find({"carbonCopy.status":"NEW"})
in termilnal if you need existance as well
db.events.find({carbonCopy.status:{"$exists":true}},"carbonCopy.status":"NEW"})
NOW when it comes to SDM
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW")
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW").And("carbonCopy.status").exists(true)
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
You can use similar like
in terminal
db.events.find({"carbonCopy.status":"NEW"})
in termilnal if you need existance as well
db.events.find({carbonCopy.status:{"$exists":true}},"carbonCopy.status":"NEW"})
NOW when it comes to SDM
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW")
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
Criteria criteria = Criteria.where("carbonCopy.status").is("NEW").And("carbonCopy.status").exists(true)
Query query = new Query(criteria);
return mongoTemplate.findOne(query, Event.class);
answered Nov 22 at 5:21
Vipul
429312
429312
add a comment |
add a comment |
up vote
0
down vote
accepted
It's possible with the following piece of code:
QEvent event = QEvent.event;
PathBuilder<Event> query = new PathBuilder<Event>(Event.class, "entity");
BooleanExpression expr = query.getMap("objectCarbonCopy", String.class, String.class).get("status").eq(Expressions.constant("NEW"));
Where QEvent
is querydsl generated class.
add a comment |
up vote
0
down vote
accepted
It's possible with the following piece of code:
QEvent event = QEvent.event;
PathBuilder<Event> query = new PathBuilder<Event>(Event.class, "entity");
BooleanExpression expr = query.getMap("objectCarbonCopy", String.class, String.class).get("status").eq(Expressions.constant("NEW"));
Where QEvent
is querydsl generated class.
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
It's possible with the following piece of code:
QEvent event = QEvent.event;
PathBuilder<Event> query = new PathBuilder<Event>(Event.class, "entity");
BooleanExpression expr = query.getMap("objectCarbonCopy", String.class, String.class).get("status").eq(Expressions.constant("NEW"));
Where QEvent
is querydsl generated class.
It's possible with the following piece of code:
QEvent event = QEvent.event;
PathBuilder<Event> query = new PathBuilder<Event>(Event.class, "entity");
BooleanExpression expr = query.getMap("objectCarbonCopy", String.class, String.class).get("status").eq(Expressions.constant("NEW"));
Where QEvent
is querydsl generated class.
answered Nov 21 at 10:02
Opal
52k20102117
52k20102117
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53392877%2fusing-querydsl-with-undetermined-schema-with-mongo-and-spring-boot%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Can you please look into below link may it help you. querydsl.com/static/querydsl/2.1.0/reference/html/ch02s07.html
– Raheela Aslam
Nov 20 at 12:24
@RaheelaAslam have you checked the link before suggesting it? Is there any particular section I should pay attention to?
– Opal
Nov 20 at 12:25