關於jsp環境配置及Bean的設定

來源:互聯網
上載者:User
js 我也是一個新手,只是把這二天在碰到的問題寫出來,給其它和我同樣的行者提供參考,由於是初學者,對許多概念,名詞難免有許多不足之處,請指出並給予見諒。

關鍵字:JSP  TOMCAT 配置  環境  Bean  Oracle  資料庫連接

一、所需軟體:jdk1.5.0_03 下載地址:http://192.18.97.107/ECom/EComTicketServlet/BEGIN714BEC085BF81689F1CF58A75F4A7A9A/-2147483648/856515651/1/615302/615146/856515651/2ts+/westCoastFSEND/jdk-1.5.0_03-oth-JPR/jdk-1.5.0_03-oth-JPR:2/jdk-1_5_0_03-windows-i586-p.exe安裝路徑預設為:C:\Program Files\Java\jdk1.5.0_03

 jdk1.5.0_03文檔  下載地址:http://192.18.97.47/ECom/EComTicketServlet/BEGIN4485078F3F07F886D616C10A357249D3/-2147483648/856519743/1/531806/531794/856519743/2ts+/westCoastFSEND/jdk-1.5.0-doc-oth-JPR/jdk-1.5.0-doc-oth-JPR:1/jdk-1_5_0-doc.zip安裝路徑預設為:C:\Program Files\Java\jre1.5.0_03

jakarta-tomcat-5.0.1下載地址:略安裝路徑為:C:\Tomcat 5.0

ORACLE9i企業版(中文)安裝路徑為預設:D:\oracle安裝方式可參考其它資料,也可按其預設安裝。

二、運行環境:Windows 2000 Server

三、開發工具:Jcreator 2.5(編寫、調試java用)Dreamweaver mx(設計頁面用)PLSQL Developer(Oracle資料庫用)

四、配置過程:安裝好jdk及tomcat後,設定jdk系統內容變數(注意是系統內容變數,還有一個使用者環境變數):
JAVA_HOME=C:\Program Files\Java\jdk1.5.0_03CLASSPATH=Files\Java\jdk1.5.0_03\jre\lib\rt.jar;.;PATH=%JAVA_HOME%\bin;如安裝好ORACLE後PATH將變成:D:\oracle\ora90\bin;D:\oracle\ora90\Apache\Perl\5.00503\bin\mswin32-x86;C:\Program Files\Oracle\jre\1.1.8\bin;%JAVA_HOME%\bin;

設定Tomcat環境變數:TOMCAT_HOME=C:\Tomcat 5.0

重新啟動電腦。

測試TOMCAT:在瀏覽器中輸入:http://127.0.0.1:連接埠號碼/如看到以上畫面,即tomcat運行正常。

設定TOMCAT虛擬目錄:開啟C:\Tomcat 5.0\conf下的server.xml,找到</Host>,在之前加入: <Context path="/web" docBase="d:\tnf" debug="0"/>path為虛擬目錄名稱,即輸入:http://127.0.0.1:連接埠號碼/web(如上)docBase為虛擬目錄檔案所在的路徑,如上。

設定完成後重新關閉Tomcat後重新啟動Tomcat.

在瀏覽器中輸入:http://127.0.0.1:連接埠號碼/ manager/html,(要求輸入密碼時輸入你安裝時所設定的使用者名稱和密碼,使用者名稱預設的為:admin),也可以通過輸入:http://127.0.0.1:連接埠號碼,然後在右邊選擇Administration下的Tomcat Manager。

將會顯示如下畫面: 並可看到剛才設定的虛擬目錄。

設定ORACLE資料庫驅動:開啟:D:\oracle\ora90\jdbc\lib,將classes12.jar檔案複製一份到:C:\Program Files\Java\jdk1.5.0_03\jre\lib\ext再複製一份到:C:\Tomcat 5.0\common\classes

然後重新啟動TOMCAT,如果不行,建議重新啟動電腦。

測試自己編寫的帶資料庫連接的jsp檔案(檔案名稱為:oracle_b.jsp):<%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.sql.*"%><?xml version="1.0" encoding="gb2312"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>ORACLE測試</title></head>

<body><%        String OracleDBDriver="oracle.jdbc.driver.OracleDriver";       String DBUrl="jdbc:oracle:thin:@127.0.0.1:1521:ERPDATA";       //1521為ORACLE資料庫的預設連接埠,ERPDATA為安裝ORACLE填寫的SID,也就是資料庫名稱       String UserID="scott";       String UserPWD="tiger";              Connection conn=null;       Statement  stmt=null;       ResultSet  rs=null;       try       {       Class.forName(OracleDBDriver);       }       catch(ClassNotFoundException ex)       {              System.out.println("Class.forname:"+ex);        }    conn=DriverManager.getConnection(DBUrl,UserID,UserPWD);      //stmt=conn.prepareStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);    stmt=conn.createStatement();     String sql="select * from EMP";    rs = stmt.executeQuery(sql);            out.print("<table border>");          out.print("<tr>");            out.print("<th width=100>"+"UserID");               out.print("<th width=50>"+"UserName");          out.print("<tr>"); try   {        while(rs.next())        {          out.print("<tr>");            int n=rs.getInt(1);               out.print("<td>"+n+"</td>");               String e=rs.getString(2);               out.print("<td>"+e+"</td>");          out.print("</tr>");        }    }       catch(SQLException ex)       {              System.err.println("ConnDB.Main:"+ex.getMessage());       }

        out.print("</table>");          rs.close();        %>  </body></html>

