我有一个内部进行一些修改的函数,它返回一个值。
最初的想法是做这样的事情:
protected Integer checkXXX(Long id, Long transId)
throws Exception {
final String sql = "SELECT MYSCHEMA.MYFUNC(" + id + ", "
+ transId + ") FROM DUAL";
final BigDecimal nr = (BigDecimal) this.getHibernateTemplate()
.getSessionFactory().getCurrentSession().createSQLQuery(sql)
.uniqueResult();
return nr.intValue();
}
不幸的是,这不适用于Oracle。建议做这种事情的方法是什么?
有没有办法从我的陈述中提取声明的变量?
Hibernate
Session提供了doWork()
一种直接访问的方法java.sql.Connection
。然后,您可以创建并用于java.sql.CallableStatement
执行功能:
session.doWork(new Work() {
public void execute(Connection connection) throws SQLException {
CallableStatement call = connection.prepareCall("{ ? = call MYSCHEMA.MYFUNC(?,?) }");
call.registerOutParameter( 1, Types.INTEGER ); // or whatever it is
call.setLong(2, id);
call.setLong(3, transId);
call.execute();
int result = call.getInt(1); // propagate this back to enclosing class
}
});
问题内容: 我如何使这个小功能“ imageExists”返回ajax请求是否成功? 问题答案: 我相信您将必须使用同步模式并使用单独的变量来存储返回值。
我找到了一些很好的SO链接(如何从异步回调函数返回值?以及从node.js中的回调函数返回值等),但它们并不是不能为我的问题提供解决方案。 我的问题:能够得到异步调用的结果,但我如何使用这个结果返回我的函数? 这里获取callBackResponse的值为true或false,并希望将该值用作:
我在包规格中有记录类型: 和返回此类型的函数。我正在使用MyBatis与Spring的集成。如何调用(使用MyBatis XML映射器)这个函数并将结果映射到POJO对象?
问题内容: 我有一个返回sys-refcursor的Oracle函数,当我使用Hibernate调用此函数时,出现以下异常。 我该如何解决? Oracle功能 我的实体班 在DAO中 问题答案: 可以通过以下方式使用EntityManager调用Oracle函数或存储过程。 对于Oracle功能 创建一个以sys_refcursor作为返回类型的函数 在实体类中,将函数定义为 对于Oracle存储
问题内容: 我遇到了使用ojdbc14.jar从Java 1.6调用Oracle FUNCTION(不是存储过程)的问题。 我从远程服务器调用该函数时不知道该函数包含的内容,我所知道的是: 我需要使用的架构是:FCRLIVE.AP_CH_GET_ACCT_BALANCES 我正在尝试: 但是我一直在日志文件中看到这一点: 我称这个功能错了吗?或者这可能是什么? 在此先感谢您的帮助! 问题答案: 它
问题内容: 我正在寻找一种更好的解决方案,以使用jQuery进行AJAX调用,使PHP文件返回一个数组,并将其作为Javascript数组从客户端发布。这是我一直在做的事情: PHP文件(Example.php): JS档案: 我目前的方法对我的口味来说有点太复杂了。 我想做的就是能够 在PHP方面,并在AJAX调用后将其直接转换为Javascript数组。 想法,有人吗? 问题答案: 使用JSO