示例
学生数据库:
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