• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

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

        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ⅴ | 亚洲精品国产成人影院| 风间由美在线亚洲一区| 日韩免费高清视频网站| 亚洲精品天堂成人片AV在线播放| 最近中文字幕无吗免费高清| 99久久国产亚洲综合精品| 好大好深好猛好爽视频免费| 亚洲欧美乱色情图片| 国产免费人成视频在线观看 | 亚洲丝袜美腿视频| 蜜臀AV免费一区二区三区| 亚洲a视频在线观看| 好爽…又高潮了毛片免费看| 国产天堂亚洲国产碰碰| 久久久精品国产亚洲成人满18免费网站 | 九月丁香婷婷亚洲综合色| 中文精品人人永久免费| 久久精品亚洲综合| 亚洲香蕉免费有线视频| 亚洲国产精华液2020| 中文亚洲成a人片在线观看| 亚在线观看免费视频入口| 亚洲AV男人的天堂在线观看| 亚洲国产成人爱av在线播放| 久久精品免费观看国产| 日韩亚洲国产高清免费视频| 免费又黄又爽又猛的毛片 | 野花高清在线电影观看免费视频| 男人的天堂av亚洲一区2区| 亚洲中文字幕丝袜制服一区| 最近中文字幕大全中文字幕免费| 亚洲国产精品久久久久秋霞小| 国产亚洲精品精品国产亚洲综合| 日韩免费人妻AV无码专区蜜桃 | 亚洲激情校园春色| 免费国产成人午夜私人影视| 99热免费在线观看| 亚洲A∨精品一区二区三区下载| 亚洲av日韩av无码黑人|