Die nächste GeneratedValue per getter bekommen und persitieren

wm

Mitglied
Ich habe eine Tabelle (keine Sequence), mit der ich meine @GeneratedValue hinterlege:

SQL:
    CREATE TABLE HIBERNATE_ID_GEN
    (
        NAME VARCHAR (255) NOT NULL,
        VALUE NUMERIC(19) NOT NULL
    );

Das sieht für das abstract PersistObj so aus:

Java:
    @Id
    @GeneratedValue(strategy = GenerationType.TABLE, generator = "keyGenerator")
    @TableGenerator(name = "keyGenerator", table = "HIBERNATE_ID_GEN", pkColumnName = "NAME", valueColumnName = "VALUE", pkColumnValue = "NAME", allocationSize = 10)
    private long id;
     
    ...

Ich möchte mir per Hibernate ad hoc mit einem getter die nächste VALUE holen, also hier (VALUE += 10).

Ich weiß nicht, ob das geht, aber ich suche einen getter so etwas wie:

Java:
    ...
        this.entityManager.getTransaction().begin();
        hibernateIdGen.setValue(hibernateIdGen.getValue() + 10);
        Long nextValue = hibernateIdGen.getValue();
        ...
        this.entityManager.persist(hibernateIdGen);
        this.entityManager.getTransaction().commit();
    ...

Aber hier brauche ich dann eine dummyId (@Id), oder geht das auch anders besser?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S @EmbeddedId und @GeneratedValue Data Tier 2

Ähnliche Java Themen

Neue Themen


Oben