泰仔在線

          java學(xué)習(xí),心情日記,繽紛時(shí)刻
          posts - 100, comments - 34, trackbacks - 0, articles - 0

          作者: yujiebo025∣來源:天極java原文地址2005-1-24

          安裝篇

            一,下載安裝 j2sdk1.4(www.sun.com))或以上,設(shè)置 CLASSPATH,java_home。

            二,下載服務(wù)器,免費(fèi)版本的有 tomcat,resin,當(dāng)然也還有 weblogic之類的巨無霸,不過得看你電腦的配置是否承受的了!

            這里只以resin來說明,其他的配置都差不多,可以查看各個(gè)服務(wù)器自帶的說明文件。

            resin 服務(wù)器可以在 caucho.com下載,選擇合適的版本,下載解壓縮就可以直接使用。

            這里resin有一個(gè) resin-ee版本,這個(gè)主要是帶ejb功能支持的。 如果用不到ejb,一般的就足夠了。
            三,然后就是數(shù)據(jù)庫,有很多數(shù)據(jù)庫產(chǎn)品可以選擇,DB2,Oracle,MSSQL,MySQL等等太多了。這里我選擇MySQL,不僅因?yàn)樗敲赓M(fèi)的,而且它的4.0版本在繼承以前版本的快速穩(wěn)定的基礎(chǔ)上,整合了InnoDB(http://www.innodb.com)先進(jìn)的事務(wù)處理機(jī)制。相信伴隨著Linux的壯大,它將在商業(yè)數(shù)據(jù)庫市場占的一席之地。不過就數(shù)據(jù)庫本身,它還缺少子查詢等強(qiáng)大功能的支持。
          安裝就不多說了,配置好用戶名,密碼。 然后就可以下載 MySQL-Front 來可視化操作數(shù)據(jù)庫。

            四,在Java編程上,一個(gè)IDE的功能顯然不可缺少,現(xiàn)在流行的IDE很多,有JBuilder,Eclipse,IntellJ IDEA,JCreator等等,其中 eclipse借著開源東風(fēng),依靠強(qiáng)大的插件功能被譽(yù)為最有前途的工具,JBuilder從來都最強(qiáng)大功能的java工具,不過大到我的電腦實(shí)在運(yùn)行不了,窮啊,可沒錢配新電腦。所以我還是喜歡JCreator,小巧而又功能不俗,應(yīng)付小規(guī)模的應(yīng)用綽綽有余。編譯開發(fā)時(shí)要想獲得提示支持,需要在 configure--option--JDK Profiles 導(dǎo)入jar文件。

            五,一個(gè)站點(diǎn)前臺(tái)的界面開發(fā),當(dāng)然離不開大名鼎鼎的 Dreamweaver 了,它支持jsp,asp等很多語言的開發(fā)。特別是最近的Dreamweaver MX 2004 增強(qiáng)了站點(diǎn)的功能,可以方便的對一個(gè)站點(diǎn)進(jìn)行控制。面對struts的前臺(tái)自定義標(biāo)簽,有一個(gè)mxp插件可以用來支持顯示sturts的標(biāo)簽。使用前還要在編輯--標(biāo)簽庫 里面導(dǎo)入.tld文件,目前只支持html,和bean 兩個(gè)標(biāo)簽。

            配置篇

            一,resin虛擬站點(diǎn)配置

          <host id='yourweb:8080' app-dir='e:\blog\' class-update-interval='2'>
          <web-app id='/'>
          <directory-servlet id='false'/>
          </web-app>
          <error-log id='log/web-error.log'/>
          <host>

            然后在定義的目錄下面建立站點(diǎn)。

            二,Dreamweaver站點(diǎn)的配置就不多說了。

            三,Struts的配置

            這里我們使用的是struts1.1,下載并解壓縮到臨時(shí)文件夾,就假設(shè)是tem文件夾吧。

            首先拷貝tem/lib/下面所有的.tld文件到站點(diǎn)的/WEB-INF/目錄下,再拷貝所有的.jar文件到/WEB-INF/lib/目錄下,最后web.xml文件中的配置差不多如下:

          <?xml version="1.0" encoding="ISO-8859-1"?>
          <!DOCTYPE web-app
          PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
          "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

          <web-app>

          <servlet>
          <servlet-name>action</servlet-name>
          <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
          <init-param>
          <param-name>config</param-name>
          <param-value>/WEB-INF/struts-config.xml</param-value>
          </init-param>
          <init-param>
          <param-name>debug</param-name>
          <param-value>2</param-value>
          </init-param>
          <init-param>
          <param-name>detail</param-name>
          <param-value>2</param-value>
          </init-param>
          <load-on-startup>2</load-on-startup>
          </servlet>

          <servlet-mapping>
          <servlet-name>action</servlet-name>
          <url-pattern>*.do</url-pattern>
          </servlet-mapping>


          <!-- The Usual Welcome File List -->
          <welcome-file-list>
          <welcome-file>index.jsp</welcome-file>
          </welcome-file-list>


          <!-- Struts Tag Library Descriptors -->
          <taglib>
          <taglib-uri>/tags/struts-bean</taglib-uri>
          <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
          </taglib>

          <taglib>
          <taglib-uri>/tags/struts-html</taglib-uri>
          <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
          </taglib>

          <taglib>
          <taglib-uri>/tags/struts-logic</taglib-uri>
          <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
          </taglib>

          <taglib>
          <taglib-uri>/tags/struts-nested</taglib-uri>
          <taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
          </taglib>

          <taglib>
          <taglib-uri>/tags/struts-tiles</taglib-uri>
          <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
          </taglib>

          </web-app>

            四,Hibernate配置

            下載并拷貝/lib目錄下的

          hibernate2.jar
          commons-beanutils.jar
          commons-collections.jar
          commons-dbcp.jar
          commons-lang.jar
          commons-logging.jar
          commons-pool.jar
          dom4j.jar
          cglib-asm.jar
          connector.jar

            到應(yīng)用站點(diǎn)的/lib目錄下。接下來配置 hibernate.cfg.xml文件

          <?xml version='1.0' encoding='utf-8'?>
          <!DOCTYPE hibernate-configuration
          PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
          <hibernate-configuration>
          <session-factory>

          <property name="hibernate.connection.url">
          jdbc:mysql://localhost:3306/yourdatabase
          </property>
          <property name="hibernate.connection.driver_class">
          org.gjt.mm.mysql.Driver
          </property>
          <property name="hibernate.connection.username">
          yourname
          </property>
          <property name="hibernate.connection.password">
          youyrpassword
          </property>

          <!?- 是否將運(yùn)行期生成的SQL輸出到日志以供調(diào)試-->
          <property name="show_sql">false</property>

          <!--dialect ,每個(gè)數(shù)據(jù)庫都有其對應(yīng)的Dialet以匹配其平臺(tái)特性-->
          <propertyname="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
          <!?- 事務(wù)管理類型,這里我們使用JDBC Transaction -->
          <property name="transaction.factory_class">
          net.sf.hibernate.transaction.JDBCTransactionFactory</property>

          <property name="jdbc.batch_size">10</property>
          <property name="jdbc.use_scrollable_resultset">true</property>

          <!?映射文件配置,注意配置文件名必須包含其相對于根的全路徑-->
          <mapping resource="net/seerlog/hbm/Cat.hbm.xml"/>

          </session-factory>

          </hibernate-configuration>

            以上配置了數(shù)據(jù)庫連接所用的地址和用戶名,密碼等。具體參數(shù)的含義請參考官方文檔。

            映射文件的內(nèi)容可以手工來寫,也可通過一些工具來自動(dòng)生成。

            整個(gè)需要兩種文件: .hbm.xml配置文件 和 .java持久化對象 , 兩者是相互關(guān)聯(lián)的,.hbm.xml 對數(shù)據(jù)庫的映射還需要 .java這個(gè)bean來操作。所以整個(gè)過程需要首先設(shè)計(jì)好數(shù)據(jù)庫,然后根據(jù)數(shù)據(jù)庫導(dǎo)出 .hbm.xml文件 ,然后再導(dǎo)出 .java 文件。 有很多工具可以實(shí)現(xiàn)這個(gè)工程,我們這里采用 Middlegen-Hibernate來實(shí)現(xiàn) 數(shù)據(jù)庫到.hbm.xml文件的轉(zhuǎn)化,用Hibernate-Extension工具包中的 hbm2java 來實(shí)現(xiàn) .hbm.xml 到 .java 文件的轉(zhuǎn)化!

           

            查找關(guān)鍵字”!ENTITY”,得到:

          <!DOCTYPE project [
          <!ENTITY database SYSTEM
          "file:./config/database/hsqldb.xml">
          ]>

            b) Application name

          <property name="name" value="airline"/>

            c) 輸出目錄

            查找關(guān)鍵字“name="build.gen-src.dir"”,得到:

          <property name="build.gen-src.dir" value="${build.dir}/gen-src"/>

            d) 對應(yīng)代碼的Package name

          <hibernate
          destination="${build.gen-src.dir}"
          package="${name}.hibernate"
          genXDocletTags="false"
          genIntergratedCompositeKeys="false"
          javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
          />

            配置完成后,在MiddleGen 根目錄下運(yùn)行ant,就將出現(xiàn)MiddleGen的界面:

            選擇需要的表,單擊窗口頂部的Generate 按鈕,MiddleGen 即為我們生成這些數(shù)據(jù)庫表所對應(yīng)的Hibernate映射文件。

            接下來的工作通過Hibernate Extension 來完成,Hibernate Extension 的tools\bin目錄下包含三個(gè)工具:

            1. hbm2java.bat

            根據(jù)映射文件生成對應(yīng)的POJO。通過MiddleGen 我們已經(jīng)得到了映射文件,下一步就是通過hbm2java.bat工具生成對應(yīng)的POJO。

            2. class2hbm.bat

            根據(jù)POJO class 生成映射文件,這個(gè)工具很少用到,這里也就不再詳細(xì)介紹。

            3. ddl2hbm.bat

            由數(shù)據(jù)庫導(dǎo)出庫表結(jié)構(gòu),并生成映射文件以及POJO。這個(gè)功能與MiddleGen的功能重疊,但由于目前還不夠成熟(實(shí)際上已經(jīng)被廢棄,不再維護(hù)),提供的功能也有限,所以我們還是采用MiddleGen生成映射文件,之后由hbm2java根據(jù)映射文件生成POJO 的方式。

            這里我們使用第一個(gè)hbm2java.bat,利用剛才生成的.hbm.xml文件自動(dòng)生成 java 文件。

            為了使用這個(gè)工具,首先我們需要配置一些參數(shù),打開tools\bin\setenv.bat 文件,修改其中的JDBC_DRIVER和HIBERNATE_HOME環(huán)境變量,使其指向我們的實(shí)際JDBC Driver文件和Hibernate所在目錄。同時(shí)檢查一下環(huán)境變量CP中的各個(gè)項(xiàng)目中是否實(shí)際存在,特別是%CORELIB%下的jar文件,某些版本的發(fā)行包中,默認(rèn)配置中的文件名與實(shí)際的文件名有所出入(如%CORELIB%\commons-logging.jar, 在Hibernate 發(fā)行包中,可能實(shí)際的文件名是commons-logging-1.0.3.jar,諸如此類)。

            使用hbm2java,根據(jù)MiddleGen生成的映射文件生成Java 代碼:

            打開Command Window,在tools\bin目錄下執(zhí)行:

          hbm2java c:\sample\org\hibernate\sample\*.xml --output=c:\sample\

            通過以上步驟我們就生成了所需要的所有基本配置文件。接下來就可以來初始化這些配置啦。

          主站蜘蛛池模板: 同仁县| 广东省| 涡阳县| 西安市| 寿阳县| 布尔津县| 永新县| 绥棱县| 磐安县| 离岛区| 承德县| 平塘县| 宜君县| 罗平县| 巴中市| 易门县| 桐柏县| 五华县| 黄冈市| 鹿邑县| 平舆县| 临海市| 哈巴河县| 临桂县| 岳阳县| 营口市| 天台县| 西安市| 卫辉市| 安泽县| 平南县| 婺源县| 达尔| 喀喇沁旗| 陇西县| 淳安县| 昭通市| 广南县| 谢通门县| 吴桥县| 锦州市|