当前位置: 首页 > 面试题库 >

如何避免由于@Constraint validatedBy而导致层之间的交叉依赖?

高运诚
2023-03-14
问题内容

在我们的项目中,我们在单独的Maven模块中具有Service和DAO层。服务模块取决于DAO模块,并与它的实体一起使用。问题在于我们不能在DAO实体中放置使用服务层中某些服务的定制jsr
303约束,因为这会创建从DAO层到服务层的反向引用,因为验证器类需要在custom的validatedBy属性中进行引用@约束。

有没有办法(使用标准jsr 303
api)在运行时指定一些自定义约束的验证器类(或以其他任何方式解决我们的问题)?内置约束具有空的validatedBy属性,但我不知道是否有一些api。


问题答案:

您可以使用基于XML的约束映射将验证器分配给您的约束,以避免从批注中引用验证器实现。

该BV 1.1
EG
还讨论了在这方面的一些改进。随时考虑邮件列表上的问题。



 类似资料:
  • 是否有一种方法(使用标准的JSR303 api)在运行时指定某种自定义约束的验证器类(或以任何其他方式解决我们的问题)?内置的约束具有空的validatedBy属性,但我不知道是否有相应的api。

  • 问题内容: 我正在将postgres 9.1与tablefunc:crosstab一起使用 我有一个具有以下结构的表: 这由每天获取数据的脚本填充。因此可能看起来像这样: 然后,我使用以下交叉表查询来透视表: 运行这个我得到结果: 问题: 在表中使用大量实际数据运行时,我注意到对于某些字段,该函数将结果分为两行: 我检查了dt和instrument字段是否相同,并通过将交叉表的输出分组来产生了解决

  • 你好,我有一个基于spring boot的后端,我们正在使用自己的库将JPA实体转换为DTO的(库基于反射工作)。问题是,我们将服务层直接注入到一些映射器中。假设我有一个和。UserDto有一个名为avatar的字段,化身存储在中。因此,为了构建UserDto,我们使用如下代码。 我不喜欢这种方法,因为Mapper必须对服务层一无所知。但是,这个映射器也被其他映射器使用。如果我想返回一个Order

  • 考虑这两个模块(在同一个文件夹中): 首先是人。派克 然后pet.py 上面的代码将无法工作,因为循环依赖。你会得到一个错误: 让它工作的一些方法: 将类Person和Pet的定义保存在同一个文件中 e、 g.只要有: 到目前为止,我在列出的所有选项中看到了一些缺点。 还有别的办法吗?一个允许我 将类拆分为不同的文件 或者:有没有很好的理由去遵循我已经列出的解决方案之一?

  • 问题内容: 我有一个经典的Java EE系统,具有JSF的Web层,用于BL的EJB 3和用于对DB2数据库进行数据访问的Hibernate 3。我在以下情况下苦苦挣扎:用户将启动一个过程,该过程涉及从数据库中检索大型数据集。检索过程花费一些时间,因此用户不会立即收到响应,变得不耐烦,并打开新的浏览器并再次启动检索,有时是多次。EJB容器显然没有意识到第一次检索不再相关的事实,并且当数据库返回结果

  • 我有一个火花数据框,有三列,指示原子的位置,即位置