Java 如何从hibernate调用过程
我不熟悉hibernate,我想知道我们是否可以从hibernate调用过程。如果我们可以调用任何,请给我一些示例。(我的过程将有多个out参数)首先,您必须获取当前会话并开始事务:Java 如何从hibernate调用过程,java,hibernate,Java,Hibernate,我不熟悉hibernate,我想知道我们是否可以从hibernate调用过程。如果我们可以调用任何,请给我一些示例。(我的过程将有多个out参数)首先,您必须获取当前会话并开始事务: session = sessionFactory.getCurrentSession(); session.beginTransaction(); 接下来,使用方法createStoredProcedureRequesty创建存储过程。它接受过程名称(“listPhones”)作为参数: Stor
session = sessionFactory.getCurrentSession();
session.beginTransaction();
接下来,使用方法createStoredProcedureRequesty
创建存储过程。它接受过程名称(“listPhones
”)作为参数:
StoredProcedureQuery procedure = session.createStoredProcedureQuery("listPhones");
接下来,您需要注册所有输入和输出参数。使用方法注册表存储过程参数
。它的第一个参数是从0开始的参数索引,第二个参数是sql类型的java类型。Sqlvarchar
在java中是String
。第三个参数是
javax.persistence.ParameterMode
enum。它可以是输入
或输出
,输入
,参考光标
procedure.registerStoredProcedureParameter(0, String.class, ParameterMode.IN);
procedure.registerStoredProcedureParameter(1, String.class, ParameterMode.OUT);
最后,您必须按索引设置注册参数:
procedure.setParameter(0, "22222287832,33333287832");
procedure.setParameter(1, string);
是的,这是可能的。发帖前你看过周围吗?(参见示例)。