Hibernate to biblioteka mapowania obiektowo-relacyjnego (ORM) dla języka Java, umożliwiająca programistom wykorzystanie modeli domen w stylu POJO w ich aplikacjach w sposób znacznie wykraczający poza mapowanie obiektowe / relacyjne.
Zasadniczo mam kilka obiektów w tej konfiguracji (rzeczywisty model danych jest nieco bardziej złożony): A ma relację wiele do wielu z B. (B ma inverse="true") B ma relację „wiele do jednego” z C. (mam cascadeustawione "save-update") C jest rodzajem tabeli typów / kategorii. Powinienem również wspomnieć, że klucze podstawowe są …
Jestem trochę nowy na wiosnę i hibernację, więc próbuję zaimplementować prostą aplikację internetową opartą na Spring 3 + hibernate 4, podczas gdy uruchamiam tomcat Mam ten wyjątek: java.lang.NoClassDefFoundError: org/hibernate/cache/CacheProvider at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2427) at java.lang.Class.getDeclaredMethods(Class.java:1791) ... Caused by: java.lang.ClassNotFoundException: org.hibernate.cache.CacheProvider at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523) Odkryłem, że ta klasa była …
Mam model kategorii Hibernate: @Entity @Table(name = "category") public class Category { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name = "id") private long id; @Column(name = "type") private String type; które mają pole typu string. Mam również wyliczenie Java, które reprezentuje typ kategorii: public enum CategoryType { INCOME, OUTCOME; } którego chciałbym użyć zamiast …
@Column(name="open") Używanie dialektu sqlserver z hibernacją. [SchemaUpdate] Unsuccessful: create table auth_session (id numeric(19,0) identity not null, active tinyint null, creation_date datetime not null, last_modified datetime not null, maxidle int null, maxlive int null, open tinyint null, sessionid varchar(255) not null, user_id numeric(19,0) not null, primary key (id), unique (sessionid)) [SchemaUpdate] …
Mam metodę repozytorium Spring Data z natywnym zapytaniem @Query(value = "SELECT g.*, gm.* FROM group g LEFT JOIN group_members gm ON g.group_id = gm.group_id and gm.user_id = :userId WHERE g.group_id = :groupId", nativeQuery = true) GroupDetails getGroupDetails(@Param("userId") Integer userId, @Param("groupId") Integer groupId); i chciałbym zmapować wynik do Non-Entity POJO GroupDetails. …
Z powodzeniem użyłem tej adnotacji na zajęciach Dao. Przywracanie działa również w przypadku testów. Ale teraz potrzebuję przywrócić rzeczywisty kod, a nie tylko testy. Istnieją specjalne adnotacje do wykorzystania w testach. Ale które adnotacje dotyczą kodu niebędącego testem? To dla mnie duże pytanie. Spędziłem już na to dzień. Oficjalna dokumentacja …
Powiedzmy, że mam dwie jednostki: grupę i użytkownika. Każdy użytkownik może być członkiem wielu grup, a każda grupa może mieć wielu użytkowników. @Entity public class User { @ManyToMany Set<Group> groups; //... } @Entity public class Group { @ManyToMany(mappedBy="groups") Set<User> users; //... } Teraz chcę usunąć grupę (powiedzmy, że ma wielu …
Mam problem ze zrozumieniem, kiedy hibernacja osiąga pamięć podręczną drugiego poziomu, a kiedy unieważnia pamięć podręczną. Oto, co obecnie rozumiem: Pamięć podręczna drugiego poziomu przechowuje jednostki między sesjami, zakres to SessionFactory Musisz powiedzieć, które jednostki mają być buforowane, żadna jednostka nie zostanie domyślnie zapisana w pamięci podręcznej Pamięć podręczna zapytań …
Nie udało mi się znaleźć żadnej dokumentacji, jak skonfigurować logowanie Hibernate za pomocą pliku konfiguracyjnego w stylu XML dla Log4j. Czy jest to w ogóle możliwe, czy też mam użyć pliku konfiguracyjnego stylu właściwości do kontrolowania logowania Hibernate? Będziemy wdzięczni, jeśli ktoś ma jakieś informacje lub linki do dokumentacji. EDYCJA: …
Z powodzeniem napisałem mój pierwszy przykład dziecka-mistrza z hibernacją. Po kilku dniach wziąłem go ponownie i zaktualizowałem niektóre biblioteki. Nie jestem pewien, co zrobiłem, ale nigdy nie mogłem sprawić, by znowu działał. Czy ktoś pomoże mi dowiedzieć się, co jest nie tak w kodzie, który zwraca następujący komunikat o błędzie: …
Z API mogłem zobaczyć, że ma to coś wspólnego z proxy. Ale nie mogłem znaleźć wielu informacji na temat proxy i nie rozumiem różnicy między dzwonieniem session.geta session.load. Czy ktoś mógłby mi wyjaśnić lub skierować do strony referencyjnej? Dziękuję Ci!!
Próbowałem uaktualnić hibernację z 4 do 5 w moim projekcie w 4.2wersji wiosennej . Po tej aktualizacji znalazłem następujący błąd w moim śladzie stosu, gdy wywołałem metodę aktualizacji. 10:53:32,185 ERROR TableStructure:149 - could not read a hi value com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'test.hibernate_sequence' doesn't exist Zmieniłem automatycznie zwiększany identyfikator z adnotacją @GeneratedValue(strategy=GenerationType.AUTO) …
Zwykle używam Hibernate w połączeniu z frameworkiem Spring i jego deklaratywnymi możliwościami demarkacji transakcji (np. @Transactional ). Jak wszyscy wiemy, hibernacja stara się być tak nieinwazyjna i jak najbardziej przejrzysta , jednak okazuje się to nieco trudniejsze w przypadku lazy-loadednawiązywania relacji. Widzę wiele alternatyw projektowych o różnych poziomach przejrzystości. Spraw, …
Napisałem zapytanie, aby usunąć niektóre obiekty w moim interfejsie JPaRepository, ale kiedy wykonuję zapytanie, zgłasza wyjątek! Czy ktoś może mi to wyjaśnić? Pytanie: public interface LimitRepository extends JpaRepository<CLimit, Long> { @Query("delete from CLimit l where l.trader.id =:#{#trader.id}") void deleteLimitsByTrader(@Param("trader") CTrader trader); } Mam ten błąd, czy ktokolwiek może mi to …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.