注册功能实现后台数据库添加用户信息

 代码:


一.前端界面的优化

zhuce.jsp

<%@ 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">
<title>注册页面</title>
<link href="CSS/zhuce.css" rel="stylesheet" type="text/css">
</head>
<body background="img/body.jpg">
  <div id="container">
    <div id="top">
      <span id="tit_name">会员注册</span>
     </div>
     
     <div id="left">
       <img src="img/fruit.jpg" width="100%" height="100%"  alt="水果盛宴"/>
     </div>
     
     <div id="loginbox">
      <form method="post" action="Register">
        <p style="font-size:16px; font-weight:bold">会员名称:</p>
        <input type="text" style="width:350px; height:50px; border:1px solid #CCC" id="username" name="username" /><br/>
        <span style="border:2px solid #CCC; background:#F66; line-height:26px; font-size:14px" id="userNameSpan">用户名不能为空!</span>
        <p style="font-size:16px; font-weight:bold">登陆密码:</p>
        <input type="password" style="width:350px; height:50px; border:1px solid #CCC" id="passwordone" name="passwordone" /><br/>
        <span style="border:2px solid #CCC; background:#F66; line-height:26px; font-size:14px" id="userNameSpan">密码长度不能小于6位!</span>
        <p style="font-size:16px; font-weight:bold">确认密码:</p>
        <input type="text" style="width:350px; height:50px; border:1px solid #CCC" id="passwordtwo" name="passwordtwo" />
        <p style="font-size:16px; font-weight:bold">电子邮箱:</p>
        <input type="text" style="width:350px; height:50px; border:1px solid #CCC" id="mail" name="email" /><br/>
        <span style="border:2px solid #CCC; background:#F66; line-height:26px; font-size:14px" id="userNameSpan">请填写有效的电子邮箱!</span>
        <p style="font-size:16px; font-weight:bold"></p>    
        <input type="submit" style="width:150px; height:60px; background:#06F"  value="提交注册" id="buttontwo" name="buttontwo" /><br/>
        <p style="font-size:20px; font-weight:bold">我已注册,直接 <a href="denglu.jsp"><input type="button" style="width:100px; height:60px; background:#06F"  value="登 陆" id="buttonone" name="buttonone"/> </a></p>
        
        </form>
     </div>
      
  </div>
</body>
</html>

zhuce.css

@charset "utf-8";
/* CSS Document */

@charset "utf-8";
/* CSS Document */
body {
    text-align: center;
    font-size: 12px;
    font-family: "宋体",Tahoma, Arial, Helvetica, sans-serif;
    color: #333;
}
#container{  
    margin:0px auto;  
    width:1500px;  
    height:1130px;  
    text-align:left;  
    background:#FFF;   
	border: 10px solid #0F0;   
}  
#top{
	height:30px;
	width:100%;
	line-height: 30px;
    border-bottom: 1px solid #cacaca;
	clear: both;
    padding: 25px 0 0;
}
#tit_name 
{
    display: block;
    float: left;
    padding: 0 10px;
    line-height: 30px;
    border-bottom: 1px solid #31e02c;
    font-size: 14px;
    font-weight: bold;
}
#left{
	height:1000px;
	width:900px;
    float: left;
    display: inline;
}
#loginbox 
{
    float: left;
    margin-top:100px;
    width: 400px;
    padding: 50px;
    border: 1px solid #069;
}
#username{
    height: 32px;
    line-height: 32px;
    text-indent: 2px;
    border: 1px solid #666;
    background: #fff;
}

实现的界面



二.后端功能的实现

  DButil.java

package Servlet;
import java.sql.DriverManager;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;

public class DButil 
{
	private static String driver;
	private static String url;
	private static String username;
	private static String password;
	
	static {
		driver="com.mysql.jdbc.Driver";
		url="jdbc:mysql://localhost:3306/test";
		username="root";
		password="root";
	}
	
	 /*
	  * 打开数据库
	  */
	
	public static Connection open() 
	{
			try {
				System.out.println("数据库连接成功!"); 
				Class.forName(driver);
				return (Connection) DriverManager.getConnection(url,username,password);
			} catch (Exception e) {
				// TODO Auto-generated catch block
				System.out.println("数据库连接失败!"); 
				e.printStackTrace();
			}
		return null;
	}
	
