dya-victor
dya-victor

Reputation: 105

Hibernate, aliases

I noticed that hibernate generates different aliases for the same columns each time i try to access the same table:

Hibernate: select person0_.id as id0_0_, person0_.nam as nam0_0_, person0_.fam as fam0_0_, person0_.otc as otc0_0_ from web_db.Person person0_ where person0_.id=?
Hibernate: select person0_.id as id4_0_, person0_.nam as nam4_0_, person0_.fam as fam4_0_, person0_.otc as otc4_0_ from web_db.Person person0_ where person0_.id=?

Is there any way to get to hibernate to generate identical aliases for identical queries? For example:

Hibernate: select person0_.id as id0_0_, person0_.nam as nam0_0_, person0_.fam as fam0_0_, person0_.otc as otc0_0_ from web_db.Person person0_ where person0_.id=?
Hibernate: select person0_.id as id0_0_, person0_.nam as nam0_0_, person0_.fam as fam0_0_, person0_.otc as otc0_0_ from web_db.Person person0_ where person0_.id=?

Upvotes: 6

Views: 4982

Answers (4)

Pascal Thivent
Pascal Thivent

Reputation: 570325

Have a look at HHH-2448 which covers this topic and has a patch for deterministic alias generation.

Upvotes: 4

dya-victor
dya-victor

Reputation: 105

First, I'm using Oracle 9i.

Different queries causes server to do hard parse. If there are many such queries, database server responsibility is falling down. We have to use bind variables to avoid this problem.

Upvotes: 0

dya-victor
dya-victor

Reputation: 105

Anyway, my solution - named queries, where I will specify how to select data explicitly...

Upvotes: 1

o.k.w
o.k.w

Reputation: 25790

Short answer: nope

Why?
That's the whole point isn't it? You are abstracted from the actual query statements.

Upvotes: -3

Related Questions