Alguém sabe se o hibernate oferece suporte para execução de StoresProcedures ?
Como executo e pego um valor de retorno (tipo OUT) ?
OBrigado
Alguém sabe se o hibernate oferece suporte para execução de StoresProcedures ?
Como executo e pego um valor de retorno (tipo OUT) ?
OBrigado
Cara, tem toneladas de tutoriais disso no google,
Tenta pesquisar com isso aqui: invoke stored procedure hibernate
É eu jah achei várias coisas, mas tudo utilizando XMl como NamedQuery, e eu precisava saber como pegar o parâmetro de retorno, isso tbem não achei.
jakefrog poderia me ajudar aqui => https://community.jboss.org/message/731553#731553
Cara desculpa eu sei que não tem nada a ver com o tópico mas eu vi no seu blog que vc fez algumas coisas com o as 7,
Eu não consigo rodar meus testes e nem criar as tabelas, porém consigo rodar blz a minha app…
Se puder me ajudar diga que abro um tópico para o problema…
Abrcs
Rafael
Segue exemplo
public ResultSet sp_cadastro_atualiza_pesquisa_cadastro_V03(Short tipoAtualizacao, Long clienteId, String cpf,
Short cod_Tipo_Pesquisa, Short qtde, BigDecimal valor, Date data_Ult_Ocorrencia, Date data_Pesquisa) {
Session session = HibernateUtility.getSession();
ResultSet rsRetorno = null;
try {
PreparedStatement st = session.connection().prepareStatement(
"{call sp_cadastro_atualiza_pesquisa_cadastro_V03(?,?,?,?,?,?,?,?)}");
st.setShort(1, tipoAtualizacao);
st.setLong(2, clienteId);
st.setString(3, cpf);
st.setShort(4, cod_Tipo_Pesquisa);
st.setShort(5, qtde);
st.setBigDecimal(6, valor);
st.setDate(7, data_Ult_Ocorrencia);
st.setTimestamp(8, new Timestamp(data_Pesquisa.getTime()));
st.execute();
rsRetorno = (ResultSet) st.getResultSet();
} catch (SQLException ex) {
ex.printStackTrace();
throw new InfrastructureException(ex);
}
return rsRetorno;
}
[quote=Evandro_Contato]Segue exemplo
[code]
public ResultSet sp_cadastro_atualiza_pesquisa_cadastro_V03(Short tipoAtualizacao, Long clienteId, String cpf,
Short cod_Tipo_Pesquisa, Short qtde, BigDecimal valor, Date data_Ult_Ocorrencia, Date data_Pesquisa) {
Session session = HibernateUtility.getSession();
ResultSet rsRetorno = null;
try {
PreparedStatement st = session.connection().prepareStatement(
"{call sp_cadastro_atualiza_pesquisa_cadastro_V03(?,?,?,?,?,?,?,?)}");
st.setShort(1, tipoAtualizacao);
st.setLong(2, clienteId);
st.setString(3, cpf);
st.setShort(4, cod_Tipo_Pesquisa);
st.setShort(5, qtde);
st.setBigDecimal(6, valor);
st.setDate(7, data_Ult_Ocorrencia);
st.setTimestamp(8, new Timestamp(data_Pesquisa.getTime()));
st.execute();
rsRetorno = (ResultSet) st.getResultSet();
} catch (SQLException ex) {
ex.printStackTrace();
throw new InfrastructureException(ex);
}
return rsRetorno;
}
[/code][/quote]
Evandro, valeu pela resposta, me eu estava querendo saber se existe como fazer isso pelo Hibernate, entende ? Não direto no Connection do JDBC.
Ola turim,
Ali ele pega o connection do Hibernate, pois é o que eu usava, achei que era isso que precisava, hehe mas valeu a tentativa. Não sei se tem outro modo além deste e do que vc citou com o named query
abraco,
Evandro