使用Java类进行JSP验证 [英] JSP validation with java class
本文介绍了使用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
- 接收数据
- 对收到的数据进行验证
- POST a form from jsp to setvlet
- in
doPost()
of servlet, receive the data - perform the validation on the received data
doPost()
中的如果验证正确,则有条件地将请求转发到成功页面,或者在验证失败的情况下,将错误消息设置在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屋!
查看全文