編程生活

             :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            113 隨筆 :: 0 文章 :: 18 評(píng)論 :: 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.重復(fù)屬性映射問題,特別煩
          @MapSuperClass
          public class A {
              @Transistence
              public String getA11()
              }
          }

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

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

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

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

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

          4.優(yōu)點(diǎn)
          1. 驗(yàn)證器部分,但標(biāo)記也實(shí)在太多了,我現(xiàn)在有點(diǎn)討厭它
          posted on 2007-09-30 17:08 wilesun 閱讀(3845) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 涞源县| 永州市| 华坪县| 任丘市| 巴青县| 响水县| 宝兴县| 环江| 普兰店市| 上犹县| 汝南县| 河源市| 垫江县| 华宁县| 玉林市| 西和县| 县级市| 灵武市| 平武县| 孙吴县| 双江| 竹山县| 营口市| 咸阳市| 万安县| 阿合奇县| 祁门县| 青铜峡市| 定南县| 宁陕县| 固镇县| 攀枝花市| 武安市| 临泉县| 清丰县| 义马市| 灌阳县| 化州市| 永州市| 青田县| 虹口区|