可複製以上內容到oracle_b.jsp檔案,儲存在你的虛擬目錄檔案夾中。在瀏覽器中輸入:http://127.0.0.1/web/oracle_B.jsp可見到以下內容:

JSP中使用Bean。在虛擬目錄(如:d\tnf)下建立WEB-INF\classes檔案夾,即:d:\tnf\WEB-INF\classes用Jcreator或其它工具在編寫以下內容:/** * <p>資料庫連接專用包 </p> * <p>Copyright: 牧羊人 Copyright (c) 2005</p> * <p>Company:牧羊人 </p> * @by :牧羊人 18272024 websuper@126.com  * @version 1.0 */

package DB;

import java.sql.*;

public class ConnDB{       String OracleDBDriver="oracle.jdbc.driver.OracleDriver";       String DBUrl="jdbc:oracle:thin:@127.0.0.1:1521:ERPDATA";              String UserID="scott";       String UserPWD="tiger";              Connection conn=null;       Statement  stmt=null;       ResultSet  rs=null;      

//載入資料庫驅動....public ConnDB(){       try       {              Class.forName(OracleDBDriver);              }              catch(ClassNotFoundException e)              {                     System.err.println("ConnDB():"+e.getMessage());              }}

//insert資料public void executeInsert(String sql){       try       {              conn=DriverManager.getConnection(DBUrl,UserID,UserPWD);           stmt=conn.createStatement();           stmt.executeUpdate(sql);           stmt.close();           conn.close();       }       catch(SQLException ex)       {       System.err.println("ConnDB.executeUpdate:"+ex.getMessage());       }}

//查詢資料public ResultSet executeQuery(String sql){       try       {              conn=DriverManager.getConnection(DBUrl,UserID,UserPWD);              stmt=conn.createStatement();              //stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);              rs=stmt.executeQuery(sql);       }       catch(SQLException exc)       {              System.err.println("ConnDB.executeQuery:"+exc.getMessage());       }       return rs;}

/**public static void main(String args[]){       ConnDB conn=new ConnDB();       String sql="select * from EMP";       ResultSet rs=conn.executeQuery(sql);              try       {              while(rs.next())              {                     System.out.print(rs.getInt(1)+"   ");                     System.out.print(rs.getString(2)+"   ");                     System.out.print(rs.getString(3)+"   ");                     System.out.print(rs.getInt(4)+"   ");                     System.out.println(rs.getDate(5));              }       }       catch(SQLException ex)       {              System.err.println("ConnDB.Main:"+ex.getMessage());       }}**/

}                         

然後將檔案ConnDB.java儲存在d:\tnf\WEB-INF\classes中。然後編譯成class位元組碼檔案。

注意:package 後面跟的DB,編譯成class位元組後將產生一個新的檔案夾,和package緊跟的(如DB)相同,建立不要更改其名稱,最好同package後的名稱一致。我曾經被這個問題搞了好幾天。

然後建立oracle.jsp檔案,內容如下:<%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.sql.*"%> <jsp:useBean id="conn" class="DB.ConnDB" scope="page"/><?xml version="1.0" encoding="gb2312"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>ORACLE測試</title></head>

<body><%        /**String OracleDBDriver="oracle.jdbc.driver.OracleDriver";       String DBUrl="jdbc:oracle:thin:@192.168.1.15:1521:ERPDATA";              String UserID="scott";       String UserPWD="tiger";              Connection conn=null;       Statement  stmt=null;       ResultSet  rs=null;              Class.forName(OracleDBDriver);    conn=DriverManager.getConnection(DBUrl,UserID,UserPWD);      //stmt=conn.prepareStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);    stmt=conn.createStatement(); **/    String sql="select * from EMP";    ResultSet rs = conn.executeQuery(sql);            out.print("<table border>");          out.print("<tr>");            out.print("<th width=100>"+"UserID");               out.print("<th width=50>"+"UserName");          out.print("<tr>");         while(rs.next())        {          out.print("<tr>");            String n=rs.getString(1);               out.print("<td>"+n+"</td>");               String e=rs.getString(2);               out.print("<td>"+e+"</td>");          out.print("</tr>");        }

        out.print("</table>");          rs.close();        //String sql="insert into SystemUserTable values("+"'"+AllRown+"','操作員','1234','02',0)";        //rs=stmt.executeUpdate(sql);        //rs.close;%>  </body></html>

 牧羊人2005年5月16日 於深圳



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.