JSR303自定义验证是一种基于Java Bean Validation规范的验证框架,它可以帮助开发者在应用程序中实现数据验证。JSR303自定义验证可以帮助开发者在应用程序中实现数据验证,以保证数据的准确性和一致性。
JSR303自定义验证主要包含三个部分:注释、校验器和校验工厂。注释是由开发者在JavaBean上使用的注释;校验器是由开发者创建的校验逻辑;校验工厂是由开发者创建的工厂(Factory),用于将注释与校验器关联。
@NotNull(message = "Name cannot be null") private String name;
上述代码中使用了@NotNull注释来表明name字段不能为null。当name字段为null时,会返回“Name cannot be null”的消息。
JSR303自定义验证还具有一些其他优势:
以下代码显示如何创建自定义验证消息。
下面的代码来自UserBean.java。
package cn..common; import java.io.Serializable; import java.sql.Date; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; @ManagedBean(name="user") @SessionScoped public class UserBean implements Serializable{ String username; Date dob; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Date getDob() { return dob; } public void setDob(Date dob) { this.dob = dob; } }
以下代码来自demo.xhtml。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" > <h:body> <h:form> <h:panelGrid columns="3"> Enter your username : <h:inputText id="username" value="#{user.username}" size="20" required="true" label="Username"> <f:validateLength minimum="5" maximum="10" /> </h:inputText> <h:message for="username" style="color:red" /> Enter your DOB : <h:inputText id="dob" value="#{user.dob}" size="20" required="true" label="Date of Birth"> <f:convertDateTime /> </h:inputText> <h:message for="dob" style="color:red" /> </h:panelGrid> <h:commandButton value="Submit" action="result" /> </h:form> </h:body> </html>
以下代码来自MyMessage.properties。
javax.faces.converter.DateTimeConverter.DATE={2}: ""{0}"" could not be understood as a date. javax.faces.converter.DateTimeConverter.DATE_detail=Invalid date format. javax.faces.validator.LengthValidator.MINIMUM=Minimum length of ""{0}"" is required.
以下代码来自result.xhtml。
?下载 Custom-Validation-Error-Message.zip
将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。
Tomcat完成启动后,在浏览器地址栏中键入以下URL。
http://localhost:8080/simple-webapp/demo.xhtml
JPA教程 -JPA一对多排序示例以下代码显示如何在一对多映射中按属性设置顺序。 @OrderBy(“name ASC")设置按人员名称设置的人员排...
JPA教程 -JPA多对一两个连接列示例以下代码显示了如何在多对一映射中设置连接列。@ManyToOne@JoinColumns({@JoinColumn(name="DE...
JPA教程 -JPA表名示例默认情况下,JPA使用类的简单名称来命名相应的表。@Entity@Table(name="EMP")public class Person {例子下...
Java 实例 - 文件写入 Java 实例以下实例演示了使用 write() 方法向文件写入内容:import java.io.*;public class Main { public...
Java 实例 - 在指定目录中创建文件 Java 实例以下实例演示了使用 File 类的file.createTempFile() 方法在指定目录中创建文件:im...