Hibernate框架中,使用JDBC语法

/**
	 * 调用存储过程
	 * 
	 * @param PRONAME
	 * @return
	 */
	public CallableStatement citePro(final String PRONAME){
		Session session = getCurrentSession();
		CallableStatement pro = session.doReturningWork(new ReturningWork<CallableStatement>() {

			@Override
			public CallableStatement execute(Connection connection)
					throws SQLException {
				CallableStatement resultSet = connection.prepareCall(PRONAME);
				return resultSet;
			}
			
		});
		return pro;
		
	}

或者

/**
 * 使用JDBC执行sql语句
 * 
 * @return
 */
public void xx() throws SQLException {
	Session session = getCurrentSession();
	ResultSet resultSet=session.doReturningWork(
			new ReturningWork<ResultSet>() {
				@Override
				public ResultSet execute(Connection connection) throws SQLException {
					String sql="select * from tableName";
					PreparedStatement preparedStatement=connection.prepareStatement(sql);
					ResultSet resultSet=preparedStatement.executeQuery();
					return resultSet;
				}
			}
	);
	while (resultSet.next()){
		System.out.println("rs:"+resultSet.getString("authid"));
	}
}
就是这个doReturnWork方法,里面通过内部类,把resultset对象一层一层返回给这个doReturnWork,这样就可以像用jdbc一样使用hibernate了。


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。