环境配置
Eclipse和Tomcat关联:
简单servlet实例
web:
package com.register.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class MyServlet
*/
@WebServlet("/myServlet")
public class MyServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public MyServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=utf-8");
response.getWriter().write("Hello world!");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
Html代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<form action="/注册案例/myServlet" method="post">
用户名:<input type="text" id="username" value="" /><br />
密码:<input type="password" name="password" /><br />
<input type="submit" value="注册"/>
</form>
</body>
</html>
注册案例
sql:
CREATE TABLE `db_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(20) DEFAULT NULL,
`password` varchar(20) DEFAULT NULL,
`email` varchar(20) DEFAULT NULL,
`gender` char(2) DEFAULT NULL,
`flag` int(11) DEFAULT NULL,
`role` int(11) DEFAULT NULL,
`code` varchar(20) DEFAULT NULL,
`contacts` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>简单注册案例</title>
</head>
<body>
<form action="/注册案例/registerServlet" method="post">
用户名:<input type="text" name="username" value="" /><br />
密码:<input type="password" name="password" /><br />
Eamil:<input type="text" name="email" /><br/>
<input type="submit" value="注册"/>
</form>
</body>
</html>
java
package com.register.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/registerServlet")
public class RegisterServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public RegisterServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1 设置编码 后期采用map实现
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=utf-8");
//2 读取数据
String username=request.getParameter("username");
String password=request.getParameter("password");
String email=request.getParameter("email");
// 3 验证数据
PrintWriter out=response.getWriter();
if (username==null||username.trim().equals("")) {
out.write("用户名不能为空!");
return;
}
if (password==null||password.trim().equals("")) {
out.write("密码不能为空!");
return;
}
if (email==null||email.trim().equals("")) {
out.write("email不能为空!");
return;
}
//4 保存数据库
Connection connection=null;
PreparedStatement pStat=null;
//注册驱动
try {
Class.forName("com.mysql.jdbc.Driver");
//获取连接
String url="jdbc:mysql://localhost:3306/javastudy?useSSL=false";
String user="root";
String pass="";
connection=DriverManager.getConnection(url, user, pass);
//创建命令
pStat=connection.prepareStatement("INSERT INTO db_user (username,PASSWORD,email) VALUE(?,?,?)");
pStat.setString(1, username);
pStat.setString(2, password);
pStat.setString(3, email);
int result=pStat.executeUpdate();
if (result>0) {
out.write("注册成功");
}else {
out.write("注册失败");
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (connection!=null) {
try {
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (pStat!=null) {
try {
pStat.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}