	/*
	 * 关闭数据库
	 */
	 public static void close(Connection conn)  
     {  
         if(conn!=null)  
         {  
             try
             {  
                 conn.close();  
             } catch (SQLException e) {  
                 // TODO Auto-generated catch block  
                 e.printStackTrace();  
             }  
         }  
     }  
}

Customer.java

package Servlet;

public class Customer {
 String username;
 String password;
 String email;
public String getUsername() {
	return username;
}
public void setUsername(String username) {
	this.username = username;
}
public String getPassword() {
	return password;
}
public void setPassword(String password) {
	this.password = password;
}
public String getEmail() {
	return email;
}
public void setEmail(String email) {
	this.email = email;
}

}

CustomerDAO.java

package Servlet;
import java.util.List;

public interface CustomerDAO {
	  public void add(Customer c);//添加用户
	  public void update(Customer c);//修改用户
	  public List<Customer> query();//查询返回所有用户
}

CustomerDAOer.java

package Servlet;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Statement;

public class CustomerDAOer implements CustomerDAO {

	public void add(Customer c) {
		// TODO Auto-generated method stub
		 String sql="insert into user(username,password,email) values(?,?,?)";
	        Connection conn=DButil.open();
	        try {
				PreparedStatement pst=(PreparedStatement) conn.prepareStatement(sql);
				pst.setString(1,c.getUsername());
				pst.setString(2,c.getPassword());
				pst.setString(3,c.getEmail());
				
				pst.executeUpdate();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}    
	        finally{
	        	DButil.close(conn);
	        }
	}

	@Override
	public void update(Customer c) {
		// TODO Auto-generated method stub
		String sql="update user set password=? where username=?";
        Connection conn=DButil.open();
        try {
			PreparedStatement pst=(PreparedStatement) conn.prepareStatement(sql);
			pst.setString(2,c.getPassword());
			pst.setString(3,c.getEmail());
			pst.setString(1,c.getUsername());
			
			pst.executeUpdate();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        
        finally{
        	DButil.close(conn);
        }
	}

	@Override
	public List<Customer> query() {
		String sql="select * from user";
        Connection conn=DButil.open();
        try {
			Statement stmt=(Statement) conn.createStatement();
			ResultSet rs=stmt.executeQuery(sql);
			List<Customer> list=new ArrayList<Customer>();
			while(rs.next())
			{
				String username=rs.getString(1);
				String password=rs.getString(2);
				String email=rs.getString(3);
				Customer c=new Customer();
				
				c.setUsername(username);
				c.setPassword(password);
				c.setEmail(email);
				
				list.add(c);
			}
			return list;
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
       
        finally{
        	DButil.close(conn);
        }
		return null;
	}

}

Register.java

package Servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Register extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    public Register() {
        super();
        // TODO Auto-generated constructor stub
    }
    
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		  doPost(request, response);  
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		request.setCharacterEncoding("utf-8");  
        response.setCharacterEncoding("utf-8");  
        response.setHeader("Content-Type","text/html; charset=utf-8");  
        
        String username=request.getParameter("username");  
        String passwordone=request.getParameter("passwordone");  
        String passwordtwo=request.getParameter("passwordtwo");  
        String email=request.getParameter("email");  
        
        PrintWriter out=response.getWriter(); 
        if(username!=""&&passwordone.equals(passwordtwo)&&email!="")
        {
        	String password=passwordone;
        	out.println("恭喜您!注册成功");
        	CustomerDAO dao=new CustomerDAOer();//调用接口读取方法来实例化
        	Customer c=new Customer();
    		c.setUsername(username);
    		c.setPassword(password);
    		c.setEmail(email);
    		dao.add(c);
        }
        else
        {
        	out.println("您输入的信息有误,请重新输入!");	
        }
	}

}

提交注册信息后的界面



看看后台的数据库(最后一个即是刚注册的用户),说明用户注册成功了!



  • 18
    点赞
  • 99
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潇潇雨歇_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值