[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [eclipselink-users] criteriaquery : fetch not working
|
Hi,
Thanks a lot, it's much better now :-) You put some light in the dark
zones in my mind concerning Eclipselink ;-)
I changed some defaults in the mapping (from default to lazy in most cases).
I also added @BatchFetch annotations on some @OneToMany mappings. Some
things just never need to be read one by one. As I can't go into the
whole team's code (everyone doing things without too much concertation),
I think that's the best thing to do.
A few more questions:
- @BatchFetch introduces a nice default, but in some cases, such as the
one I was describing, I'd like to override that like this:
root.fetch(EtdOffEtd_.etdOffEtdSesCollection, JoinType.LEFT);
Now, if I do both this and leave the @BatchFecth annotation, it just
seems to do both. Is there a way to disable the batch fetch when needed?
- what's the difference between root.fetch() and root.join() in this case?
- I don't really understand if the link you provided could help me
further? Could I still improve the code with this?
Best regards,
Yanncik
Le 4/08/2011 19:20, Tom Ware a écrit :
The default is LAZY for xToMany and EAGER for xToOne. To allow LAZY
to work on xToOne, you will have to not only ensure the mapping is
marked as LAZY, but also ensure EclipseLink can weave the classes.
The classes will be weaved by default on a Java EE 5 compliant
container. You will have to use set the eclispelink jar file as with
the -javaagent flag in Java SE if you are running standalone. Other
cases require other configuration - which are you using?
Looking more closely at your query, you are likely getting more joins
than you need. For instance, you are both fetch joining and joining
EtdOffEtd_.etdInscCoursCollection. Each of those will result in a join.
You may want to consider using our fetch join query hint that allows
you to do multiple level fetch joins.
http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_%28ELUG%29#Join_Fetch