Heim > Datenbank > MySQL-Tutorial > HIbernate 调用Oracle存储过程

HIbernate 调用Oracle存储过程

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-07 17:10:26
Original
1488 Leute haben es durchsucht

1、创建存储过程 Proc代码 create or replace procedure changesalary(p_employeeid number, p_newsalary number) is be

1、创建存储过程

Proc代码

create or replace procedure changesalary(p_employeeid number, p_newsalary number) is begin update employees set salary= p_newsalary where employee_id = p_employeeid; if sql%notfound then raise_application_error(-20100,'Invalid Employee Id'); end if; end; /

2、hibernate配置

Xml代码

org.hibernate.dialect.Oracle9Dialect oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:@localhost:1521:xe hr hr update true

 3、hibernate应用

(1)使用JDBC连接

Java代码

import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class CallSP { public static void main(String[] args) throws Exception { Configuration c = new Configuration().configure(); SessionFactory sf = c.buildSessionFactory(); Session session = sf.openSession(); session.beginTransaction(); Connection con = session.connection(); // obtain JDBC connection from Session object CallableStatement cs = con.prepareCall("{ call changesalary(?,?) }"); cs.setInt(1,100); // first parameter index start with 1 cs.setInt(2,6000); // second parameter cs.execute(); // call stored procedure session.getTransaction().commit(); session.close(); sf.close(); } }

 (2)使用Native SQL

Java代码

linux

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage