我需要使用Hibernate从Oracle Sequence中获取下一个值。我没有将此获取的值用作主键。所以它没有映射到任何实体和列 我想做的事:在Non-Entity类中从Oracle Sequence中获取下一个值;并使用此获取的值进行业务逻辑中的某些计算。我正在使用这样的东西,但它不起作用
@Component (name="nextValGenerator")
public class NextValGenerator {
@Id
@GenericGenerator(name = "sequence", strategy = "sequence", parameters = {
@org.hibernate.annotations.Parameter(name = "sequenceName", value = "my_seq"),
@org.hibernate.annotations.Parameter(name = "allocationSize", value = "1")})
@GeneratedValue(generator = "sequence", strategy=GenerationType.SEQUENCE)
private Long id;
public Long getId() { return id; }
}
但是,当我在nextValGenerator.getId()
中致电bizManager
时,它始终会返回null
。