总结
启动MySQL services.msc
pageContext.request.contextPath
request.getRequestDispatcher.forward()
reponse.sendRedirest()
statement.excuteQuery()
statement.executeUpdate()
printStackTrace()
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<center>
<a href="${pageContext.request.contextPath}/login.jsp">登录</a>
<a href="${pageContext.request.contextPath}/register.jsp">注册</a>
<br>
<!--font color="red">
<h3>
新建servlet的时候,别忘了在doPost方法里面加入doGet(request,response),这样所有的提交都交给doGet()来处理,
忘写出现回车才提交表单数据的现象 <br>
修改servlet的名字时,注意修改web.xml,以及jsp中用到自己的地方,因为java那里会跟着修改,jsp里面不会跟着修改 <br>
</h3>
</font-->
</center>
</body>
</html>
login.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'login.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form action="${pageContext.request.contextPath}/servlet/Login"
method="post">
帐号:<input type="text" name="username"><br> 密码:<input
type="password" name="password"><br> <input
type="submit" value="登录">
</form>
</body>
</html>
registerjsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'login.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form action="${pageContext.request.contextPath}/servlet/Register"
method="post">
帐号:<input type="text" name="username"><br> 密码:<input
type="password" name="password"><br> <input
type="submit" value="注册">
</form>
</body>
</html>
User.java
package com.jingtian.javabean;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
*
* @author deizhi
* Class.forName("com.mysql.jdbc.Driver");//忘记导包,MyEclipse通过这个包与MySQL相连
*
* con = DriverManager.getConnection(
* "jdbc:mysql://localhost:3306/user", "root",
* "124343");//数据库的名字,以及MySQL的用户名密码
* stm =con.createStatement();
*
*
* rs = stm.executeQuery("select * from information where username = '"
* + username +
* "'");//用SQL语句操作表单//注意SQL语句中varchar类型需要加单引号,MyEclipse中字符串需要加双引号
* ,MySQL需要加单引号
*
* rs.getString("password");//字段名双引号
*/
public class User {
private String username;
private String password;
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 boolean login() {
ResultSet rs = null;
Statement stm = null;
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/user", "root", "124343");
stm = con.createStatement();
rs = stm.executeQuery("select * from information where username = '"
+ username + "'");
if (rs.next()) {
String dbPassword = rs.getString("password");
if (password.equals(dbPassword)) {
return true;
} else {
return false;
}
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (stm != null) {
stm.close();
}
if (con != null) {
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
return false;
}
public boolean register() {
ResultSet rs = null;
Statement stm = null;
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection(
"jdbc:mysql://localhost/user", "root", "124343");
stm = con.createStatement();
rs = stm.executeQuery("select * from information where username = '"
+ username + "'");
if (rs.next()) {
System.out.println("你注册的用户已经存在!!");
return false;
} else {
stm.executeUpdate("insert into information values('"
+ username + "','" + password + "');");
System.out.println("注册成功!!");
return true;
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (stm != null) {
stm.close();
}
if (con != null) {
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
return false;
}
public int update() {
ResultSet rs = null;
Statement stm = null;
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection(
"jdbc:mysql://localhost/user", "root", "124343");
stm = con.createStatement();
rs = stm.executeQuery("select * from information where username = 'aaa'");
if (rs.next()) {
System.out.println("1");
String dbPassword=rs.getString("password");
System.out.println(dbPassword);
if("123".equals(dbPassword))
{
System.out.println("2");
int key=stm.executeUpdate("update information set password = '00000000' where username='aaa';");
return key;
}
else
{
return 0;
}
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (stm != null) {
stm.close();
}
if (con != null) {
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
System.out.println("3");
return 0;
}
}
login.java
package com.jingtian.controller;
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 com.jingtian.javabean.User;
public class Login extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
// System.out.println(username);
// System.out.println(password);
User user = new User();
user.setUsername(username);
user.setPassword(password);
boolean key=user.login();
if(key)
{
PrintWriter out = response.getWriter();
out.print("登陆成功");
}else
{
PrintWriter out = response.getWriter();
out.print("用户名或密码错误");
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
}
register.java
package com.jingtian.controller;
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 com.jingtian.javabean.User;
public class Register extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
// System.out.println(username);
// System.out.println(password);
User user = new User();
user.setUsername(username);
user.setPassword(password);
boolean key=user.register();
if(key)
{
PrintWriter out = response.getWriter();
out.print("注册成功");
}else
{
PrintWriter out = response.getWriter();
out.print("注册失败");
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
}
Update.java
package com.jingtian.controller;
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 com.jingtian.javabean.User;
public class Update extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
User user = new User();
int key=user.update();
PrintWriter out = response.getWriter();
out.print(key);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<display-name></display-name>
<servlet>
<servlet-name>Register</servlet-name>
<servlet-class>com.jingtian.controller.Register</servlet-class>
</servlet>
<servlet>
<servlet-name>Login</servlet-name>
<servlet-class>com.jingtian.controller.Login</servlet-class>
</servlet>
<servlet>
<servlet-name>Update</servlet-name>
<servlet-class>com.jingtian.controller.Update</servlet-class>
</servlet>
<servlet>
<servlet-name>Delete</servlet-name>
<servlet-class>com.jingtian.controller.Delete</servlet-class>
</servlet>
<servlet>
<servlet-name>BadPeople</servlet-name>
<servlet-class>com.jingtian.controller.BadPeople</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Register</servlet-name>
<url-pattern>/servlet/Register</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Login</servlet-name>
<url-pattern>/servlet/Login</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Update</servlet-name>
<url-pattern>/servlet/Update</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Delete</servlet-name>
<url-pattern>/servlet/Delete</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>BadPeople</servlet-name>
<url-pattern>/servlet/BadPeople</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>