當前位置:首頁 » 數據倉庫 » jsp登錄驗證資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

jsp登錄驗證資料庫

發布時間: 2023-01-17 17:27:11

① 用jsp連接資料庫實現登錄注冊

建議使用html+servlet或者jsp+servlet 通過ajax將數據提交到後台servlet校驗 可實現無刷新提交。

② jsp做登錄,注冊頁面 資料庫

jsp登錄注冊頁面都需要查詢和插入資料庫的,還要檢查注冊信息存不存在。
完整例子如下:

用戶信息的bean:

package chen;

public class UserBean
{
private String userid;
private String password;

public void setUserId(String userid)
{
this.userid=userid;
}
public void setPassword(String password)

{
this.password=password;
}
public String getUserId()
{
return this.userid;
}
public String getPassword()
{
return this.password;
}

}

提交資料庫的bean:
package chen;
import com.mysql.jdbc.Driver;
import java.sql.*;
public class UserRegister
{
private UserBean userBean;
private Connection con;
//獲得資料庫連接。
public UserRegister()
{

String url="jdbc:mysql://localhost/"+"chao"+"?user="+"root"+"&password="+"850629";

try
{

Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(url);
}
catch(Exception e)
{
e.printStackTrace();
}

}
//設置待注冊的用戶信息。
public void setUserBean(UserBean userBean)
{
this.userBean=userBean;
}
//進行注冊
public void regist() throws Exception
{
String reg="insert into userinfo(userid,password) values(?,?)";

try
{
PreparedStatement pstmt=con.prepareStatement(reg);
pstmt.setString(1,userBean.getUserId());
pstmt.setString(2,userBean.getPassword());
pstmt.executeUpdate();
}
catch(Exception e)
{
e.printStackTrace();
throw e;
}

}
}
提交注冊數據進入資料庫:

<%@ page contentType="text/html;charset=gb2312" pageEncoding="gb2312"
import="chen.*" %>
<jsp:useBean id="userBean" class="chen.UserBean" scope="request">
<jsp:setProperty name="userBean" property="*"/>
</jsp:useBean>
<jsp:useBean id="regist" class="chen.UserRegister" scope="request"/>
<html>
<head>
<title> 用戶信息注冊頁面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>

<%
String userid =request.getParameter("userid");
String password = request.getParameter("password");
userBean.setUserId(userid);

userBean.setPassword(password);
System.out.println(userid+password);
%>
<% try{
regist.setUserBean(userBean);
out.println(userid);
regist.regist();
out.println("注冊成功");}
catch(Exception e){
out.println(e.getMessage());
}
%>
<br>
<a href="login.jsp">返回</a>
</body>
</html>

登陸驗證頁面:

<%@page import="java.sql.*" contentType="text/html;charset=GB2312" %>
<%@page import="java.util.*"%>
<%
String userid1=new String(request.getParameter("userid"));
String password1=new String(request.getParameter("password"));

Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/chao","root","850629");
Statement stmt=con.createStatement();
String sql="select * from userinfo where userid='"+userid1+"';";
ResultSet rs=stmt.executeQuery(sql);
if(rs.next())
{String password=new String(rs.getString("password"));
if(password.equals(password1))
{session.setAttribute("userid1",userid1);
response.sendRedirect("sucess.jsp");
}
else
{response.sendRedirect("login.jsp");
}
}
else
{response.sendRedirect("login.jsp");
}
%>
登陸頁面:

<%@ page contentType="text/html; charset=gb2312" %>
<html>
<body>
<form method="get" action="checklogin.jsp">
<table>
<tr><td> 輸入用戶名:</td>
<td><input type=text name=userid ></td>
</tr>
<tr><td>輸入密碼:</td>
<td><input type=password name=password></td>
</tr>
<tr><td><input type=submit value=確認>
</td></tr>
</table>
</form>
<form action="register.jsp">
<input type=submit value=注冊>
</form>
</body>
</html>

注冊頁面:

<%@page contentType="text/html; charset=gb2312" language="java" import="java.util.*,java.io.*"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<center>
<h1>注冊新用戶</h1>
<form action="adser.jsp" method=post>
<table border="1" bgcolor="#0099CC">
<tr>
<td> 用戶名:
<input type="text" name="userid">
</td>
</tr>
<tr valign="middle">
<td> 密碼:
<input type="password" name="password" readonly>
</td>
</tr>
<tr>
<td>
<input type=submit value=提交>
</td>
</tr>
</table>
</form>
</center>
</body>
</html>

登陸成功頁面:

<%@page import="java.util.*" contentType="text/html; charset=gb2312" %>
<%@include file="trans.jsp"%>
<html>
<head>
<title>
sucess
</title>
</head>
<body bgcolor="#ffffff">
<h1>
登錄成功,歡迎您!

</h1><%=trans(session.getAttribute("userid1"))%>
</body>
</html>

③ java web開發的jsp登錄用戶密碼怎麼驗證並保存登錄信息

從request中獲取username和pword這兩個參數的值,然後和資料庫裡面查出來的數據進行比較,如果一致,則登陸成功,這時候可以把用戶的賬號和密碼加密一下放到cookie裡面,並設置有效期。
下次在訪問時候,先從cookie取,如有cookie裡面已經有並可以匹配,則不用登陸。

④ JSP如何實現,根據資料庫內容驗證登錄信息是否存在。

說點簡單思路 。
登錄的判斷:

實行,登陸時,必須要把用戶名,和用戶密碼,假定是 name 和pwd
登錄時,使用post 或get 傳值至登錄頁面處理

登錄頁面:接收傳過來的name 和pwd

可以做簡單判斷,如果傳過來的name 和pwd不為空的時候,

連接資料庫:

最主要的就是資料庫的查詢語句了。
類似於
select * from tablename where name='$name' and pwd='$pwd';

查詢的結果集裡面,如果不存在數據,

則該用戶不存在,

如果存在有記錄的結果集,則表示該 用戶存在。

然後做相關設置,設置session cookie 之類,

再做登錄轉向動作,一般是轉向登錄成功頁。

⑤ java編程:怎麼在jsp頁面輸入數據的時候驗證資料庫里是否有同名的值吖

用戶名<input type = "text" id="username" onBlur="post()">

jquery+ajax:
function post() {
alert($("#username").val());
$.ajax({
type:"POST",
url:"user.action",//後台注冊方法,包含校驗或者直接校驗,按照自己的來
data: "user.name=" +$("#username").val(),
dataType: "html" ,
success:callback //回調函數
}) ;
}
function callback(data) {
var a = parseInt(data);
if(a == 0) {
alert("注冊成功");
}
else if(a==1) {
alert("該用戶名已經存在");
}

大概可以寫成這樣。。。哦了不