Java SequenceGenerator与另一个数据库的自定义查询

Java SequenceGenerator与另一个数据库的自定义查询,java,sequence-generators,Java,Sequence Generators,Im使用SequenceGenerator和GeneratedValue以及序列“seq_user_hierarchy”在ID字段中执行“select nextval('NAME_OF_sequence')” 是否可以使用自定义查询(如“从\u视图的名称\u中选择值”)而不是默认查询 是否有其他方法在id字段中插入自定义查询的结果 提前谢谢 /** * User hierarchy JPA entity. */ @Entity @Table(name="USER_HIERARCHY") @Dat

Im使用SequenceGenerator和GeneratedValue以及序列“seq_user_hierarchy”在ID字段中执行“select nextval('NAME_OF_sequence')”

是否可以使用自定义查询(如“从\u视图的名称\u中选择值”)而不是默认查询

是否有其他方法在id字段中插入自定义查询的结果

提前谢谢

/**
* User hierarchy JPA entity.
*/
@Entity
@Table(name="USER_HIERARCHY")
@Data
@AllArgsConstructor
@RequiredArgsConstructor
@Builder
@EqualsAndHashCode(of={"id"},callSuper=false)
@ToString(of={"id"})
public class UserHierarchy extends AuditableEntity{

/**
 * User hierarchy id.
 * 
 * @param id New value for this User hierarchy's id.
 * @return The current value of this User hierarchy's id.
 */

@SequenceGenerator(name="seq_user_hierarchy", sequenceName="seq_user_hierarchy")
@Id
@GeneratedValue(generator="seq_user_hierarchy")
private Long id;


/**
 * User hierarchy user.
 * 
 * @param id New value for this User hierarchy's user.
 * @return The current value of this User hierarchy's user.
 */
@ManyToOne
@JoinColumn(name = "USER_ID")
User user;

/**
 * User hierarchy team.
 * 
 * @param id New value for this User hierarchy's team.
 * @return The current value of this User hierarchy's team.
 */
@OneToOne
@JoinColumn(name="TEAM_ID")
SalesTeam team;

/**
 * User hierarchy branch.
 * 
 * @param id New value for this User hierarchy's branch.
 * @return The current value of this User hierarchy's branch.
 */
@OneToOne
@JoinColumn(name="BRANCH_ID")
SalesBranch branch;

/**
 * User hierarchy area.
 * 
 * @param id New value for this User hierarchy's area.
 * @return The current value of this User hierarchy's area.
 */
@OneToOne
@JoinColumn(name="AREA_ID")
SalesArea area;

/**
 * User hierarchy region.
 * 
 * @param id New value for this User hierarchy's region.
 * @return The current value of this User hierarchy's region.
 */
@OneToOne
@JoinColumn(name="REGION_ID")
SalesRegion region;

/**
 * User hierarchy is team leader.
 * 
 * @param id New value for this User hierarchy's is team leader.
 * @return The current value of this User hierarchy's is team leader.
 */
Boolean isTeamleader;

@Temporal(TemporalType.TIMESTAMP)
private Date startDate;

@Temporal(TemporalType.TIMESTAMP)
private Date endDate;

}

请尝试以下代码更改并确认其是否有效

public class UserHierarchy extends AuditableEntity {

...

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "author_generator")
@SequenceGenerator(name="author_generator", sequenceName = "author_seq")
@Column(name = "id", updatable = false, nullable = false)
private Long id;

...

}
对上述代码段的解释:

  • @GeneratedValue注释中,generator属性是在以下注释中定义的逻辑名称
  • @SequenceGenerator注释中,sequenceName属性是数据库序列的实际名称,name属性是对上述生成器逻辑名称的解析

  • 此外,这些链接()可能对您有所帮助。

    也许这可以帮助您。谢谢Varum,对不起,我不明白这将如何让我执行“从视图名称中选择值”并将其插入ID字段。为此,我相信您可以按照Roni Koren Kurtberg在您的查询评论中共享的链接进行操作。所以,这将允许您访问代码部分,您可以在其中选择下一个值以及其他内容。