kotlin使用spring data jpa(五)

原创
2018/11/02 15:59
阅读数 210

调用存储过程

首先定义一个存储过程,用来生成定单号


CREATE PROCEDURE [dbo].[usp_GenerationCardNo]
	@AutoGrowType tinyint,
	@NewCardNo varchar(20) OUT
AS
BEGIN
		Select @NewCardNo=‘1000001’
END

然后把存储过程挂到任意一个Entity上

@Entity
//可以随意挂到任一表上
@Table(name = "Order", schema = "dbo")
@NamedStoredProcedureQueries(NamedStoredProcedureQuery(
        name = "usp_GenerationCardNo",
		//存储过程名字
        procedureName = "usp_GenerationCardNo",
        parameters = [
		    //输入参数
            StoredProcedureParameter(
                    name = "@AutoGrowType",
                    mode = ParameterMode.IN,
                    type = Byte::class
            ),
			//输出参数
            StoredProcedureParameter(
                    name = "@NewCardNo",
                    mode = ParameterMode.OUT,
                    type = String::class
            )
        ]
))
class OrderEntity {}

使用EntityManager来调用存储过程

    //创建存储过程查询
      val procedureQuery =  entityManager.createNamedStoredProcedureQuery("usp_GenerationCardNo")
        //设置输入参数
        procedureQuery.setParameter("@AutoGrowType",4.toByte())
        procedureQuery.execute()
       //获取输出参数
        val orderId = procedureQuery.getOutputParameterValue("@NewCardNo")
        println(orderId)
展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部