EssentialsHSQLPlatformWithNativeSequence.java
资源名称:petclinic.rar [点击查看]
上传用户:dezhong
上传日期:2022-08-10
资源大小:167k
文件大小:1k
源码类别:
Java编程
开发平台:
Java
- package org.springframework.samples.petclinic.toplink;
- import java.io.IOException;
- import java.io.Writer;
- import oracle.toplink.essentials.exceptions.ValidationException;
- import oracle.toplink.essentials.platform.database.HSQLPlatform;
- import oracle.toplink.essentials.queryframework.ValueReadQuery;
- /**
- * Subclass of the TopLink Essentials default HSQLPlatform class, using native
- * HSQLDB identity columns for id generation.
- *
- * <p>Necessary for PetClinic's default data model, which relies on identity
- * columns: this is uniformly used across all persistence layer implementations
- * (JDBC, Hibernate, and JPA).
- *
- * @author Juergen Hoeller
- * @author <a href="mailto:james.x.clark@oracle.com">James Clark</a>
- * @since 1.2
- */
- public class EssentialsHSQLPlatformWithNativeSequence extends HSQLPlatform {
- private static final long serialVersionUID = -55658009691346735L;
- public EssentialsHSQLPlatformWithNativeSequence() {
- // setUsesNativeSequencing(true);
- }
- public boolean supportsNativeSequenceNumbers() {
- return true;
- }
- public boolean shouldNativeSequenceAcquireValueAfterInsert() {
- return true;
- }
- public ValueReadQuery buildSelectQueryForNativeSequence() {
- return new ValueReadQuery("CALL IDENTITY()");
- }
- public void printFieldIdentityClause(Writer writer) throws ValidationException {
- try {
- writer.write(" IDENTITY");
- }
- catch (IOException ex) {
- throw ValidationException.fileError(ex);
- }
- }
- }