日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

Jsp + JavaBean循序漸進圖文詳細教程(4)上

Jsp + JavaBean循序漸進圖文詳細教程(4)上

更新時間:2022-04-28 文章作者:未知 信息來源:網絡 閱讀次數:

JavaServer Pages+JavaBeans的數據庫操作應用

  上面已經講了一個簡單的JavaBean應用的計數器例子,當然在實際程序過程中,涉及的更多的還是和數據庫相關的操作,所以在這一節我們將重點闡述JavaServer Pages和JavaBeans如何對數據庫進行操作。這里我們選取了一個比較有代表性比較實用的例子,那就是用戶注冊管理,因為這在網上使用比較的頻繁,不管是注冊Email、有獎調查、購買物品或者加入社區等等都會涉及到一個用戶注冊的問題;另外一方面,它又比較有代表性,涉及到了數據庫的記錄增加,記錄顯示等常見操作,所以我們就拿用戶注冊開刀了。

  程序采用Oracle Jdeveloper3.1開發,運行環境為Wiin2000+Tomcat3.1,數據庫系統采用了Oracle8.16i。

  首先我們建立一個數據庫demodb,其字段如下面所示

username VARCHAR2(20) 用戶名
password VARCHAR2(20) 密碼
email VARCHAR2(30) Email地址
homepage VARCHAR2(50) 主頁
signs VARCHAR2(200) 簽名
regtime DATE 注冊時間

  接著我們建立幾個JavaBeans和JavaServer Pages文件

db.java文件(封裝數據庫連接及一些底層操作)
adduser.java文件(進行用戶數據的讀取以及添加操作)
newuser.jsp文件(用戶新增頁面,用于輸入用戶注冊信息)
donewuser.jsp文件(進行用戶注冊信息添加)
listuser.jsp文件(所有的注冊用戶信息列表)

  為了方便大家看代碼,在很多地方都進行了詳細的注釋和講解,至于JavaBean中涉及到Java語法結構的東西,請大家參考Java書籍。

  db.java文件

  說明:這個JavaBean封裝數據庫連接及一些底層操作,派生出的類可以直接調用這些方法,另外提供了一個toChinese方法,主要用來進行中文數據的處理。

  // Copyright (c) 2000 http://jspbbs.yeah.net
package lyf;
/**
* A Class class.
* $#@60;P$#@62;
* @author liuyufeng
*/

  //聲明類庫文件
import oracle.jdbc.driver.*;
import java.net.*;
import java.sql.*;
import java.lang.*;
import java.io.*;
import java.util.*;
public class db br>   //成員變量初始化
Connection conn = null; //數據庫連接
ResultSet rs = null; //記錄集
String Username=""; //用戶名
String Password=""; //密碼
String Email=""; //email
String Homepage=""; //主頁
String Signs=""; //簽名
  //db的構建器
public db() {
try {
  //注冊數據庫驅動程序為Oracle驅動
Class.forName(new oracle.jdbc.driver.OracleDriver());
}
catch(java.lang.ClassNotFoundException e) {
  //這樣寫是為了方便調試程序,出錯打印mydb()就知道在什么地方出錯了
System.err.println("mydb(): " + e.getMessage());
}
}

  //executeQuery方法用于進行記錄的查詢操作

  //入口參數為sql語句,返回ResultSet對象
public ResultSet executeQuery(String sql) {
rs = null;
try {
  //建立數據庫連接,使用Oracle的一種thin連接方式,demo為主機名字,demodb為數據庫,后面的兩個demo為用戶名和密碼
conn = DriverManager.getConnection("jdbc:oracle:thin:@demo:1521:demodb","demo","demo");
Statement stmt = conn.createStatement();
  //執行數據庫查詢操作
rs = stmt.executeQuery(sql);
}
catch(SQLException ex) {
System.err.println("db.executeQuery: " + ex.getMessage());
}
return rs;
}

  //executeUpdate方法用于進行add或者update記錄的操作

  //入口參數為sql語句,成功返回true,否則為false
public boolean executeUpdate(String sql) {
boolean bupdate=false;
rs = null;
try {
  //建立數據庫連接,其它參數說明同上面的一樣
conn = DriverManager.getConnection("jdbc:oracle:thin:@demo:1521:demodb","demo","demo");
Statement stmt = conn.createStatement();
int rowCount = stmt.executeUpdate(sql);
  //如果不成功,bupdate就會返回0
if(rowCount!=0)bupdate=true;
}
catch(SQLException ex) {
  //打印出錯信息
System.err.println("db.executeUpdate: " + ex.getMessage());
}
return bupdate;
}

  //toChinese方法用于將一個字符串進行中文處理

  //否則將會是???這樣的字符串
public static String toChinese(String strvalue) {
try{
if(strvalue==null)
{
return null;
}
else
{
strvalue = new String(strvalue.getBytes("ISO8859_1"), "GBK");
return strvalue;
}
}catch(Exception e){
return null;
}
}

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 天天澡夜夜澡狠狠澡 | 国产高清国内精品福利色噜噜 | 亚洲男人天堂a | 欧美第一网站 | 国产美女精品在线观看 | 天天草夜夜爽 | 啪啪视 | 中文字幕在线观看不卡视频 | 99香蕉国产精品偷在线观看 | 日韩一级片网址 | 一区二区免费 | 亚洲欧美日韩国产精品一区 | 午夜精品在线免费观看 | 日韩欧美国产综合 | 日韩毛片欧美一级国产毛片 | 19国产精品麻豆免费观看 | 国产成人aa免费视频 | 亚洲精品一区二区三区在线看 | 婷婷玖玖 | 日韩精品一区二区三区四区 | 99国产精品久久久久久久... | 18到20岁女人毛片一区 | 99久久这里只精品国产免费 | 国产99视频免费精品是看6 | 伊人色强在线网 | 欧美αv | 亚洲欧美日韩国产精品一区二区 | 91青娱国产| 成人免费视频在线播放 | 国产 日韩 欧美 在线 | 亚洲影院在线 | 天天射天天舔 | 97久久影院 | 女人爽得直叫免费视频 | 欧美日韩精品一区二区免费看 | 亚洲国产精品成人久久 | 日本精品二区 | 刺激第一页720lu久久 | 久久久久香蕉视频 | 日日天日日夜日日摸 | 亚洲国产观看 |