下面列出了怎么用org.hibernate.validator.constraints.Email的API类实例代码及写法,或者点击链接到github查看源代码。
@ValidQueryParams
@GET
public Response query(@QueryParam("name") String name, @Email @QueryParam("email") String email,
@QueryParam("offset") Integer offset, @QueryParam("count") Integer count, @Context UriInfo uriInfo) {
if (!SecurityUtils.isAdministrator())
throw new UnauthorizedException("Unauthorized access to user profiles");
EntityCriteria<User> criteria = EntityCriteria.of(User.class);
if (name != null)
criteria.add(Restrictions.eq("name", name));
if (email != null)
criteria.add(Restrictions.eq("email", email));
if (offset == null)
offset = 0;
if (count == null || count > RestConstants.PAGE_SIZE)
count = RestConstants.PAGE_SIZE;
Collection<User> users = userManager.query(criteria, offset, count);
return Response.ok(users, RestConstants.JSON_UTF8).build();
}
@ApiOperation(value = "Un Subscribe Weekly Status Email")
@RequestMapping(value = "/un-subscribe", method = RequestMethod.GET)
public String unSubscribe(Model model, @Email @Valid @RequestParam(value = "email", required = true) String email) {
model.addAttribute("email", email);
Map<String, Object> response = notificationService.unsubscribeDigestMail(email.toLowerCase());
model.addAttribute("model", response);
return "un-subscribe";
}
@ApiOperation(value = "Subscribe Weekly Status Email")
@RequestMapping(value = "/subscribe", method = RequestMethod.GET)
public String subscribe(Model model, @Email @Valid @RequestParam(value = "email", required = true) String email) {
model.addAttribute("email", email);
Map<String, Object> response = notificationService.subscribeDigestMail(email.toLowerCase());
model.addAttribute("model", response);
return "subscribe";
}
public MessageList findMessages(@Null @Email String recipientEmail, Pageable pageRequest) {
List<MessageEntity> entities;
if (StringUtils.isBlank(recipientEmail)) {
entities = messageRepository.findAllByOrderByReceivedDateDesc(pageRequest);
}
else {
entities = messageRepository.findAllForRecipientOrderByReceivedDateDesc(recipientEmail, pageRequest);
}
return messageListMapper.toMessageList(entities);
}
@RequestMapping()
public MessageList getMessages(
@RequestParam(name = "recipient", required = false) @Email String recipientEmail,
Pageable pageRequest) {
return messageService.findMessages(recipientEmail, pageRequest);
}
@NotEmpty
@Size(min = 2, max = 255)
@Email
@Column(nullable = false)
public String getEmail() {
return email;
}
@Test
public void testValidationRequiredWithSeveralParameters() {
FakeController controller = new FakeController() {
@Route(method = HttpMethod.GET, uri = "/")
public Result index(@NotNull @Parameter("name") String name, @Email @NotNull @Parameter("email") String
email, @Parameter("i") int i) {
return ok();
}
};
router.bindController(controller);
final org.wisdom.api.router.Route route = router.getRouteFor(HttpMethod.GET, "/");
assertThat(route).isNotNull();
// Valid invocation
Action.ActionResult result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).parameter("name", "wisdom").parameter("email", "[email protected]").parameter("i", 0).invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.OK);
// Invalid invocation
result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).parameter("email", "[email protected]").parameter("i", 0).invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.BAD_REQUEST);
}
@Editable(order=300)
@NotEmpty
@Email
public String getEmail() {
return email;
}
@NotEmpty(message = "Email não pode ser vazio.")
@Email(message = "Email inválido.")
public String getEmail() {
return email;
}
@NotEmpty(message = "Email não pode ser vazio.")
@Length(min = 5, max = 200, message = "Email deve conter entre 5 e 200 caracteres.")
@Email(message="Email inválido.")
public String getEmail() {
return email;
}
@NotEmpty(message = "Email não pode ser vazio.")
@Length(min = 5, max = 200, message = "Email deve conter entre 5 e 200 caracteres.")
@Email(message="Email inválido.")
public String getEmail() {
return email;
}
@NotEmpty(message = "Email não pode ser vazio.")
@Length(min = 5, max = 200, message = "Email deve conter entre 5 e 200 caracteres.")
@Email(message="Email inválido.")
public String getEmail() {
return email;
}
public void forwardMessage(long messageId, @NotBlank @Email String recipientEmail) {
Message message = getMessage(messageId);
outgoingMailSender.redirectMessage(recipientEmail, message.getRawMessage());
}
@Override
protected Class<Email> getAnnotationType() {
return Email.class;
}
@Email(message="邮箱格式不正确")
@Length(min=0, max=200, message="邮箱长度必须介于 1 和 200 之间")
@ExcelField(title="邮箱", align=1, sort=50)
public String getEmail() {
return email;
}
@Email @Length(min=0, max=100)
public String getEmail() {
return email;
}
@Email
@Size(max = 100)
@Column(name = "EMAIL", length = 100)
public String getEmail() {
return email;
}
@Email
@Size(max = 100)
@Column(name = "EMAIL", length = 100)
public String getEmail() {
return email;
}
@Email(message="邮件格式不正确")
public String getEmail() {
return email;
}
@Email(message="邮件格式不正确")
public String getEmail() {
return email;
}
@Column @Email @NotNull @NotBlank
public String getEmail() {
return this.email;
}
@Email(message = "邮件格式不正确")
public String getEmail() {
return email;
}
@NotEmpty
@Email
@Size(max = 255)
public String getEmail() {
return email;
}
@NotEmpty
@Email
@Size(max = 255)
public String getEmail() {
return email;
}
@Email
public String getEmailAddress() {
return emailAddress;
}
@Test
public void testValidationRequiredWithOneParameterWithHibernateConstraint() {
FakeController controller = new FakeController() {
@Route(method = HttpMethod.GET, uri = "/")
public Result index(@Parameter("name") @NotNull @Email String name) {
return ok();
}
};
router.bindController(controller);
final org.wisdom.api.router.Route route = router.getRouteFor(HttpMethod.GET, "/");
assertThat(route).isNotNull();
assertThat(route.getArguments()).hasSize(1);
assertThat(route.getArguments().get(0).getName()).isEqualToIgnoringCase("name");
assertThat(route.getArguments().get(0).getSource()).isEqualTo(Source.PARAMETER);
assertThat(route.getArguments().get(0).getRawType()).isEqualTo(String.class);
// Valid invocation
Action.ActionResult result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).parameter("name", "[email protected]").invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.OK);
// Invalid invocation (no email)
result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.BAD_REQUEST);
// Invalid invocation (bad email)
result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).parameter("name", "wisdom_is_not_an_email").invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.BAD_REQUEST);
}
@Test
public void testValidationRequiredWithOneParameterWithOnlyHibernateConstraint() {
FakeController controller = new FakeController() {
@Route(method = HttpMethod.GET, uri = "/")
public Result index(@Parameter("name") @Email String name) {
return ok();
}
};
router.bindController(controller);
final org.wisdom.api.router.Route route = router.getRouteFor(HttpMethod.GET, "/");
assertThat(route).isNotNull();
assertThat(route.getArguments()).hasSize(1);
assertThat(route.getArguments().get(0).getName()).isEqualToIgnoringCase("name");
assertThat(route.getArguments().get(0).getSource()).isEqualTo(Source.PARAMETER);
assertThat(route.getArguments().get(0).getRawType()).isEqualTo(String.class);
// Valid invocation
Action.ActionResult result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).parameter("name", "[email protected]").invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.OK);
// Valid invocation even without email
result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.OK);
// Invalid invocation (broken email)
result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).parameter("name", "this-is-not an email").invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.BAD_REQUEST);
// Invalid invocation (bad email)
result = action(new Invocation() {
@Override
public Result invoke() throws Throwable {
return route.invoke();
}
}).parameter("name", "wisdom_is_not_an_email").invoke();
assertThat(result.getResult().getStatusCode()).isEqualTo(Status.BAD_REQUEST);
}
@Route(method = HttpMethod.GET, uri = "/validation/auto")
public Result automatic(@Parameter("email") @NotNull @Email String email) {
return ok(email);
}