使用Java类进行JSP验证 [英] JSP validation with java class

查看:58
本文介绍了使用Java类进行JSP验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何通过Java类(servlet)验证jsp页面,并根据结果前进或后退并返回错误消息?

How can validate a jsp page through java class ( servlet ) and depending on the result to go forward or to go back with error message?

谢谢.

推荐答案

  • 将表单从jsp发布到setvlet
  • servlet doPost()中的
  • 接收数据
  • 对收到的数据进行验证
    • POST a form from jsp to setvlet
    • in doPost() of servlet, receive the data
    • perform the validation on the received data
    • 如果验证正确,则有条件地将请求转发到成功页面,或者在验证失败的情况下,将错误消息设置在request属性中,然后再次将请求转发到FORM页面.

      If it validates correctly conditionally forward the request to success page or in case of validation fail set the error message in request attribute and forward request again to the FORM page

      例如

      // Prepare messages.
      Map<String, String> messages = new HashMap<String, String>();
      request.setAttribute("messages", messages);
      
      // Get and validate name.
      String name = request.getParameter("name");
      if (name == null || name.trim().isEmpty()) {
          messages.put("name", "Please enter name");
      } else if (!name.matches("\\p{Alnum}+")) {
          messages.put("name", "Please enter alphanumeric characters only");
      }
      
      // Get and validate age.
      String age = request.getParameter("age");
      if (age == null || age.trim().isEmpty()) {
          messages.put("age", "Please enter age");
      } else if (!age.matches("\\d+")) {
          messages.put("age", "Please enter digits only");
      }
      
      // No validation errors? Do the business job!
      if (messages.isEmpty()) {
          messages.put("success", String.format("Hello, your name is %s and your age is %s!", name, age));
      }
      
      request.getRequestDispatcher("/WEB-INF/hello.jsp").forward(request, response);
      

      查看详细信息

      这篇关于使用Java类进行JSP验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