1、版本
springboot+springcloud 1.5.8.RELEASE
2、springboot依赖jpa
org.springframework.boot
spring-boot-starter-data-jpa
3、存储过程栗子如下
Procedure policy_no(a tb_bams_define.card_type_code%Type,
b Out tb_bms_detail.card_no%Type);
4、先创建一个entity
@Entity
@Table(name="Policy_table")
@NamedStoredProcedureQuery(name="policy_no", procedureName = "policy_no",parameters= {
@StoredProcedureParameter(mode=ParameterMode.IN, type=String.class, name="a"),
@StoredProcedureParameter(mode=ParameterMode.OUT, type=String.class, name="b")
})
public class PolicyTable {}
a和b是存储过程中的入参和出参。存储过程的名字保持一致。
5、dao层
public interface PolicyDao extends CrudRepository{
@Procedure(name="policy_no")
String createPolicy(@Param("a")String str);
}
6、调用简单
@Autowired
private PolicyDao policyDao;
note:最主要就是各种名称保存一致。
以上就是jpa调用oracle存储过程方法,亲测成功,有问题,请指正!谢谢