您的位置:首页 > 编程语言 > Java开发

javaBean+jsp+mysql实现登录验证

2012-09-15 11:48 585 查看
最近做些小例子来复习,拿出来跟大家分享



源码展示:

UserBean.java

packagetest.bean;

publicclassUserBean{
//属性名称与表单元素相同时,可实现自省
	
	StringuserName=null;
	StringuserPwd=null;
	booleanlogined=false;
	//无参数的构造方法
	publicUserBean(){
		//读取userNmae属性
	}
	
	publicStringgetUserName(){
		returnuserName;
	}
	publicvoidsetUserName(StringuserName){
		this.userName=userName;
	}
	publicStringgetUserPwd(){
		returnuserPwd;
	}
	publicvoidsetUserPwd(StringuserPwd){
		this.userPwd=userPwd;
	}
	publicbooleanisLogined(){
		returnlogined;
	}
	publicvoidsetLogined(booleanlogined){
		this.logined=logined;
	}

	
}

DBBean.java

packagetest.bean;

importjava.sql.*;

publicclassDBBean{

Connectioncon=null;
Statementstat=null;
PreparedStatementpstat=null;
ResultSetrs=null;

//无参数的构造函数
publicDBBean(){}

//取得数据库连接
publicConnectiongetCon(){
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Stringurl="jdbc:mysql://localhost:3306/userdb?user=root&password=root&useUnicode=true&characterEncoding=gb2312";
con=DriverManager.getConnection(url);
}catch(Exceptionex){
ex.printStackTrace();
}
returncon;
}

//执行数据库查询并返回查询结果
publicResultSetquery(Stringsql){
try{
con=getCon();
stat=con.createStatement();
rs=stat.executeQuery(sql);
}catch(Exceptionex){
ex.printStackTrace();
}
returnrs;
}

//执行数据库更新
publicvoidupdate(Stringsql){
try{
con=getCon();
stat=con.createStatement();
stat.executeUpdate(sql);
}catch(Exceptionex){
ex.printStackTrace();
}
}

//执行数据库更新
publicvoidupdate(Stringsql,String[]args){
try{
con=getCon();
pstat=con.prepareStatement(sql);
for(inti=0;i<args.length;i++){
pstat.setString(i+1,args[i]);
}
pstat.executeUpdate();
}catch(Exceptionex){
ex.printStackTrace();
}
}

//关闭数据库连接
publicvoidclose(){
try{
if(rs!=null)rs.close();
if(stat!=null)stat.close();
if(pstat!=null)pstat.close();
if(con!=null)con.close();
}catch(Exceptionex){
ex.printStackTrace();
}
}

}



login.jsp



<%@pagelanguage="java"import="java.util.*"pageEncoding="utf-8"%>

<html>
<head>

<title>用户登录</title>
<scripttype="text/javascript">
//进行表单验证
functioncheck(){
if(document.all.userName.value==""){
alert("对不起,用户名不能为空值!");
}
if(document.all.userPwd==""){
alert("对不起,密码不能为空值!")
returnfalse;
}
returntrue;
}
</script>
</head>

<body>
<formaction="chkuser.jsp"name="form1"method="pos"onSumbit="returncheek()">
登录账号:
<inputtype="text"id="userName"name="userName"/><br/>
登录密码:
<inputtype="text"id="userPwd"name="userPwd"/><br/>
<inputtype="submit"name="submit"value="提交"/>
<inputtype="reset"name="reset"value="重设"/>
</form>
</body>
</html>



chkuser.jsp

<%@pagelanguage="java"import="java.util.*"pageEncoding="gb2312"%>
<%@pageimport="java.sql.*"%>
<%@pageimport="test.bean.DBBean"%>
<%@pageimport="test.bean.UserBean"%>

<jsp:useBeanid="myDBbean"class="test.bean.DBBean"></jsp:useBean>

<jsp:useBeanid="user"class="test.bean.UserBean"scope="session"></jsp:useBean>
<jsp:setPropertyname="user"property="*"/>

<html>
<head>
<title>用户登录验证</title>
</head>

<body>
<h2>用户登录验证</h2>
<hr>
<%
//user对象中的userName和userPWD是通过自省完成赋值的
StringuserName=user.getUserName();
StringuserPwd=user.getUserPwd();
Stringsql="select*fromuserwhereuserName='"+userName+"'anduserPwd='"+userPwd+"'";
if(user.isLogined()){
out.println("您已经登录过了!");
}else{
ResultSetrs=myDBbean.query(sql);
if(rs.next()){
user.setLogined(true);
out.println("恭喜您登录成功!");
}else{
user.setLogined(false);
out.println("对不起,您的帐号或密码不正确!");
}
}
%>
</body>
</html>



数据库:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: