新聞中心
這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Hibernate存儲(chǔ)過(guò)程的調(diào)用
下邊是簡(jiǎn)單的Hibernate存儲(chǔ)過(guò)程

Java代碼:
- create PROCEDURE proc()
- begin
- select * from proctab;
- end ; create PROCEDURE proc()
- begin
- select * from proctab;
- end ;
Hibernate存儲(chǔ)過(guò)程調(diào)用的一種方法是通過(guò)Hibernate傳統(tǒng)的xml映射方式去調(diào)用。
Java代碼:
- <class name="com.test.User" table="proctab">
class="native"/> - class>
- <return alias="user" class="com.test.User">
- <return-property name="id" column="id" />
- <return-property name="name" column="name" />
- <return-property name="age" column="age" />
- return>
- {call proc()}
- <class name="com.test.User" table="proctab">
class="native"/> - class>
- <return alias="user" class="com.test.User">
- <return-property name="id" column="id" />
- <return-property name="name" column="name" />
- <return-property name="age" column="age" />
- return>
- {call proc()}
調(diào)用方法 Java代碼:
- Session ss= HibernateSessionFactory.getSession()
- List li=ss.getNamedQuery("getUser").list();
- ss.close();
- Session ss= HibernateSessionFactory.getSession()
- List li=ss.getNamedQuery("getUser").list();
- ss.close();
及其類似jdbc的方法 Java代碼:
- Session session =HibernateSessionFactory.getSession();
- Connection conn = session.connection();
- ResultSet rs =null;
- CallableStatement call = conn.prepareCall("{Call proc()}");
- rs = call.executeQuery();
- rs.close();
- session.close();
- Session session =HibernateSessionFactory.getSession();
- Connection conn = session.connection();
- ResultSet rs =null;
- CallableStatement call = conn.prepareCall("{Call proc()}");
- rs = call.executeQuery();
- rs.close();
- session.close();
這種方法基本上就是jdbc,不過(guò)很簡(jiǎn)單,總是感覺(jué)怪怪的~還有就是通過(guò)強(qiáng)大的createSQLQuery來(lái)實(shí)現(xiàn),o(∩_∩)o...哈哈 個(gè)人比較喜歡這種方法
Java代碼:
- Session session =HibernateSessionFactory.getSession();
- SQLQuery query = session.createSQLQuery("{Call proc()}");
- List list =query.list();
- session.close();
- Session session =HibernateSessionFactory.getSession();
- SQLQuery query = session.createSQLQuery("{Call proc()}");
- List list =query.list();
- session.close();
如果沒(méi)有返回值 直接用execute的方法就可以了,(*^__^*) 忘了一個(gè)重要的問(wèn)題就是Hibernate存儲(chǔ)過(guò)程的傳參問(wèn)題
Java代碼:
- CallableStatement call = conn.prepareCall("{Call proc(?)}");
- call.setString(1, 參數(shù));
- rs = call.executeQuery();
- CallableStatement call = conn.prepareCall("{Call proc(?)}");
- call.setString(1, 參數(shù));
- rs = call.executeQuery();
Java代碼:
- SQLQuery query = session.createSQLQuery("{Call proc(?)}");
- query.setString(0, 參數(shù));
- List list =query.list();
以上便是對(duì)Hibernate存儲(chǔ)過(guò)程調(diào)用的認(rèn)識(shí),粗陋之處還請(qǐng)指正。
分享標(biāo)題:Hibernate存儲(chǔ)過(guò)程的調(diào)用
文章源于:http://m.fisionsoft.com.cn/article/dhicppo.html
其他資訊
- 云服務(wù)器重裝系統(tǒng)后遠(yuǎn)程連接不上了?(網(wǎng)站全打不開(kāi)遠(yuǎn)程進(jìn)不去-云服務(wù)器問(wèn)題)
- 什么樣的網(wǎng)站需要優(yōu)化?怎樣優(yōu)化比較好?
- 萬(wàn)網(wǎng)主機(jī)怎么用,萬(wàn)網(wǎng)獨(dú)享系列主機(jī)操作系統(tǒng)_萬(wàn)網(wǎng)電腦版
- 你心心念念的RabbitMQ個(gè)人實(shí)踐來(lái)了來(lái)了它來(lái)了
- 香港服務(wù)器、美國(guó)服務(wù)器和國(guó)內(nèi)服務(wù)器的區(qū)別有哪些


咨詢
建站咨詢
