File->new->Project->Web Project,假如起名Register1。在其scr中建立class類(右鍵scr->New->Class),Package(包名):mywork.test。Name:RegisterServlet。finish。
2.RegisterServlet.java中代碼
package mywork.test;
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 java.sql.*;
public class RegisterServlet extends HttpServlet {
static{
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("into Servlet!!");
// get data
String username = request.getParameter("username");
String password = request.getParameter("password");
String sex = request.getParameter("sex");
String id = request.getParameter("id");
String email = request.getParameter("email");
String nation = request.getParameter("nation");
// check data
char nameHeader = username.charAt(0);
if((username.length() <= 6) || ((!(nameHeader > 'a' && nameHeader < 'z')) && (!(nameHeader > 'A' && nameHeader < 'Z')))){
response.sendRedirect("../fail.html");
System.out.println("username Check");
return;
}else if(password.length() <= 8){
response.sendRedirect("../fail.html");
System.out.println("pass Check");
return;
}else if(id.length() != 15 && id.length() != 18){
response.sendRedirect("../fail.html");
System.out.println("id Check-" + id +"-"+id.length());
return;
}
// put into db
try {
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost/Garbage?user=root&password=siyuan123");//localhost:主機名,端口號;Garbage:數據庫database;Mysql帳戶、密碼
PreparedStatement ps = conn.prepareStatement(
"INSERT INTO UserInfo VALUES(?,?,?,?,?,?)");
ps.setString(1, username);
ps.setString(2, password);
ps.setString(3, sex);
ps.setString(4, email);
ps.setString(5, nation);
ps.setString(6, id);
ps.execute();
ps.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// redirect
response.sendRedirect("../ok.html");
}
}
4.配置web.xml路徑: \Register1\WebRoot\WEB-IN4.配置web.xml
路徑: \Register1\WebRoot\WEB-INFF
如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>RegisterServlet</servlet-name>
<servlet-class>mywork.test.RegisterServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>RegisterServlet</servlet-name>
<url-pattern>/servlet/RegisterServlet</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
紅色爲添加部分,mywork.test.RegisterServlet對應包5.添加註冊頁面與跳轉頁面
右鍵Webroot->New->HTML->File Name改爲register.html(註冊頁面)代碼如下:
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
</head>
<body>
<h1>註冊頁面!</h1>
<form action="servlet/RegisterServlet" method="post">
帳戶:<input type="text" name="username" /><br />
密碼:<input type="password" name="password" /><br />
性別: <input type="radio" name="sex" value="M"/>男 <input type="radio" name="sex" value="F"/>女 <input type="radio" name="sex" value="X"/>不知道<br />
身份證: <input type="text" name="id" /><br />
Email: <input type="text" name="email" /><br />
國籍:<select name="nation">
<option value="chn">中國</option>
<option value="usa">USA</option>
<option value="mar">MARS??</option>
</select><br />
<input type="submit" value="提交"/><input type="reset" value="重置" />
</form>
</body>
</html>
右鍵Webroot->New->HTML->File Name改爲ok.html(成功頁面)代碼如下:
添加:
<body>
終於成功了! <br>
</body>
右鍵Webroot->New->HTML->File Name改爲fail.html(失敗頁面)代碼如下:添加:
<body>
垃圾!不行! <br>
</body>
6.添加到服務器,啓動tomcat。IE輸入:http://localhost:8080/Register1/register.html