[hibernate-dev] 6.0 - Session#createFilter

Christian Beikov christian.beikov at gmail.com
Mon Jan 2 03:39:40 EST 2017


Let's say we have this entity with an attribute that is not directly 
exposed.

class EntityA { String field; }

and then you pass a collection of EntityA instances to createFilter like

Collection<EntityA> collection = ...
collection = session.createFilter(collection, "field = 
'abc%'").getResultList();

See my point? Since Hibernate can access the field directly, this works, 
but with streams you'd need to expose the field via a getter so you can 
filter for it.

Am 02.01.2017 um 09:25 schrieb Steve Ebersole:
>
> Could you explain the situation where you would map a collection but 
> not expose it?  And btw even create createFilter would not work there 
> because you have to pass createFilter the collection
>
>
> On Mon, Jan 2, 2017, 2:15 AM Christian Beikov 
> <christian.beikov at gmail.com <mailto:christian.beikov at gmail.com>> wrote:
>
>     Well it does when you consider that there might be no getter for a
>     field. With createFilter you could still filter the result list
>     without exposing direct access to the field via a getter.
>
>     Am 02.01.2017 um 08:52 schrieb Steve Ebersole:
>>     Field-access would have zero bearing on this
>>
>>     On Mon, Jan 2, 2017 at 1:30 AM Christian Beikov
>>     <christian.beikov at gmail.com <mailto:christian.beikov at gmail.com>>
>>     wrote:
>>
>>         Sounds good to me, but maybe we could do a poll to see if
>>         people are
>>         using this? I don't know if the filter also works for field
>>         based access
>>         strategy, but that could be a reason for keeping it around.
>>
>>         Regards,
>>
>>         Christian
>>
>>
>>         Am 31.12.2016 um 21:00 schrieb Steve Ebersole:
>>         > As I have not been hearing hardly any feedback on these 6.0
>>         design
>>         > questions I have been trying to start, I'll be doing
>>         something different in
>>         > this and any additional emails.. I'll state what I propose
>>         to do and if
>>         > anyone has issue with it they can make a counter proposal. 
>>         Otherwise I
>>         > plan on following through with my proposal.
>>         >
>>         > I plan on removing Session#createFilter.  There are
>>         numerous reasons why
>>         > which I can discuss if anyone is interested in exploring this.
>>         >
>>         > Ultimately I think it makes sense to handle this via Java 8
>>         streams[1]
>>         > although I am not sure that needs to happen in 6.0
>>         >
>>         > [1] https://hibernate.atlassian.net/browse/HHH-10962
>>         > _______________________________________________
>>         > hibernate-dev mailing list
>>         > hibernate-dev at lists.jboss.org
>>         <mailto:hibernate-dev at lists.jboss.org>
>>         > https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>
>>         _______________________________________________
>>         hibernate-dev mailing list
>>         hibernate-dev at lists.jboss.org
>>         <mailto:hibernate-dev at lists.jboss.org>
>>         https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>
>



More information about the hibernate-dev mailing list