我正在使用Hibernate,并且希望将某些NamedStoredProcedureQueries注释与自定义ResultMapping一起使用,即
@Entity
@NamedStoredProcedureQuery(
name = SP_NAME,
procedureName = SP_NAME,
resultSetMappings = {},
parameters = {
@StoredProcedureParameter(mode = ParameterMode.IN, type = BigDecimal.class, name = PARAM)
}
)
问题在于,@ NamedStoredProcedureQuery批注仅在放入实体后才会被处理。
但是在这种情况下,我没有(并想要)一个实体,因为没有必要进行结果映射,也没有ID来放置@Id注释。
还有另一种无需使用实体来声明NamedStoredProcedureQueries的方法吗?
答案 0 :(得分:1)
没有其他方法可以使用该注释。
指定多个命名存储过程查询。查询名称是 适用于持久性单元。命名存储过程查询 批注可以应用于实体或映射的超类。
https://docs.oracle.com/javaee/7/api/javax/persistence/NamedStoredProcedureQueries.html
您可以通过编程方式调用SP。