歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Hibernate問題

1.hibernate.properties和hibernate.cfg.xml都是放在classes目錄下

2.如果配置文件為hibernate.properties.則需要將javaBeanClassName.hbm.xml文件放在類的包的根目錄下。並且要在Java中寫成

  Configuration config = new Configuration();                                      
        config.addClass(xxx.class);

3.如果配置文件為hibernate.cfg.xml。則需要將javaBeanClassName.hbm.xml文件放在與hibernate.cfg.xml文件相同的目錄下,即webApp/WEB-INF/classes/javaBeanClassName.hbm.xml。並且在Java中寫成:

Configuration config = new Configuration();                                      
        config.configure();

4.如果在映射文件中配置<id>的<generator>元素為native時,它會默認到當前數據庫中尋找hibernate_sequence(在Oracle或postgresql數據庫中)。注意,數據庫的序列在每個數據庫中是獨立存在的。如果有一個數據庫名為"my"且有一個序列名為my_sequence, 還有另一個數據庫名為"you"且有一個名為my_sequence序列,這兩者是可以合法存在的。

5.List<E> result = session.createQuery("fromCLASSNAME").list();

注意,from後面跟著的是類名,並且要注意大小寫,因為它是根據Java的特點(大小敏感)來確定的。

6.在hibernate中配置check in約束:

<class name="org.blog.admin.beans.Administrator" table="administrator" lazy="false"check="admin_status in ('close','open') ">

7.在Hibernate配置中,每個class元素中,都有有一個lazy屬性, 其值可以設置為true或false(默認為true).如果設置為true,則代表對對象進行延遲加載.

8.在一個復雜的項目中,在建表時,千萬要測試完之後再去做其他事,要不在後期的操作中,會發生比較多的問題.這是一個教訓.

Copyright © Linux教程網 All Rights Reserved