婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > JSP使用JDBC完成動態驗證及采用MVC完成數據查詢的方法

JSP使用JDBC完成動態驗證及采用MVC完成數據查詢的方法

熱門標簽:北票市地圖標注 商洛電銷 四川保險智能外呼系統商家 電銷機器人是有一些什么技術 杭州語音電銷機器人軟件 電銷機器人好賣么 高德地圖標注樣式 杭州ai語音電銷機器人功能 地圖標注線上教程

本文實例講述了JSP使用JDBC完成動態驗證及采用MVC完成數據查詢的方法。分享給大家供大家參考。具體如下:

一、目標:

① 掌握JDBC鏈接數據庫的基本過程;
② 掌握使用JDBC進行數據查詢。

二、主要內容:

① 在上一次的實例基礎上,通過連接數據庫完成用戶登錄功能,介紹JDBC的基本用法;
② 通過顯示所有用戶信息進一步介紹JDBC的用法和查詢結果的處理。

1、JDBC概念

Java Database Connectivity的縮寫,用于連接Java應用程序與各種關系數據庫的標準接口。對于編程人員來說,連接任何數據庫都是相同的。

2、要使用JDBC開發應用需要哪些準備工作?

安裝數據庫,包括數據庫表的創建;
根據數據庫的類型,得到數據庫的JDBC驅動程序,不同的數據庫管理系統需要不同的JDBC驅動程序,并且不同版本的數據庫管理系統需要的驅動程序有可能不同的;這里使用Oracle數據庫,驅動程序需要放在WEB-INF/lib下面。
數據庫的相關信息:數據庫的IP地址,服務的端口號,數據庫的名字,連接數據庫的用戶名和密碼。

3、 舉例:使用數據庫對用戶登錄信息進行驗證。

需要修改User.java中驗證用戶信息的方法。

1)在類的前面增加了一個import語句:

復制代碼 代碼如下:
import java.sql.*;

2)增加的后的check方法如下:

public boolean check()
{
/*
   if(username==null || userpass==null)
     return false;
   if(username.equals("zhangsan")  userpass.equals("lisi"))
   {
     return true;
   }else{
     return false;
   }
*/
   Connection con = null;
   Statement stmt = null;
   ResultSet rs = null;
   boolean b = true;
   try{
     // 指出連接數據庫所需要的驅動程序
     Class.forName("oracle.jdbc.driver.OracleDriver");
    // 建立與數據庫之間的連接
// myserver修改為數據庫服務器IP,mydb為數據庫名
    con = DriverManager.getConnection("jdbc:oracle:thin:@myserver:1521:mydb","scott","tiger");
    // 編寫查詢數據庫信息的SQL語句
    String sql="select * from usertable where username='"+username+"' and userpass='"+userpass+"'";
    System.err.println(sql);
    // 創建語句對象,用于執行SQL語句
    stmt = con.createStatement();
    // 執行SQL語句得到結果集
    rs = stmt.executeQuery(sql);   
    // 判斷rs中是否有數據
    if(rs.next())
     b = true;
    else
     b = false;
   }catch(Exception e){
     System.out.println(e.getMessage());
   }
   finally{
    // 關閉相關對象
    if(rs!=null) try{ rs.close(); }catch(Exception ee){}
    if(stmt!=null) try{ stmt.close(); }catch(Exception ee){}
    if(con!=null) try{ con.close(); }catch(Exception ee){}
   }
   return b;
}

4、運行測試

可以使用數據庫中的用戶名和口令進行登錄。

5、向頁面傳遞查詢結果

很多時候,客戶端需要從服務器端得到數據并顯示,因為數據的查詢是由JavaBean完成的,對JavaBean的調用是通過Servlet完成的,Servlet中可以得到查詢的結果,但是顯示信息是由JSP頁面完成的,如何把Servlet中查詢的信息傳遞給JSP頁面呢?

前面介紹過可以通過request、session和application傳遞信息,因為可以讓Servlet和JSP處于相同的請求,所以3個對象都可以使用。但是因為session和application的保存時間比較長,容易造成服務器資源的浪費,所以通常采用request存儲。

下面通過查詢并顯示所有信息的功能來介紹具體用法。需要完成的工作如下:

① 在User.java中添加查詢所有用戶信息的方法;
② 編寫查詢所有用戶信息的控制器;
③ 編寫顯示信息的JSP頁面。

6、 在User.java中添加方法

查詢所有用戶信息的方法如下:

