編程生活

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            113 隨筆 :: 0 文章 :: 18 評論 :: 0 Trackbacks
          1.類庫:
          apache的commons除外
           <classpathentry kind="lib" path="test/lib/hibernate3.jar"/>
           <classpathentry kind="lib" path="test/lib/hibernate-entitymanager.jar"/>
           <classpathentry kind="lib" path="test/lib/jboss-archive-browsing.jar"/>
           <classpathentry kind="lib" path="test/lib/dom4j-1.6.1.jar"/>
           <classpathentry kind="lib" path="test/lib/hibernate-annotations.jar"/>
           <classpathentry kind="lib" path="test/lib/hibernate-commons-annotations.jar"/>
           <classpathentry kind="lib" path="test/lib/javassist.jar"/>
           <classpathentry kind="lib" path="test/lib/cglib-2.1.3.jar"/>
           <classpathentry kind="lib" path="test/lib/asm.jar"/>
           <classpathentry kind="lib" path="test/lib/asm-attrs.jar"/>
           <classpathentry kind="lib" path="test/lib/antlr-2.7.6.jar"/>

          2.persistence.xml
           <persistence-unit name="rmp" transaction-type="RESOURCE_LOCAL">
            <provider>org.hibernate.ejb.HibernatePersistence</provider>
            <properties>
             <property name="hibernate.show_sql" value="true" />
             <property name="hibernate.format_sql" value="true" />
             <property name="hibernate.dialect"
              value="org.hibernate.dialect.Oracle9iDialect" />
             <property name="hibernate.connection.driver_class"
              value="oracle.jdbc.OracleDriver" />
             <property name="hibernate.connection.url"
              value="jdbc:oracle:thin:@172.16.3.3:1521:ngrm" />
             <property name="hibernate.connection.username" value="xxx" />
             <property name="hibernate.connection.password"
              value="xxx123" />
            </properties>
           </persistence-unit>
          3.問題
          1.重復屬性映射問題,特別煩
          @MapSuperClass
          public class A {
              @Transistence
              public String getA11()
              }
          }

          @Entity
          @Table(name="...")
          public class AA extends A {
             @Transistce
             @Override
             public String getA11() {

             }
          }
          要定義兩次@Transistce
          2.new 構造器問題
          select distinct new com.xxx.A(a.id, a.ss) from AA a where a.ddd=?1 and ..

          為啥一定要采用通用構造器來裝載數據?這樣最致命的問題是如果一天要改SQL,則要改構造函數,并且如果選出來的字段比較多,構造函數就沒法看懂了

          完全可以通過缺省構造器實例化,通過其它方式來設值.
          其實這一點就是openJPA也沒有解決好,主要是不支持別名造成的

          3.uuid-hex主鍵生成器,為啥要用
           @GeneratedValue(generator = "system-uuid")
           @GenericGenerator(name = "system-uuid", strategy = "uuid.hex"),該處要引入一個Hibernate的類,以后就只能在職Hibernate的JPA上跑了,受限
          而OpenJPA只用 @GeneratedValue(generator = "uuid-hex")要簡單一些

          4.優點
          1. 驗證器部分,但標記也實在太多了,我現在有點討厭它
          posted on 2007-09-30 17:08 wilesun 閱讀(3845) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 蒙自县| 新干县| 浑源县| 咸阳市| 苍山县| 拜城县| 进贤县| 龙里县| 谢通门县| 温泉县| 高阳县| 陵川县| 香河县| 锡林浩特市| 昌邑市| 山东省| 双桥区| 凤凰县| 定安县| 资溪县| 桃园市| 宣汉县| 威海市| 疏附县| 东阿县| 安平县| 封丘县| 库伦旗| 英德市| 乌恰县| 克什克腾旗| 青铜峡市| 慈利县| 瓮安县| 台东市| 乌鲁木齐市| 安溪县| 霍城县| 民和| 特克斯县| 铁岭市|