jsp(javaserver pages)是由sun 公司倡導、許多公司參與建立的一種動態網頁技術標準。使用jsp技術,web頁面開發人員可以使用html或者xml標識來設計和格式化最終頁面。使用jsp標識(tag)或者小腳本(scriptlet)來生成頁面上的動態內容。生成內容的邏輯被封裝在標識和javabeans組件中,并且捆綁在小腳本中,所有的腳本在服務器端運行。
數據庫連接對動態網站來說是最為重要的部分,java中連接數據庫的技術是jdbc(java database connectivity)。很多數據庫系統帶有jdbc驅動程序,java程序就通過jdbc驅動程序與數據庫相連,執行查詢、提取數據等操作。sun公司還開發了jdbc-odbc bridge,用此技術java程序就可以訪問帶有odbc驅動程序的數據庫,目前大多數數據庫系統都帶有odbc驅動程序,所以java程序能訪問諸如oracle、sybase、ms sql server和ms access等數據庫。本文將通過一個實例介紹在jsp中利用javabeans通過jdbc-odbc bridge訪問access客戶信息數據庫。
1.首先建立一個access數據庫customers.mdb,其中表customers有字段id(自動增量型,并設為主關鍵字)、name(文本型,長度10)、address(文本型,長度30)、info(備注型)。
2.在control panel(控制面板)的odbc datasource模塊中加入system dsn,取名customers,并指向customers.mdb。
3.創建一個javabeans,命名為dbconn.java,并保存在支持jsp的web服務器的缺省文檔根目錄下。dbconn.java主要是封裝與數據庫的連接操作,內容如下:
import java.sql.*;
public class dbconn {
string dbdriver = "sun.jdbc.odbc.jdbcodbcdriver";
string connstr = "jdbc:odbc:customers";
connection conn = null;
resultset rs = null;
public dbconn {
try {
class.forname(dbdriver);
//加載數據庫驅動程序
}
catch(java.lang.classnotfoundexception e) {
system.err.println("dbconn (): " + e.getmessage());
}
}
public resultset executequery(string sql) {
rs = null;
try {
conn = drivermanager.getconnection(connstr);
//與dbms建立連接
statement stmt = conn.createstatement();
rs = stmt.executequery(sql);
}
catch(sqlexception ex) {
system.err.println("aq.executequery: " + ex.getmessage());
}
return rs;
}
}
4.dbconn.java編輯好后,在dos狀態下,進而用jdk的javac命令編譯dbconn.java形成相應的class文件。
5.建立customers.jsp文件,在jsp中調用以上編譯好的javabeans,其內容如下:
〈html〉
〈head〉
〈meta http-equiv="content-type" content="text/html; charset=gb2312"〉
〈title〉客戶信息調查〈/title〉
〈/head〉
〈body〉
〈p〉〈b〉客戶信息調查〈/b〉〈/p〉
〈%@ page language="java" import="java.sql.*" %〉
〈jsp:usebean id="dbconn1" scope="page" class="dbconn" /〉
〈%
resultset rs = dbconn1.executequery("select * from customers");
while (rs.next()) {
out.print("〈li〉" + rs.getstring("name") + "〈/li〉");
out.print("〈li〉" + rs.getstring("address") + "〈/li〉");
out.print("〈li〉" + rs.getstring("info") + "〈/li〉");
}
rs.close();
%〉
〈/body〉
〈/html〉
在〈 jsp:usebean〉標記內定義了幾個屬性,其中id是整個jsp頁面內該bean的標識、scope屬性定義了該bean的生存時間、class屬性說明了該bean的類文件。
事實證明,jsp是一種開發web應用的理想構架,利用跨平臺運行的javabeans組件,jsp為分離處理邏輯及顯示樣式提供了卓越的解決方案。
最大的網站源碼資源下載站,
新聞熱點
疑難解答