使用Servlet完成用户注册
本文将学习如何在Servlet中完成用户的表单注册。本文使用的数据库是MySQL5.7。
出于简化程序的目的,我们在Servlet中混合了数据库逻辑。实际开发中,应该划分实体,Dao等元素。
1 创建表
在MySQL的test数据库建立t_user表:
CREATE TABLE `t_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) DEFAULT NULL,
`password` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
2 编写注册页面
register.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>一点教程网-使用Servlet完成用户注册</title>
</head>
<body>
<h1>使用Servlet完成用户注册</h1>
<form action="Register" method="post">
用户名:<input type="text" name="userName"/><br/><br/>
密码:<input type="password" name="userPass"/><br/><br/>
<br/>
<input type="submit" value="注册"/>
</form>
</body>
</html>
3 编写RegisterServlet
RegisterServlet用于获取用户输入的信息,保存到用户表中:
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
/**
* 一点教程网 - http://www.yiidian.com
*/
public class RegisterServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
String n=request.getParameter("userName");
String p=request.getParameter("userPass");
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con= DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test","root","root");
PreparedStatement ps=con.prepareStatement(
"insert into t_user(username,password) values(?,?)");
ps.setString(1,n);
ps.setString(2,p);
int i=ps.executeUpdate();
if(i>0)
out.print("你已经成功注册...");
}catch (Exception e2) {
System.out.println(e2);
}
out.close();
}
}
4 配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<servlet>
<servlet-name>RegisterServlet</servlet-name>
<servlet-class>RegisterServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>RegisterServlet</servlet-name>
<url-pattern>/Register</url-pattern>
</servlet-mapping>
</web-app>
5 运行测试
注册成功后,提示如下:
查询数据库表,记录是否成功插入:
本案例需要在lib目录导入mysql驱动程序,点击下面链接下载:
热门文章
优秀文章