2017-10-03 1 views
0

J'ai requête dans SQL commeest-il une option pour exécuter la requête hql avec la procédure?

select part_no, base_price, fn_get_ecom_item_new_price(Company_id, Part_No, Unit, Price, 'N') newPrice from ecom_prodmast 

s'il y a une option pour exécuter la même requête dans mise en veille prolongée? existe-t-il un autre moyen d'exécuter une requête select avec fonction en hibernation?

Répondre

0

Vous pouvez utiliser la méthode Session.get() à partir Hibernate et les classes Java générées, alors ressemblera à quelque chose comme ça:

SessionFactory factory=cfg.buildSessionFactory(); 
Session session=factory.openSession(); 
Transaction t=session.beginTransaction(); 
Economy e= (Economy) session.get(Economy.class, part_no ....); 
t.commit(); 
session.close(); 
return e.getData(); 

La classe principale de l'économie doit être configuré pour stocker vos données comme PART_NO base_price , fn_get_ecom_item_new_price, etc. de votre table ecom_prodmast. Cela signifie d'abord configurer Hibernate et générer les classes, puis les utiliser. Vous pouvez trouver des exemples sur Internet sur la façon de. Si vous utilisez Eclipse est encore plus simple, car il existe un plug-in qui fait cela pour vous. Si vous souhaitez accéder à la procédure, cela doit également exister dans les fichiers générés et vous l'appelez comme une simple fonction.

0

Oui, utilise une requête native.

Voici un lien vers Chapter 16. Native SQL. Pour plus d'informations, essayer une recherche google pour "hibernate procédures stockées mysql", il y a environ un million de visites.