springboot-data-jpa调用oracle存储过程

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存储过程方法,亲测成功,有问题,请指正!谢谢

你可能感兴趣的:(javaEE)