# ORM: Stored Procedure



## miketech (10. Okt 2007)

Hi zusammen,

ich habe eine kleine Anwendung, die ein paar Datensätzer einer Datenbank anzeigen muss. Bisher bin ich mir noch nicht sicher, wie ich diese Datensätze am besten abfrage. Ob ich die Queries manuell stelle, mit JDBC 4 arbeite (Annotations) oder einen ORM nehme. 

Lohnt sich ein ORM, wie Hibernate auch für kleinere Anwendungen?

Auf jeden Fall habe ich einige Eigenschaften, die ich in der GUI anzeigen muss (z.B. min(xy) oder max(xy)). Für viele Eigenschaften habe ich auch eine Stored Procedure innerhalb der Datenbank. Meine Frage ist nun: Wenn ich meine Queries per Hand schreibe ist es ja kein Problem.

Aber wie gehe ich vor, wenn ich z.B. Hibernate verwende? Kann ich hier Stored Procedures aufrufen?

Oder wie zeige ich z.B. den min()-Wert eines Datensatzes an? Schicke ich eine ganz normale Query an den ORM? Ich möchte ja kein Objekt, das in der DB ist, sondern nur einen Wert.

Gruß

Mike

PS: Was ist eigentlich an dem Titel "Stored Procedures mit Hibernate" schlimm, dass ich ihn aus Spamschutzgründen nicht verwenden darf? "Hibernate: SP" geht auch nicht... *grmpf*


----------



## *Hendrik (10. Okt 2007)

miketech hat gesagt.:
			
		

> Aber wie gehe ich vor, wenn ich z.B. Hibernate verwende? Kann ich hier Stored Procedures aufrufen?



www.hibernate.org/hib_docs/v3/reference/en/html/querysql.html#sp_query



			
				miketech hat gesagt.:
			
		

> Oder wie zeige ich z.B. den min()-Wert eines Datensatzes an? Schicke ich eine ganz normale Query an den ORM? Ich möchte ja kein Objekt, das in der DB ist, sondern nur einen Wert.



www.hibernate.org/hib_docs/v3/reference/en/html/queryhql.html#queryhql-aggregation

Ich habe allerdings bisher weder das eine noch das andere verwendet. Bei der Aggregatfunktion sollte aber kein Objekt zurückgeliefert werden, das hätte ja keinen Sinn.

Bei einer kleinen Anwendung, die nur ein paar Datensätze anzeigen soll, würde ich nicht unbedingt zu Hibernate greifen. Naja, hängt wohl auch vom Wissenstand ab, wenn man sich auch noch z.B. in Hibernate einarbeiten muss, wäre mir der Aufwand dafür zu hoch.


----------



## maki (10. Okt 2007)

> Für viele Eigenschaften habe ich auch eine Stored Procedure innerhalb der Datenbank.


Existiert das DB Schema schon?

Falls ja, wäre iBatis wahrscheinlich die bessere Wahl für dich.

http://ibatis.apache.org/


----------

