使用appgen自动生成pojo

使用Appfuse自動生成Pojo和hbm檔

參考資源

使用 AppFuse 的七個理由
http://www.ibm.com/developerworks/cn/java/j-appfuse/index.html

使用 AppFuse 快速構建 J2EE 應用
http://www.ibm.com/developerworks/cn/java/j-lo-appfuse/index.html




Appfuse包含的東西很多,我們這邊只會主要是使用到appgen這個工具

1.準備好DB環境,這邊是使用Oracle。本來是想用DB2來測,可是出現了錯誤訊息:不支援的encording,在想是不是不支援Big5呢><。


2.下載Appfuse,目前版本是1.9.4
https://appfuse.dev.java.net/servlets/ProjectDocumentList


3.解壓縮後準備填寫DB連線資料,找到build.properties和properties.xml這兩個檔案。
我在測試時發現如果只修改build.properties他執行時一直組不成我真正要的url,氣到乾脆直接去把properties.xml裡有可能的參數都改成我設的變數。


build.properties

database.type=oracle
database.host=127.0.0.1
database.name=oras01
database.admin.url=jdbc:oracle:thin:@127.0.0.1:1521:oras01
database.admin.username=XXX
database.admin.password=XXX
database.schema=XXX
hibernate.dialect=org.hibernate.dialect.OracleDialect
database.driver_class=oracle.jdbc.driver.OracleDriver



properties.xml

<!-- Defaults for database.properties -->
<property name="database.jar" location="${mysql.jar}"/>
<property name="database.type" value="mysql"/>
<property name="database.name" value="${database.name}"/>
<property name="database.host" value="localhost"/>
<property name="database.username" value="${database.admin.username}"/>
<property name="database.password" value="${database.admin.password}"/>

<!-- database URL for creating other dbs - used in db-create target -->
<property name="database.admin.url" value="${database.admin.url}"/>
<property name="database.admin.username" value="${database.admin.username}"/>
<property name="database.admin.password" value="${database.admin.password}"/>
<property name="hibernate.dialect" value="${hibernate.dialect}"/>
<property name="database.driver_class" value="${database.driver_class}"/>
<property name="database.url" value="${database.admin.url}"/>
<property name="database.show_sql" value="true"/>
<property name="database.schema" value=""/>



3.把oracle的jdbc jar檔ojdbc14.jar複製到 \extras\middlegen\lib\middlegen-2.1\ 下


4.到 extras\appgen\下執行cmd,執行:

set ANT_OPTS=-Xmx512M
ant install

之後跟著指令輸入值,就可以在 appfuse\extras\middlegen\scr 下看到你的java和 hbm檔了




P.S 1 執行的時候如果出現找不到CATALINA_HOME參數這個錯誤的話,在系統變數里新增該變數指向你的Tomcat根目錄

P.S 2 mySQL資料庫不用,可是若DB為Oracle則在build.properties要多設一個參數database.schema=bli,否則在執行時會告訴你找不到該Table。參考 http://chq.name/content/view/127/49/

P.S 3 在執行ant install要消耗的memory似乎不小因而出現了OutOfMemoryError,解決方法先把JVM加大set ANT_OPTS=-Xmx512M 。參考 http://tag.csdn.net/Article/2f4ce478-d25b-4473-adae-d62a305968d0.html

你可能感兴趣的:(oracle,mysql,Hibernate,ant,Appfuse)