gpt4 book ai didi

java - 在服务类中启用 JSR-303 注释验证(不在 Spring Controller 中,也不在 JAX-RS 资源中)

转载 作者:行者123 更新时间:2023-12-02 04:43:59 25 4
gpt4 key购买 nike

我想使用 JSR-303 注释对 JAX-RS 资源以外的类的方法进行参数验证。使用 JEE 容器,它可以在 EJB/CDI bean 上运行,但我无法让它在 Spring 中运行。代码可能如下所示。

我缺少哪个 Maven 依赖项或其他配置? (我不想自己调用 Validator。我希望 spring 在这里为我完成工作。)

请注意,Person 类不是 JPA 实体,因此作为 JPA 实现的 Hibernate Validator 无法在此处完成工作。

public class Person{

@NotNull
private String firstName;

}

@Service
public class PersonServiceImpl{

public void create(@Valid Person person){
....
}
}

最佳答案

根据 Spring 的官方文档,您可以将 validator 注入(inject)您的服务,查看链接 http://docs.spring.io/spring/docs/current/spring-framework-reference/html/validation.html .

例子:

import javax.validation.Validator;

@Service
public class MyService {

@Autowired
private Validator validator;

关于java - 在服务类中启用 JSR-303 注释验证(不在 Spring Controller 中,也不在 JAX-RS 资源中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34954961/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com