Mam aplikację Spring, która korzysta z JPA (Hibernate) początkowo utworzonego za pomocą Spring Roo. Trzeba przechowywać ciągi o dowolnej długości, więc z tego powodu mam uwagami pole z @Lob:Przechowywanie ciągów o dowolnej długości w Postgresql
public class MyEntity{
@NotNull
@Size(min = 2)
@Lob
private String message;
...
}
Aplikacja działa ok w localhost ale już wdrożone go do zewnętrznego serwera i go pojawił się problem z kodowaniem. Z tego powodu chciałbym sprawdzić, czy dane przechowywane w bazie danych PostgreSQL są w porządku, czy nie. Aplikacja automatycznie tworzy/aktualizuje tabele. I na tym polu (wiadomość) to stworzył kolumnę typu:
tekst nie NULL
Problemem jest to, że po zapisaniu danych, jeśli mogę przeglądać tabelę lub po prostu zrobić SELECT tej kolumnie Nie widzę tekstu, ale liczby. Liczby te wydają się być identyfikatorami do "gdzieś", gdzie te informacje są przechowywane.
Czy ktoś może mi powiedzieć dokładnie, jakie są te identyfikatory i czy jest jakiś sposób, aby zobaczyć zapisane dane w kolumnie @Lob columm z pgAdmin lub klauzuli select?
Czy istnieje lepszy sposób przechowywania ciągów o dowolnej długości w WZP?
Dzięki.
Czy próbowałeś przeglądać DB za pomocą 'pgAdmin'? Czy możesz wyświetlić tekst w kolumnach? (to powinno zadziałać) – beerbajay
@beerbajay tak, próbowałem, ale jeśli przeglądam w pgAdmin lub po prostu wykonuję SELECT, otrzymuję to samo: liczby (identyfikatory) zamiast właściwego tekstu. – Javi
"Tekst NIE NULL" wydaje się w porządku, powinieneś być w stanie zobaczyć tekst. Tak naprawdę nie wygląda to na problem ze sprężyną/hibernacją/JPA, ale problem z bazą danych jest źle skonfigurowany. – beerbajay