views:

29

answers:

1

Hello there, i'm trying to convert a 'TableController'-Class we used (without ORM) to generate dynamic SQL (actually the order column and direction is appended to the SQL).

Think of this 'TableController' as a class that have a function to return a list of Entities of a given class (known at runtime), in a given order (String column/property name, boolean asc/desc, both at runtime).

The challenge is now, with JPA (Hibernate - but the customer requires to use JPA Interfaces only): How can i realize this without String concatenation, and in a type safe manner?

Thanks!

+1  A: 

The challenge is now, with JPA (Hibernate - but the customer requires to use JPA Interfaces only): how can I realize this without String concatenation, and in a type safe manner?

If you're using a JPA 2.0 implementation, I think you should look at the Criteria API to build dynamic queries.

If you're using JPA 1.0, there is no standard way apart from String concatenation (and my suggestion would be to use Hibernate's proprietary Criteria Queries).

The following article might also give you some (concrete) ideas: Hibernate Querying 102 : Criteria API.

Pascal Thivent
Pascal - thank you for your suggestions. We use JPA 2.0 and i already thought it would lead us to the Criteria API. But how can i solve this particular problem i described?
Mulmoth
Can't be more precise with the actual description of the problem.
Pascal Thivent