Utrzymuję Clob Dane za pomocą Basenu Hibernacji i Hikari. Podczas testowania używam HSQL w pamięci DB. Ale produkcja używam innego DB. Typ danych Java CLOB jest łańcuch dla HSQL DB. Ale mój prawdziwy typ danych DB DB jest bajtem []. Używam Arquillian do testowania.

Jak używać bajtu [] Typ danych dla głównego rodzaju kodowania i typu danych do testowania?

Próbowałem z alternatywą, ale nie działa, a także próbowałem specjalizuje się, nie ma szczęścia.

@Entity
class Article {
   @Id
   private long id;
    @Lob
    @Column(name="data", columnDefinition = "CLOB")
    private byte[] data;

}

<dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>5.3.7.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-hikaricp</artifactId>
            <version>5.3.7.Final</version>
        </dependency>

Jak rozwiązać ten problem typu danych podczas testowania?

0
Gnana 28 luty 2019, 07:07

2 odpowiedzi

Najlepsza odpowiedź

Ponieważ moja produkcja i test DB są różne i napotykające typ danych Clob dla Java jest inny w obu DB.

create.sql

Utwórz artykuł tabeli (Id Idgener, Binary Data (500));

Stworzyłem inny schemat do testowania i załadowałem te schemat za pomocą persistence.xml. Poniżej poniższa konfiguracja w persistencja.xml do testowania samego.

    <property name="javax.persistence.schema-generation.database.action" value="drop-and-create"/>
    <property name="javax.persistence.schema-generation.create-source" value="script"/>
    <property name="javax.persistence.schema-generation.create-script-source" value="schema/create.sql"/>
    <property name="javax.persistence.schema-generation.drop-source" value="script"/>
    <property name="javax.persistence.schema-generation.drop-script-source" value="schema/drop.sql"/>

Wszystkie Utwórz schemat tabeli jest dostępny w CREATE.SQL i Schemat Drop Table jest dostępny w Drop.sql.

Działa teraz dobrze.

0
Gnana 4 marzec 2019, 17:41

Jeśli nie masz dostępu do zawartości sznurków danych wewnątrz Zapytania SQL, można użyć blob lub binarnego jako typu danych w HSQLDB.

0
fredt 3 marzec 2019, 19:49