public ArrayList getAllUser()
{
   Connection con = null;
   Statement stmt = null;
   ResultSet rs = null;
   ArrayList users = new ArrayList();
   try{
    // 指出連接數據庫所需要的驅動程序
    Class.forName("oracle.jdbc.driver.OracleDriver");
    // 建立與數據庫之間的連接
    con = DriverManager.getConnection("jdbc:oracle:thin:@myserver:1521:mydb","scott","tiger");
    // 編寫查詢數據庫信息的SQL語句
    String sql="select * from usertable";
    // 創建語句對象,用于執行SQL語句
    stmt = con.createStatement();
    // 執行SQL語句得到結果集
    rs = stmt.executeQuery(sql);   
    // 遍歷結果集
    while(rs.next())
    {
      String username = rs.getString(1);
      String userpass = rs.getString(2);
      // java.util.Date birthday = rs.getDate(3);
      // int age = rs.getInt(4);
      User user = new User();
      user.setUsername(username);
      user.setUserpass(userpass);
      users.add(user);
    }
   }catch(Exception e){
     System.out.println(e.getMessage());
   }
   finally{
    // 關閉相關對象
    if(rs!=null) try{ rs.close(); }catch(Exception ee){}
    if(stmt!=null) try{ stmt.close(); }catch(Exception ee){}
    if(con!=null) try{ con.close(); }catch(Exception ee){}
   }   
   return users;
}

需要在類的前面引入java.util包,代碼如下:

復制代碼 代碼如下:
import java.util.*;

7、 編寫控制器

代碼如下:

package servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javabean.*;
import java.util.*;
public class GetAllUser extends HttpServlet
{
  public void doGet(HttpServletRequest request,HttpServletResponse response)
  throws IOException,ServletException
  {
   // 第一步:獲取用戶的輸入信息,這里不需要
   // 第二步:調用JavaBean
   User user = new User();
   ArrayList users=null;
   users = user.getAllUser();
   // 第三步:傳值
   request.setAttribute("users",users);
   // 第四步:選擇一個界面對用戶進行響應
   String forward="userlist.jsp";
   RequestDispatcher rd = request.getRequestDispatcher(forward);
   rd.forward(request,response);
  }
  public void doPost(HttpServletRequest request,HttpServletResponse response)
  throws IOException,ServletException
  {
   doGet(request,response);
  }
}

這里假設使用userlist.jsp對用戶進行響應。

8、 配置控制器

在Web.xml中添加如下代碼:

  servlet>
   servlet-name>getAllUser/servlet-name>
   servlet-class>servlet.GetAllUser/servlet-class>
  /servlet>
  servlet-mapping>
   servlet-name>getAllUser/servlet-name>
   url-pattern>/getAllUser/url-pattern>
  /servlet-mapping>

9、 編寫userlist.jsp響應

%@ page contentType="text/html;charset=gb2312"%>
%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
c:forEach var="user" items="${users}">
  用戶名:${user.username} 口令:${user.userpass} br>
/c:forEach>

這里的c:forEach標簽用于循環處理,items指出循環遍歷的集合,var聲明循環變量,表示集合中的一個元素。循環體中通過表達式語言顯示用戶信息。

10、運行測試

http://127.0.0.1:8080/ch7/getAllUser

希望本文所述對大家的JSP程序設計有所幫助。

您可能感興趣的文章:
  • Java中JDBC實現動態查詢的實例詳解

標簽:云浮 丹東 青島 宿州 江西 西藏 紅河 貴州

