我正在处理响应映射的错误处理。在继续并将响应映射到我的域对象之前,我想验证响应。检查错误。验证来自REST API调用的响应
我打算有一个Validator.java类,并为每个API调用实现验证方法。
春天有没有其他办法可以做到这一点?
我正在处理响应映射的错误处理。在继续并将响应映射到我的域对象之前,我想验证响应。检查错误。验证来自REST API调用的响应
我打算有一个Validator.java类,并为每个API调用实现验证方法。
春天有没有其他办法可以做到这一点?
package com.people.net;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import org.hibernate.validator.constraints.Email;
public class UserInfo {
//Unicode check
@Pattern(regexp="[0-9a-zA-Z\\s-]+", message="chars,numbers allowed only")
String name;
int id;
@Pattern(regexp="([0-9]{10})", message="minLength=maxLength=10 only numbers")
String pin;
@Email
String email;
@Size(max=5, message="5 chars max")
String emailType;
@Size(max=5, message="5 chars max")
String addressType;
@Size(max=300, message="5 chars max")
String address;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public UserInfo(String name, String pin, String id) {
super();
this.id = Integer.parseInt(id);
this.name = name;
this.pin = pin;
}
public UserInfo(int id,String name, String pin, String email, String emailType, String addressType, String address) {
super();
this.id = id;
this.name = name;
this.pin = pin;
this.email = email;
this.emailType = emailType;
this.addressType = addressType;
this.address = address;
}
public UserInfo() {
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getPin() {
return pin;
}
public void setPin(String pin) {
this.pin = pin;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getEmailType() {
return emailType;
}
public void setEmailType(String emailType) {
this.emailType = emailType;
}
public String getAddressType() {
return addressType;
}
public void setAddressType(String addressType) {
this.addressType = addressType;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
您应该探索一下hibernate验证器,它是用于bean验证的参考实现JSR-349。更多的信息在这里https://jcp.org/en/jsr/detail?id=349。
此外,hibernate验证器是做bean验证的一个行业标准(大量可用于互联网上的东西),并附带大量流行的框架,如dropwizard等。它提供基于注释的验证,并允许您编写自己的自定义注释验证。
请参考逐步指南http://www.journaldev.com/2668/spring-validation-example-mvc-validator,其中作者使用它与春天。
感谢您的答复AmitK。我的理解是上面的验证是表单验证。我正在寻找的是不同的用例(可能技术是相同的)。当我从我的Web服务向下游呼叫时,我想验证下游的响应。例如,如果我打电话给谷歌API,那么我想验证这个API的响应。 – user1180969