思路:
1. regist.jsp : 输入用户名和密码
2. zhong.jsp : 查询user表,看用户名是否重复--->未重复,插入记录到user表
3. show.jsp : 注册成功,请前往登录
这是所用到的文件
regist.jsp
<form action="zhuce/zhong.jsp" method="post">
<table align="center">
<tr><th>用 户 名<font color="red" size=5px>*</font></th><td><input type="text" name="uname"></td></tr>
<tr><th>密 码<font color="red" size=5px>*</font></th><td><input type="password" name="password" id="password"></td></tr>
<tr><th>确认密码<font color="red" size=5px>*</font></th><td><input type="password" name="qrmm" id="qrmm" onblur="check()"></td></tr>
<tr><td align="center" rowspan="2" height=40px><input type="submit" value="注 册"></td><td><span id="warning"></span></td></tr>
<tr><td><font size=1px><a href="login.jsp">已有账号?点这里直接登陆</a></font></td></tr>
</table></form>
zhong.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
import="zcc.*"
import="dao.User"
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String uname = request.getParameter("uname");
String pass = request.getParameter("password");
String qrmm = request.getParameter("qrmm");
if(pass.equals(qrmm)) {
S_user_uname su = new S_user_uname();
int cm;
try {
cm = su.s_uname(uname);
if(cm==1) {
//返回输入页,说明:该用户名已被使用???
%> <jsp:forward page="regist.jsp"></jsp:forward>
<% }
if(cm==0) {
User user = new User(uname,pass,null);
// HttpSession session = request.getSession();
session.setAttribute("user",user);
%>
<jsp:forward page="show.jsp"></jsp:forward>
<%
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
else
{
//返回上一页,提示两次密码不一致????
%> <jsp:forward page="regist.jsp"></jsp:forward>
<%
}
%>
</body>
</html>
这一部分有待完善
show.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
import="dao.*"
import="zcc.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
User user = (User)session.getAttribute("user");
I_user ii = new I_user();
int ni = ii.I_u(user);
if(ni==1){%>
注册成功,请前去登录!
<% }
else{%>
注册失败,出现异常错误!
<%}
%>
</body>
</html>
所调用的类
s_user_uname.java
package zcc;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javabean.DB;
public class S_user_uname {
private DB db = new DB();
private Connection conn = null;
@SuppressWarnings("unused")
private PreparedStatement pstmt = null;
public int s_uname(String uname) throws Exception {
conn = db.getConn();
String sql="select uname,password,info from user where uname='"+uname+"'";
PreparedStatement pstmt = conn.prepareStatement(sql);
/*
pstmt.setString(1, uname);
pstmt.setString(2, pass);
*/
ResultSet rs = pstmt.executeQuery();
rs.last();
int row = rs.getRow();
db.free(rs, pstmt, conn);
return row;
}
}
I_user.java
package zcc;
import java.sql.*;
import dao.User;
import javabean.DB;
public class I_user {
private DB db = new DB();
private Connection conn;
private PreparedStatement pstmt;
public int I_u(User user) throws Exception {
String sql = "insert into user values(?,?,?)";
conn = db.getConn();
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getUname());
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getInfo());
int n = pstmt.executeUpdate();
return n;
}
User user;
}