熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java開源技術 >> 正文

Eclipse3.2+Oracle9配置

2013-11-23 20:22:58  來源: Java開源技術 

  Java的Web開發環境布置向來很煩瑣還記得在做本科畢業設計時配置JBuilder+Weblogic+SQLk整合環境時的痛苦經歷近來整合配置Eclipse+Tomcat+Oraclei環境又累了N小時這可不得不怪B/S結構的苦了開發者方便千萬用戶捨己為人精神以及各種工具版本紛雜帶來的不便與不少不負責任網友的胡亂指引下面小弟把自己的成功經驗向大家匯報希望有需要的友人能少走彎路具體步驟如下
   
    安裝Java開發環境Eclipse安裝Oraclei數據庫
   
    首先安裝SUN的JDK以上版本的Java基礎開發環境配置Java系統變量(這個太基礎不具體展開了)接著下載解壓安裝Eclipse開發環境根據個人需要安裝語言包MyEclipse等插件擴充功能(也可以先不安裝)
   
    安裝Oraclei數據庫創建測試數據庫NBZJU與DBA:LUHAO/建立表空間LUHAO和測試表USER_INF其中USER_INF表具有USER_IDUSER_NAMEUSER_TEL字段屬性並添如若干測試記錄
   
    安裝Tomcat及其插件
   
    下載並解壓Tomcat啟動插件tomcatPluginVzip將其下目錄文件拷入eclipse\plugins目錄下(這步若成功執行eclipse運行後將發現多了Tomcat菜單項及其啟動停止重啟等快捷按鈕若看不到可能通過刪除eclipse\configuration目錄下除configini外所有文件再重啟eclipse來解決)
   
    下載Tomcat標准程序apachetomcatzip和admin控制台程序apachetomcatadminzip(將後者解壓入前者的解壓目錄下可以獲得登陸admin圖形管理界面的功能這將方便後面的數據源配置不用直接在serverxml中自己輸入參數即通過圖形界面配置生成相應的標准XML參數否則手動輸入參考來的配置容易出錯因為不同版本tomcat的XML標記語法解析不同例如版的參數放入版是無效的因此強烈建議用圖形界面配置數據源!)


   
    配置系統變量TOMCAT_HOME其值為關聯到apachetomcat目錄的路徑打開apachetomcat\conf\tomcatusersxml文件在<tomcatusers></tomcatusers>標記元素中加入<user username=luhao password= roles=adminmanager/>即加入角色身份為admin和manager的管理員luhao我們之後需要以manager角色上傳Web應用程序和以admin角色配置數據員再打開apachetomcat\conf目錄下serverxml文件將<Connector元素後port=的屬性改為port=(注意由於oracle已占用了Tomcat默認的訪問端口必須更改其它未被占用的空閒端口此處假設為
   
    接下來運行eclipse程序配置Tomcat屬性打開菜單窗口/首選項打開Java/已安裝的JRE選項將運行環境參數位置定位於JDK目錄下的JRE目錄打開Tomcat選項Tomcat Version選擇xTomcat Home定位到apachetomcat目錄其余默認關聯即可打開Tomcat/JVM SettingsTomcat/Source Path選項JRE選擇剛配置的已安裝的JREAutomatcially compute source path打勾再打開Tomcat Manager App選項url輸入username和password填Tomcat中新加入的luhao和(這步可以保證將Web應用程序發布到Tomcat項目Reload也不會出錯)
   
    獲取Oraclei相應的JDBC驅動程序配置Data Sources和Context
   
    拷貝Oraclei安裝目錄下ora/jdbc/lib/classesjar驅動文件到Tomcat目錄下common/lib公共文件夾下
   
    然後在eclipse中啟動Tomcat(點擊那個貓的圖標即可)以luhao/身份登陸後新建數據源其中JNDI Name:jdbc/Oracle(此數據源JNDI名字可以隨意取但不可重復)Data Source URL:@localhost::NBZJU(為Oracle訪問端口NBZJU為要訪問的數據庫名稱)JDBC Driver Class:oraclejdbcdriverOracleDriver(可打開classesjar文件查看到相應的路徑否則驅動有誤)Username:luhao和Password:(填NBZJU數據庫有訪問權限的用戶即可)其余選項默認即可數據源保存及遞交後conf目錄下serverxml文件的全局命名資源GlobalNamingResources元素內將多一項Resource屬性
   
    <Resource
   
    name=jdbc/Oracle
   
    type=javaxsqlDataSource
   
    password=
   
    driverClassName=oraclejdbcdriverOracleDriver
   
    maxIdle=
   
    maxWait=
   
    username=luhao
   
    url=@localhost::NBZJU
   
    maxActive=/>
   
    數據源配置完成後還須配置相關的上下文信息context來使程序獲得JDNI初始化引用從而定位數據源由於之前定義的是全局資源我們可在apachetomcat\conf\contextxml文件中的Context元素中加入關聯屬性
   
    <ResourceLink global=jdbc/Oracle name=jdbc/Oracle type=javaxsqlDataSource/>
   
    創建測試Web程序
   
    運行eclipse新建一個Tomcat項目到任意的當前工作空間此處項目取名quickstart當項目一經創建我們就可以發現apachetomcat\conf目錄下serverxml文件的Host元素內自動增加了以下屬性內容(用來關聯發布Web應用程序的工作目錄)
   
    <Host
   
    appBase=webapps
   
    name=localhost><Context path=/quickstart reloadable=true docBase=E:\luhao\workspace\quickstart workDir=E:\luhao\workspace\quickstart\work />
   
    </Host>
   


    新建JSP測試頁面indexjsp到quickstart工程目錄下(JSP頁面編輯需要有支持Web開發功能的eclipse插件支持如MyEclipseWTP等插件)代碼如下
   
    <%@ page contentType=text/html; charset=gb %>
   
    <%@ page import=javaxnaming* %>
   
    <%@ page import=javaxsql* %>
   
    <%@ page import=javasql* %>
   
    <html><head><title>Oracle JDBC Test</title></head>
   
    <body>
   
    <%
   
    Connection conn=null;
   
    Statement stmt=null;
   
    ResultSet rs=null;
   
    ResultSetMetaData md=null;
   
    try{
   
    Context initCtx=new InitialContext()
   
    //獲得JNDI初始化上下文信息即獲取目錄上下文的引用
   
    DataSource ds=(DataSource)initCtxlookup(java:comp/env/jdbc/Oracle
   
    //定位數據源jdbc/Oracle
   
    if(ds!=null){
   
    outprintln(已經獲得DataSource
   
    outprintln(dstoString())
   
    conn=dsgetConnection()
   
    if(conn!=null){
   
    outprintln(create connection sucess!
   
    stmt=conncreateStatement()
   
    outprintln(createStatement Success!
   
    rs=stmtexecuteQuery(select * from LUHAOUSER_INF
   
    md=rsgetMetaData()
   
    outprintln(<table border=>
   
    outprintln(<tr>
   
    for(int i=;i<mdgetColumnCount()i++){
   
    outprintln(<td>+mdgetColumnName(i+)+</td>
   
    }
   
    while(rsnext()){
   
    outprintln(<tr>
   
    outprintln(<td>+rsgetString()+</td>
   
    outprintln(<td>+rsgetString()+</td>
   
    outprintln(<td>+rsgetString()+</td>
   
    outprintln(<td>
   
    }
   
    outprintln(</table>
   
    connclose()
   
    }
   
    }
   
    }catch(Exception e){
   
    outprintln(etoString())
   
    Systemoutprintln(etoString())
   
    }
   
    %>
   
    </body>
   
    </html>
   
    啟動數據庫運行測試程序
   
    運行測試頁面前必須先啟動後台數據庫辦法是打開Oracle SQL Plus用DBA身份連接入NBZJU數據庫conn luhao/ as sysdba再用命令startup完成啟動數據庫(shutdown可以關閉數據庫)
   
    保存工程啟動Tomcat打開頁面若能看到各種連接成功的消息及完整的USER_INF測試表內容那麼表明整個Web測試程序運行成功了!
   
    總結
   
    實際的整合配置過程除上述全局化配置方法可行外還可以采用局部化配置方法(某些版本Tomcat可能行不通)局部化配置方法較全局化配置方法區別僅在於將數據源jdbc/Oracle的Resource屬性內容加入工程所在quickstart目錄下的METAINF\contextxml文件的Context元素中去而不用改變Tomcat目錄的conf子目錄下的serverxml和contextxml文件


From:http://tw.wingwit.com/Article/program/Java/ky/201311/28407.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.