仅作为临时存储用,看官绕道- -
WebServlet FormServlet
【user包】:
Dbus.java
package user;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Dbus {
public static Connection getConnection() {
Connection conn = null;
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
System.out.println("驱动程序未找到,请导入驱动包");
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/Tables", "root", "root");
} catch (SQLException e) {
System.out.println("执行数据库连接时发生错误");
e.printStackTrace();
}
return conn;
}
public static void closeConnection(Connection conn) {
try {
if (conn != null) {
conn.close();
conn = null;
}
} catch (SQLException e) {
System.out.println("执行关闭数据库连接过程中发生错误...");
e.printStackTrace();
}
}
public static void closeStatement(Statement stmt) {
try {
if (stmt != null) {
stmt.close();
stmt = null;
}
} catch (SQLException e) {
System.out.println("执行关闭表达式语句过程中发生错误...");
e.printStackTrace();
}
}
public static void closeResults(ResultSet results) {
try {
if (results != null) {
results.close();
results = null;
}
} catch (SQLException e) {
System.out.println("执行关闭结果集过程中发生错误...");
e.printStackTrace();
}
}
}
User,java
package user;
public class User {
private String name;
private String password ;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
UserInterface.java
package user;
import java.util.List;
public interface UserInterface {
boolean insert(String name,String password);
boolean delete(String name);
User update(String name,String password);
User queryByName(String name);
List<User> queryAll();
boolean login(String name,String password);
}
UserImpl.java
package user;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
public class UserImpl implements UserInterface {
static Connection conn = Dbus.getConnection();
public boolean insert(String name,String password) {
PreparedStatement pstmt = null;
boolean register=false;
String sql="insert into user(name,password)values(?,?)";
try {
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, password);
int i=pstmt.executeUpdate();
if(i>0){
register=true;
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
Dbus.closeStatement(pstmt);
//Dbus.closeConnection(conn);
}
return register;
}
public void delete(User user) {
public boolean delete(String name) {
PreparedStatement pstmt = null;
boolean del=false;
String sql="delete from users where name=?";
try {
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, name);
int i=pstmt.executeUpdate();
if(i>0){
del=true;
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
Dbus.closeStatement(pstmt);
}
return del;
}
}
public User update(String name,String password) {
PreparedStatement pstmt = null;
User user=new User();
String sql="update user set name=?,password=?";
try {
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, password);
int i=pstmt.executeUpdate();
if(i>0){
user.setName(name);
user.setPassword(password);
}
else{
user=null;
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
Dbus.closeStatement(pstmt);
//Dbus.closeConnection(conn);
}
return user;
}
public User queryByName(String name) {
PreparedStatement pstmt = null;
ResultSet results = null;
User user=new User();
user.setName(name);
String sql="select from user name=?";
try {
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, name);
results=pstmt.executeQuery();
if(results.next()){
String password=results.getString(2);
user.setPassword(password);
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
Dbus.closeResults(results);
Dbus.closeStatement(pstmt);
//Dbus.closeConnection(conn);
}
return user;
}
public List<User> queryAll() {
PreparedStatement pstmt = null;
ResultSet results = null;
List<User> list = new ArrayList<User>();
String sql = "select * from user";
try {
pstmt = conn.prepareStatement(sql);
results = pstmt.executeQuery();
while (results.next()) {
User user = new User();
user.setName(results.getString(1));
user.setPassword(results.getString(2));
list.add(user);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
Dbus.closeResults(results);
Dbus.closeStatement(pstmt);
}
//Dbus.closeConnection(conn);
return list;
}
public boolean login(String name, String password) {
PreparedStatement pstmt = null;
ResultSet results = null;
boolean login=false;
String sql = "select * from user where name=? and password=?";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, password);
results = pstmt.executeQuery();
if (results.next()) {
login=true;
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
Dbus.closeResults(results);
Dbus.closeStatement(pstmt);
//Dbus.closeConnection(conn);
}
return login;
}
}
【servlet包】
LoginServlet.java
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import user.UserImpl;
import user.UserInterface;
public class LoginServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
UserInterface ui=new UserImpl();
String name=request.getParameter("name");
String password=request.getParameter("password");
if(ui.login(name, password)==true){
out.println("欢迎来到!");
}
else{
request.getRequestDispatcher("/login.html").forward(request, response);
//this.getServletConfig().getServletContext().getRequestDispatcher("/login.html").forward(request, response);
}
out.flush();
out.close();
}
}
RegisterServlet.java
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import user.UserImpl;
import user.UserInterface;
public class RegisterServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
UserInterface ui = new UserImpl();
String name = request.getParameter("name");
String password = request.getParameter("password");
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println(" <BODY>");
if (ui.insert(name, password) == true) {
out.println("恭喜,注册成功");
} else {
out.println("对不起,注册失败");
}
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
}
EncodeFilter.java
package servlet;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class EncodeFilter implements Filter{
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest request= (HttpServletRequest)req;
HttpServletResponse response=(HttpServletResponse)res;
request.setCharacterEncoding("gb2312");
response.setCharacterEncoding("gb2312");
chain.doFilter(req, res);
}
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
}
【webroot】
register.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>register.html</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
</head>
<body>
<form action="/FormServlet/servlet/RegisterServlet">
<b>注册</b><br>
用户名:
<input type="text" name="name" /><br><br>
密 码:
<input type="password" name="password"/><br>
<br>
<input type="submit" value="注册" />
<input type="reset" value="重置" />
<br>
(<font color="red">我已经有账号,点击</font><a href="login.html">登陆</a>)
</form>
</body>
</html>
login.html
DeleteServlet
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import user.User;
import user.UserImpl;
import user.UserInterface;
public class DeleteServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
UserInterface ui = new UserImpl();
String delname = request.getParameter("delname");
if(ui.delete(delname)){
out.println("<script>alert('删除成功')</script>");
}
out.flush();
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
UserInterface ui = new UserImpl();
String delname = request.getParameter("delname");
if(ui.delete(delname)){
out.println("<script>alert('删除成功')</script>");
}
out.flush();
out.close();
}
}
QueryAllServlet
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import user.User;
import user.UserImpl;
import user.UserInterface;
public class QueryAllServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
UserInterface ui=new UserImpl();
List<User> list=ui.queryAll();
HttpSession session=request.getSession(true);
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE></TITLE></HEAD>");
out.println(" <BODY>");
out.println("<table border=\"2\" width=\"75%\" align=\"center\"><tr><th>用户名</th><th>密码</th><th>性别</th><th>城市</th><th>关于我</th><th>操作</th></tr>");
for(int i=0;i<list.size();i++){
out.println("<tr><td align=\"center\">"+"<font color=\"blue\">"+list.get(i).getName()+"</font>"+"</td>");
out.println("<td align=\"center\">"+"<font color=\"red\">"+list.get(i).getPassword()+"</font>"+"</td>");
out.println("<td align=\"center\">"+"<font color=\"blue\">"+list.get(i).getSex()+"</font>"+"</td>");
out.println("<td align=\"center\">"+"<font color=\"blue\">"+list.get(i).getCity()+"</font>"+"</td>");
out.println("<td align=\"center\">"+"<font color=\"blue\">"+list.get(i).getDescription()+"</font>"+"</td>");
String delname=list.get(i).getName();
//out.println("");
//out.println("<input type=\"radio\" οnclick="javascript:window.location.href='http://localhost:8888/FormServlet/DeleteServlet?name='+id\">");
//out.println("<script>id+=1;</script>");
out.println("<td align=\"center\">"+"<a href=\"http://localhost:8888/FormServlet/servlet/DeleteServlet?delname="+delname+"\" "+">"+"删除</a>"+"</td></tr>");
//out.println("<td align=\"center\">"+"<input type=\"button\" value=\"删除\" οnclick=\"javascript:window.location.href='http://localhost:8888/FormServlet/DeleteServlet?name='+id\" />"+"</td></tr>");
}
out.println("</table>");
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
}