巨人網絡通訊聲明:本文標題《JSP使用JDBC完成動態驗證及采用MVC完成數據查詢的方法》,本文關鍵詞  JSP,使用,JDBC,完成,動態,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《JSP使用JDBC完成動態驗證及采用MVC完成數據查詢的方法》相關的同類信息!
  • 本頁收集關于JSP使用JDBC完成動態驗證及采用MVC完成數據查詢的方法的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲精品写真福利| 欧美亚男人的天堂| 亚洲图片激情小说| 精品剧情在线观看| 视频一区二区三区中文字幕| 欧美人妇做爰xxxⅹ性高电影| 亚洲人成伊人成综合网小说| 精品国偷自产国产一区| 日韩午夜小视频| 国产久卡久卡久卡久卡视频精品| 一区二区三区高清| 亚洲国产综合色| 成人av中文字幕| 欧美男女性生活在线直播观看| 欧美一区二区视频免费观看| 久久国产婷婷国产香蕉| 六月丁香综合在线视频| 日韩精品专区在线影院重磅| 国产日产欧产精品推荐色| 中文字幕色av一区二区三区| 美女视频免费一区| 日韩一区二区三区免费看| 亚洲日本在线a| 亚洲三级视频在线观看| 欧美午夜在线观看| 蜜桃视频一区二区| 久久99精品国产| 韩国成人在线视频| 欧美一区二区不卡视频| 日韩国产精品久久久| 七七婷婷婷婷精品国产| 韩国一区二区视频| 色综合久久久久久久久| 欧美日韩亚洲丝袜制服| 九色综合狠狠综合久久| 亚洲欧美日韩小说| 欧美精品一区二区三区视频| 天堂在线亚洲视频| 成人一区二区三区| 亚洲福利一区二区| heyzo一本久久综合| 日韩视频在线观看一区二区| 久久亚洲欧美国产精品乐播 | 国产激情偷乱视频一区二区三区 | 美美哒免费高清在线观看视频一区二区| 美女精品自拍一二三四| 成人av免费网站| 秋霞av亚洲一区二区三| 午夜天堂影视香蕉久久| 欧美视频在线观看一区二区| 蜜桃av噜噜一区| 亚洲成人7777| 国产精品福利一区二区| 亚洲色图视频网站| 国产精品久久久久久久久免费丝袜 | 成人ar影院免费观看视频| 免费人成在线不卡| 国产白丝网站精品污在线入口| 久久久国产精品不卡| 欧美电影影音先锋| 毛片不卡一区二区| 欧美日韩激情一区二区三区| 日韩一级片网址| 欧美激情一区在线观看| 色av成人天堂桃色av| 欧美高清视频在线高清观看mv色露露十八| 国产精品网站在线| 日韩电影在线免费| 亚洲一区二区三区国产| 国产日本亚洲高清| 国产91富婆露脸刺激对白| 水野朝阳av一区二区三区| 亚洲小说春色综合另类电影| 成人精品一区二区三区中文字幕| 六月婷婷色综合| 久久99精品久久久久久国产越南| 亚洲成人动漫在线免费观看| 亚洲午夜成aⅴ人片| 天天影视网天天综合色在线播放| 欧洲一区在线观看| 欧美国产亚洲另类动漫| av午夜一区麻豆| 日韩一级黄色片| 亚洲精品精品亚洲| 亚洲伦在线观看| 日本人妖一区二区| 国产自产高清不卡| 久久免费美女视频| 99久久久无码国产精品| 色网站国产精品| 日韩欧美国产一区在线观看| 精品盗摄一区二区三区| 国产激情偷乱视频一区二区三区| 色综合一区二区三区| 在线观看日韩精品| 久久精品亚洲乱码伦伦中文 | 国产精品久久久一区麻豆最新章节| 久久蜜桃av一区精品变态类天堂 | 亚洲亚洲人成综合网络| 91在线视频18| 欧美国产一区在线| 日本不卡一二三区黄网| 亚洲人精品一区| 麻豆91在线观看| 国产成a人无v码亚洲福利| 欧美一区二区三区在线观看| 国产欧美一区在线| 中文字幕在线视频一区| 男女视频一区二区| 国产日韩精品一区二区三区| 亚洲国产精品久久久久秋霞影院| 亚洲情趣在线观看| 日韩激情一二三区| 精品1区2区3区| 日本一区二区三区电影| 波波电影院一区二区三区| 自拍视频在线观看一区二区| 欧美日韩一区三区| 日本一不卡视频| 91成人免费在线| 成人影视亚洲图片在线| 亚洲成人免费在线| 懂色av一区二区三区免费观看| 国产成a人无v码亚洲福利| 欧美中文一区二区三区| 国产亚洲欧洲997久久综合 | 国产精品一区二区男女羞羞无遮挡| 日本在线不卡一区| 久久精品国产久精国产爱| 91麻豆精品视频| 欧美精品v国产精品v日韩精品 | 亚洲欧美偷拍三级| 日韩伦理av电影| 亚洲bt欧美bt精品| www.亚洲色图| 洋洋av久久久久久久一区| 欧美色视频在线| 久久久国际精品| www.亚洲人| 人人狠狠综合久久亚洲| 1024精品合集| 国产一区二区三区久久悠悠色av| 欧美丝袜自拍制服另类| 国产一区二区三区蝌蚪| 成人欧美一区二区三区白人| 日韩免费视频一区| 亚洲第一成人在线| 国产精品福利av| 中文字幕av在线一区二区三区| 亚洲成年人网站在线观看| 91免费版在线看| 国产福利一区在线| 免费成人av资源网| 欧美日韩视频在线观看一区二区三区| 亚洲激情av在线| 91成人在线观看喷潮| 国产亚洲午夜高清国产拍精品| 欧美性色黄大片| 久久蜜臀精品av| 亚洲精品国产精华液| 亚洲欧美一区二区久久| 成人av资源在线观看| 日韩欧美国产综合| 色偷偷久久一区二区三区| 国产精品久久免费看| 国产午夜精品久久久久久免费视 | 中国av一区二区三区| 国产精品美女视频| 亚洲欧洲综合另类在线| 国产精品久久久久久户外露出| 欧美精品一区二区久久久| 日韩精品一级二级| 欧美一级夜夜爽| 精品国产成人系列| 亚洲丝袜制服诱惑| 日韩一区二区三区在线观看| 国产精品麻豆一区二区| 欧美日韩国产精选| 国产亚洲综合色| 成人污污视频在线观看| 久久久91精品国产一区二区精品| 精品国产制服丝袜高跟| 色欧美88888久久久久久影院| 日韩精品一级中文字幕精品视频免费观看| 精品伦理精品一区| 一区二区成人在线视频| 婷婷开心激情综合| 亚洲欧美日本在线| 国产精品一区二区不卡| 91麻豆精品久久久久蜜臀| 国产精品国产三级国产| 久久er精品视频| 欧美va亚洲va香蕉在线| 日韩一级欧美一级| 蜜乳av一区二区三区| 北条麻妃国产九九精品视频| 在线播放欧美女士性生活| 亚洲综合免费观看高清完整版| 亚洲人123区| av毛片久久久久**hd|