標籤:method http 應該 eth result false encoding 介紹 document
這裡介紹一下怎樣串連資料庫,並用jsp製作一個簡單的登入介面
1.首先需要搭建好環境,有Tomcat,eslipse,jdk等,並配置好環境變數,並安裝好資料庫,這裡我使用的資料庫是mysql資料庫,並下載了一個MySQL的圖形介面的軟體,當上面的準備工作完成後就可以開始做了。
2.(1)首先應該串連好資料庫
這是資料庫的圖形顯示介面,
(2)開啟後首先建立一個mysql新串連。
(3)然後在這個介面設定好這個連接點的名字,還有密碼,密碼需要記住,在以後開啟mysql後串連資料庫的的時候需要輸入,其他的內容不需要修改,完成後點擊確定即可。
(4)在這個連接點的wzw1下建立一個表
(5)建立表以後需要在表格中填入資訊,因為我們用到的是使用者的使用者名稱和密碼,所以建立user和password
(6)點擊添加欄位
(7)添加欄位以後然後繼續填入資訊
(8)然後點擊儲存,在彈出的介面中輸入表的名字
(9)我建立的表名是wzw2,開啟然後看到這個介面,說明,建表成功
這樣,你就完成了mysql的對於建立登陸介面的初級設定。
3,接下來,開啟eslipse,建立一個這樣的工程
會出現如下介面
第一次開啟需要配置好tomcat
然後輸入工程名,點擊finish即可
4.建立好工程後,從你的mysql-connector-java下找到所示的檔案,將他複製下來
開啟建立的工程,在檔案名稱為WebContent下的WEB—INF下的lib檔案下,粘貼複製的內容,這樣就可以把mysql和這個工程相串連,如所示
這樣就串連成功了
5.然後可以建立一個jsp檔案
輸入自己想命名的檔案名稱,點擊finish
開啟jsp檔案會出現如下介面,需要將charset=ISO-8859-1改為charset=utf-8
寫jsp檔案需要瞭解一些html的編寫文法,下面是My Code
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><script> function $(id) { return document.getElementById(id); //這個是返回一個id格式命名的對象,比如說下面的使用者名稱標籤裡面的id是“user”,那麼返回的就是user這個對象, //返回的對象可以留給下面的check()方法使用 } function check(){//check()方法是用來判斷是否跳轉到下一個jsp介面。 var user=$("user").value; var psd=$("psd").value;//用user和psd擷取對象的資訊 $("userinfo").innerHTML=""; $("psdinfo").innerHTML="";//用userinfo和psdinfo來書寫提示內容,例如沒有輸入使用者名稱這個提示資訊,沒有輸入密碼等, if(user=="")//如果使用者名稱為空白,將userinfo的內容賦為如下內容,即可以顯示提示資訊 { $("userinfo").innerHTML="使用者名稱不可為空"; $("user").focus(); return false;//這時候不能跳轉頁面,所以返回為false } if(psd=="") { $("psdinfo").innerHTML="密碼不可為空";//同上 $("psd").focus(); return false; } return true; } //script之中寫的是Java的內容,下面的是</script><title>登入</title></head><body background=file:///E:/工作目錄/myJavaweb/1.jpg> <center> <form action ="loginResultre.jsp" method="post" onsubmit="return check()">//這個標籤是用來引用下一個jsp檔案,引用方式是通過看check(),如果是true就進入下一個介面,否則就停在這個介面。 <table> <tr><td>使用者名稱</td><td><input name="userName" id="user"><span id="userinfo"></span></td></tr> <tr><td>密碼</td><td><input type="password"name="userword" id="psd"><span id="psdinfo"></span></td></tr> <tr><td><input type="submit" value="登入"></td></tr> </table> </form> </center></body></html>
<%@ page language="java" import="java.sql.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>登入結果</title></head><body> <%//這個《%是用來編譯Java內容 Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null;//定義好連結,執行,和結果 String driverName = "com.mysql.jdbc.Driver"; String userName = "root";//資料庫的名 String userPwd = "199762";//資料庫密碼 String dbName = "wzw1";//資料表的名字 String url1 = "jdbc:mysql://localhost:3306/" + dbName; String url2 = "?user=" + userName + "&password=" + userPwd; String url3 = "&useUnicode=true&characterEncoding=UTF-8";//規定好字元集 String url = url1 + url2 + url3;//將上面三條的資訊總起來 request.setCharacterEncoding("UTF-8");//規定好字元集 Class.forName(driverName);//串連資料庫 conn = DriverManager.getConnection(url);//把資訊傳過來 String sql = "select * from wzw1 where user=? and password=?";//查詢的命令 pstmt = conn.prepareStatement(sql);//執行 String user = request.getParameter("userName");//擷取上一個頁面的資訊 String password = request.getParameter("userPwd"); pstmt.setString(1, user);//對兩個內容進行處理 pstmt.setString(2, password); rs = pstmt.executeQuery();//查詢 if(rs.next()) { %><center><h1>使用者 <%=rs.getString("user")%>登陸成功!</h1></center> <%} else { %><center><h1>使用者名稱或密碼錯誤!</h1></center> <%} if(rs != null) { rs.close(); } if(pstmt != null) { pstmt.close(); } if(conn != null) { conn.close();//這裡哪裡出現問題了,就關掉那個變數 } %></body></html>
用jsp實現網站登入介面的製作,並串連資料庫