jsp+jdbc實(shí)現(xiàn)連接數(shù)據(jù)庫的方法
本文實(shí)例講述了jsp+jdbc實(shí)現(xiàn)連接數(shù)據(jù)庫的方法。分享給大家供大家參考。具體如下:
初次嘗試JSP+jdbc,按照書上的例子折騰了半天,就是連不上數(shù)據(jù)庫。于是在網(wǎng)上找材料,終于發(fā)現(xiàn),老的jar包與新版數(shù)據(jù)庫直接不兼容。于是下了新的數(shù)據(jù)庫jdbc包,試了一下,果然搞定。這里,把這個(gè)程序跟大家共享下,程序?qū)崿F(xiàn)了網(wǎng)頁登錄界面上提取用戶名與密碼,然后與數(shù)據(jù)庫中用戶名密碼對(duì)應(yīng),從而決定程序是否通過登錄。
inc.jsp文件:
<%@ page import="java.sql.Connection"%> <%@ page import="java.sql.DriverManager"%> <%@ page import="java.sql.Statement"%> <%@ page import="java.sql.ResultSet"%> <%@ page import="java.sql.ResultSetMetaData"%> <% String drv = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/demo"; String usr = "nari"; String pwd = "nari"; %>
welcome.jsp文件:
<html> <body> welcome<br> </body> </html>
login_action.jsp文件:
<%@ include file="inc.jsp" %> <% String username = request.getParameter("username"); String password = request.getParameter("password"); if(username == null || password == null){ response.sendRedirect("index.jsp"); } boolean isValid = false; String sql = "select * from user where username='"+username+"'and password='"+password+"'"; out.println("===>"+sql); try{ Class.forName(drv).newInstance(); Connection conn = DriverManager.getConnection(url, usr,pwd); Statement stm = conn.createStatement(); ResultSet rs = stm.executeQuery(sql); if(rs.next())isValid = true; rs.close(); stm.close(); conn.close(); }catch(Exception e){ e.printStackTrace(); out.println(e); } if(isValid){ response.sendRedirect("welcome.jsp"); }else response.sendRedirect("index.jsp"); %> <% /* if(username.endsWith("a"))response.sendRedirect("welcome.jsp"); else response.sendRedirect("index.jsp"); */%>
index.jsp文件:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <html> <head> <base href="<%=basePath %>"/> <title>My JSP 'login.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="description" content="This is my page"> </head> <body> miThis is my JSP page.<br> </body> </html> <form name="form1" action="login_action.jsp" method="post"> <table width="200" border="1"> <tr> <td colspan="2">登錄窗口</td> </tr> <tr> <td>用戶名</td> <td><input type="text" name="username" size="10"/></td> </tr> <tr> <td>密碼</td> <td><input type ="password" name="password" size="10"/></td> </tr> <tr> <td colspan="2"><input type="submit" name="submit" value="登錄"> <a href="register.jsp">注冊(cè)新用戶</a></td> </tr> </table> </form>
程序使用tomcat進(jìn)行發(fā)布,myeclipse進(jìn)行編輯和調(diào)試
希望本文所述對(duì)大家的jsp程序設(shè)計(jì)有所幫助。
- JSP使用JDBC連接MYSQL數(shù)據(jù)庫的方法
- JSP實(shí)現(xiàn)從數(shù)據(jù)庫導(dǎo)出數(shù)據(jù)到Excel下載的方法
- jsp從數(shù)據(jù)庫獲取數(shù)據(jù)填充下拉框?qū)崿F(xiàn)二級(jí)聯(lián)動(dòng)菜單的方法
- JSP上傳excel及excel插入至數(shù)據(jù)庫的方法
- jsp+mysql數(shù)據(jù)庫操作常用方法實(shí)例總結(jié)
- JSP中使用JDBC訪問SQL Server 2008數(shù)據(jù)庫示例
- Java實(shí)現(xiàn)JSP在Servelt中連接Oracle數(shù)據(jù)庫的方法
- jsp讀取數(shù)據(jù)庫實(shí)現(xiàn)分頁技術(shù)簡析
- jsp 從web.xml讀取連接數(shù)據(jù)庫的參數(shù)
- jsp頁面顯示數(shù)據(jù)庫的數(shù)據(jù)信息表
相關(guān)文章
EJB 3.0 開發(fā)指南之定時(shí)服務(wù)
EJB 3.0 開發(fā)指南之定時(shí)服務(wù)...2006-10-10Hibernate 修改數(shù)據(jù)的實(shí)例詳解
這篇文章主要介紹了Hibernate 修改數(shù)據(jù)的實(shí)例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解這部分內(nèi)容,需要的朋友可以參考下2017-10-10CORBA對(duì)象生命周期之實(shí)現(xiàn)和內(nèi)存管理
CORBA對(duì)象生命周期之實(shí)現(xiàn)和內(nèi)存管理...2006-10-10JSP 開發(fā)之THE SERVLET NAME ALREADY EXISTS.解決方法
這篇文章主要介紹了JSP 開發(fā)之THE SERVLET NAME ALREADY EXISTS.解決方法的相關(guān)資料,希望通過本文大家能解決這樣的問題,需要的朋友可以參考下2017-09-09jsp 開發(fā)之struts2中s:select標(biāo)簽的使用
這篇文章主要介紹了jsp 開發(fā)之struts2中s:select標(biāo)簽的使用的相關(guān)資料,需要的朋友可以參考下2017-08-08Eclipse XSD 生成枚舉類型的Schema的實(shí)例詳解
這篇文章主要介紹了Eclipse XSD 生成枚舉類型的Schema的實(shí)例詳解的相關(guān)資料,希望通過本能幫助到大家,需要的朋友可以參考下2017-09-09