Toggle Theme Editor
Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Charcoal

Cách gọi oracle function trong hibernate

Discussion in 'Spring Framework' started by macarong35, 14/11/17.

  1. macarong35

    macarong35 Administrator Staff Member

    Hibernate Session cung cấp một phương thức doWork () cho phép chúng ta truy cập trực tiếp tới java.sql.Connection. Sau đó chúng ta có thể tạo và sử dụng java.sql.CallableStatement để thực thi các function:

    PHP:
    session.doWork(new Work() {
      public 
    void execute(Connection connectionthrows SQLException {
        
    CallableStatement call connection.prepareCall("{ ? = call MYSCHEMA.MYFUNC(?,?) }");
        
    call.registerOutParameter1Types.INTEGER ); // or whatever it is
        
    call.setLong(2id);
        
    call.setLong(3transId);
        
    call.execute();
        
    int result call.getInt(1); // propagate this back to enclosing class
      
    }
    });
    Bạn nào dùng GenericDAOImpl thì thay session bằng getSession() nhé.
    Với cách gọi này chúng ta có thể lấy giá trị trả về từ function để sử dụng. Bạn nào có cách nào hay hơn chia sẻ nhé.
     

Chia sẻ trang này

Loading...