一、访问数据库类文件写法
//根据传过来的用户名查询数据库中是否存在此用户
public String tblUserExist(String uName){
String username = "";
String sql="select uName from tbl_user where uName=?";
try {
pst = con.prepareStatement(sql);
pst.setString(1,uName);
ResultSet rst = pst.executeQuery();
if(rst.next()){
username=rst.getString(uName);
}
} catch (SQLException e)
{
e.printStackTrace();
}finally
{
this.closepst();//关闭pst对象
this.closecon();//关闭数据库对象
}
return username;
}
二、逻辑处理页面
<%@ page language="java" pageEncoding="GBK" import="java.util.*,entity.*,luntandao.*"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
request.setCharacterEncoding("GBK");
String uName=request.getParameter("uname");
String uPass=request.getParameter("upwd");
int gender = Integer.parseInt(request.getParameter("sex"));
String head=request.getParameter("head");
boolean isinsert=false;
//判断当前注册用户的用户名是否存在
TblUserDao user=new TblUserDao();
String username = user.tblUserExist(uName);
if(!uName.equals(username)){
response.sendRedirect("registerfail.jsp");
return;
}
TblUserDao newuser=new TblUserDao();
//为什么这里要重新new一个空间,是因为在之前调用判断数据库中是否存在用户名的方法后
//数据库连接对象释放了资源,在这里必须重新分配资源
TblUserBeen userinfo = new TblUserBeen();
userinfo.setUName(uName);
userinfo.setUPass(uPass);
userinfo.setHead(head);
userinfo.setGender(gender);
userinfo.setRegTime(new Date());
isinsert=newuser.insertTblUser(userinfo);
if(isinsert==true){
response.sendRedirect("registersuccess.jsp");
}else{
response.sendRedirect("registerfail.jsp");
}
%>