在这里, 你将学习如何在servlet中创建简单的注册表单。我们正在使用oracle10g数据库。因此, 你需要首先创建一个表, 如下所示:
CREATE TABLE "REGISTERUSER"
( "NAME" VARCHAR2(4000), "PASS" VARCHAR2(4000), "EMAIL" VARCHAR2(4000), "COUNTRY" VARCHAR2(4000)
)
/
要在servlet中创建注册页面, 我们可以将数据库逻辑与servlet分开。但是在这里, 仅出于简化程序的目的, 我们在servlet中混合了数据库逻辑。稍后, 我们将按照DAO, DTO和Singleton设计模式在JSP中开发此页面。
Servlet中的注册表单示例
在此示例中, 我们创建了三个页面。
- register.html
- Register.java
- web.xml
register.html
在此页面中, 我们使用文本字段和组合框从用户那里获得输入。用户输入的信息将转发到Register servlet, 后者负责将数据存储到数据库中。
<html>
<body>
<form action="servlet/Register" method="post">
Name:<input type="text" name="userName"/><br/><br/>
Password:<input type="password" name="userPass"/><br/><br/>
Email Id:<input type="text" name="userEmail"/><br/><br/>
Country:
<select name="userCountry">
<option>India</option>
<option>Pakistan</option>
<option>other</option>
</select>
<br/><br/>
<input type="submit" value="register"/>
</form>
</body>
</html>
Register.java
该Servlet类接收用户输入的所有数据, 并将其存储到数据库中。在这里, 我们正在执行数据库逻辑。但是你可以将其分开, 这对于Web应用程序会更好。
import java.io.*;
import java.sql.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
public class Register extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String n=request.getParameter("userName");
String p=request.getParameter("userPass");
String e=request.getParameter("userEmail");
String c=request.getParameter("userCountry");
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:xe", "system", "oracle");
PreparedStatement ps=con.prepareStatement(
"insert into registeruser values(?, ?, ?, ?)");
ps.setString(1, n);
ps.setString(2, p);
ps.setString(3, e);
ps.setString(4, c);
int i=ps.executeUpdate();
if(i>0)
out.print("You are successfully registered...");
}catch (Exception e2) {System.out.println(e2);}
out.close();
}
}
web.xml文件
是配置文件, 提供有关Servlet的信息。
<web-app>
<servlet>
<servlet-name>Register</servlet-name>
<servlet-class>Register</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Register</servlet-name>
<url-pattern>/servlet/Register</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>register.html</welcome-file>
</welcome-file-list>
</web-app>
下载此示例
下载战争文件
下载此示例(使用Myeclipse IDE开发)
下载此示例(使用Eclipse IDE开发)
下载此示例(使用Netbeans IDE开发)
要将Java应用程序与Oracle数据库连接, 需要加载ojdbc14.jar文件。将此jar文件放在WEB-INF / lib文件夹中。
下载jar文件ojdbc14.jar