пакет com.rxtc.bi.app.crm.rep.dao.impl;
импортировать java.sql.CallableStatement;
импортировать java.sql.Connection;
импортировать java.sql.ResultSet;
импортировать java.sql.SQLException;
импортировать javax.sql.DataSource;
импортировать org.springframework.orm.hibernate3.SessionFactoryUtils;
импортировать org.springframework.orm.hibernate3.support.HibernateDaoSupport;
/**
*
* <пред>
* Заголовок: Использование хранимых процедур в спящем режиме.
* Просто нужно обойти спящий режим и вызвать API jdbc. Конечно, транзакция по-прежнему управляется спящим режимом:
Предположим, мы создаем следующую хранимую процедуру:
создайте или замените процедуру patchUpdateCustomer(p_age в номере) как
начинать
обновить КЛИЕНТЫ, установите AGE=AGE+1, где AGE> p_age;
конец;
В хранимой процедуре есть параметр p_age, который представляет возраст клиента. Приложение может вызвать хранимую процедуру следующим образом:
* Описание: Описание функций программы.
* </pre>
* @author lichunmei [email protected]
* @версия 1.00.00
* <пред>
* Изменить записи
* Модифицированная версия: Модификатор: Дата модификации: Содержание модификации:
* </pre>
*/
публичный класс Text расширяет HibernateDaoSupport {
публичная недействительная процедура(){
пытаться {
DataSource ds = SessionFactoryUtils.getDataSource(getSessionFactory());
Соединение conn=ds.getConnection();
String sql = "{callatchUpdateCustomer(?)}";
CallableStatement cstmt = conn.prepareCall(sql);
cstmt.setInt(1, 0);//Установим параметр возраста на 0;
cstmt.executeUpdate();
//ResultSet rs = cstmt.executeQuery(sql); если запрос
конн.коммит();
//rs.close();
конн.закрыть();
} catch (SQLException e) {
е.printStackTrace();
}
}
}
Эта статья взята из блога CSDN. При перепечатке указывайте источник: http://blog.csdn.net/xixi_666/archive/2009/12/18/5029768.aspx.
-