示例
学生数据库:
create table Student ( stno number (3), stname varchar2 (15), stmarks number (5,2) );
web.xml:
<web-app>
<servlet>
<servlet-name>abc</servlet-name>
<servlet-class>ValidationServ</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>abc</servlet-name>
<url-pattern>/validation</url-pattern>
</servlet-mapping>
</web-app>
validpro.html:
<html>
<title>Validation Project</title>
<head><center><h2>Student form validation</h2></center></head>
<body bgcolor="#FFE4C4">
<center>
<form name="validpro" action="./validation" method="post">
<table border="1" bgcolor="A9A9A9">
<tr>
<th>Enter student number : </th>
<td><input type="text" name="validpro_sno" value=""></td>
</tr>
<tr>
<th>Enter student name : </th>
<td><input type="text" name="validpro_sname" value=""></td>
</tr>
<tr>
<th>Enter student marks : </th>
<td><input type="text" name="validpro_smarks" value=""></td>
</tr>
<tr>
<table>
<tr>
<td><input type="submit" name="validpro_insert" value="Insert"></td>
<td><input type="reset" name="validpro_clear" value="Clear"></td>
</tr>
</table>
</tr>
</table>
</form>
</center>
</body>
</html>
validationserv.java:
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
import java.util.*;
public class ValidationServ extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
ArrayList al = new ArrayList();
res.setContentType("text/html");
PrintWriter pw = res.getWriter();
String sno1 = req.getParameter("validpro_sno");
String sname = req.getParameter("validpro_sname");
String smarks1 = req.getParameter("validpro_smarks");
int sno = 0;
float smarks = 0;
if ((sno1 == null) || (sno1.equals(""))) {
al.add("PROVIDE STUDENT NUMBER...");
} else {
try {
sno = Integer.parseInt("sno1");
} catch (NumberFormatException nfe) {
al.add("PROVIDE int DATA IN STUDENT NUMBER...");
}
}
if ((sname == null) || (sname.equals(""))) {
al.add("PROVIDE STUDENT NAME...");
}
if ((smarks1 == null) || (smarks1.equals(""))) {
al.add("PROVIDE STUDENT MARKS...");
} else {
try {
smarks = Float.parseFloat("smarks1");
} catch (NumberFormatException nfe) {
al.add("PROVIDE float DATA IN STUDENT MARKS...");
}
}
if (al.size() != 0) {
pw.println(al);
} else {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:Hanuman", "scott", "tiger");
PreparedStatement ps = con.prepareStatement("insert into Student values (?,?,?)");
ps.setInt(1, sno);
ps.setString(2, sname);
ps.setFloat(3, smarks);
int i = ps.executeUpdate();
if (i > 0) {
pw.println("RECORD INSERTED...");
} else {
pw.println("RECORD NOT INSERTED...");
}
con.close();
} catch (Exception e) {
res.sendError(503, "PROBLEM IN DATABASE...");
}
}
}
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
doGet(req, res);
}
};
验证表单
使用servlet开发HTML表单并验证该数据 :
验证:
- Stno - 必须包含数据,它应该包含常规数据。
- sname - 必须包含数据,不允许使用特殊字符。
- Smarks - 必须包含数据,它应该包含浮动数据。
日期:2020-04-11 23:04:24 来源:oir作者:oir
