草庐IT

bean-validation

全部标签

java - 手动添加约束冲突

是否可以手动添加约束冲突?例如://validatecustomer(usingvalidationannotations)Set>violations=validator.validate(customer);if(someSpecialCase){violations.add(..)}问题是add方法接受ConstraintViolation接口(interface),但javax.validation包不包含可以使用的实现程序。有什么想法吗? 最佳答案 简短的回答是:“不,没有办法手动添加约束违规”。详细一点。正如你所说,所有

java - Spring 环境中的多个@ConfigurationProperties validator bean

使用@ConfigurationProperties时注释将属性注入(inject)到bean中,Spring提供了定义自定义validator来验证这些属性的能力。ConfigurationPropertiesBindingPostProcessor使用固定的bean名称查找此validator"configurationPropertiesValidator"和类org.springframework.validation.Validator.现在假设我有一个@ConfigurationProperties其validator在模块A中。另一个模块B依赖于模块A。模块B还定义了自己

java - Spring-boot:需要一个名为 'entityManagerFactory' 的 bean,但找不到

我正在使用JPA开发SpringBoot应用程序并遇到此错误。我不确定我使用的是正确的注释还是缺少依赖项。任何帮助将不胜感激。这是错误信息1:05:28AM:Executingexternaltask'bootRun'...:compileJava:processResourcesUP-TO-DATE:classes:findMainClass:bootRun01:05:35.198[main]DEBUGorg.springframework.boot.devtools.settings.DevToolsSettings-Includedpatternsforrestart:[]01:

java - 如何从单例 spring bean 内部访问 ServletRequest?

我有一个单例springbean,它被调用以响应某些客户端操作。我希望捕获有关客户端的一些信息(特别是IP地址)。我假设此信息的最佳来源是请求对象。我如何从我的bean中获取对请求对象的访问权?如果这是一个显而易见的问题,请原谅我,我是Spring的新手。我试过一件事没有成功。:((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest().getRemoteAddr();但是由于currentRequestAttributes中的IllegalStateException

java - 有没有办法向 Spring 指定一个 bean 应该在初始化时使用然后立即丢弃?

我很想知道是否有一个接口(interface)可以用来告诉Spring启动一个特定的bean,调用它的初始化过程(通过afterPropertiesSet()作为InitializingBean,或者通过init-method,或者其他方式),然后将其丢弃。我的用例是一个简单的“完整性检查器”,它将在Web应用程序启动时检查数据库中的有效值。尽管对于我们特定的bean来说开销很小,但是将那个bean永远保留在应用程序上下文中是没有意义的,因为一旦bean初始化,就不再需要它了。我确信这种行为还有其他用例,但我在Spring中还没有发现类似的东西。特别是,我在Spring的Java变体中

java - JSF 2.0 : Why my ViewScope Beans is re-created even though still on same View

这个问题在这里已经有了答案:@ViewScopedcalls@PostConstructoneverypostbackrequest(1个回答)关闭6年前。在我的.xhtml页面中,我有以下形式:......CustomerTemplate.xhtml是:...//importcss,jsfiles...//Otherthingsonthepage...这是我的ManagedBean:@ManagedBean@ViewScopedpublicclassMrBean{...privateListitems;...@PostConstructpublicvoidprepareItemLis

java - 如何通过 BeanManager 创建和销毁 CDI (Weld) Managed Beans?

我正在尝试使用BeanManager而不是Instance.select().get()创建CDI托管bean的实例。这被建议作为解决我一直遇到的ApplicationScopedbean及其依赖项的垃圾收集问题的解决方法-请参阅CDIApplicationandDependentscopescanconspiretoimpactgarbagecollection?对于背景和这个建议的解决方法。如果您在ApplicationScopedbean上使用Instance编程查找方法,则Instance对象和您从中获得的任何bean最终都依赖于ApplicationScopedbean,因此

java - 如何测试在 java 中实现 ConstraintValidator 的 validator ?

我有一个“AllowedValuesValidator.java”类:publicclassAllowedValuesValidatorimplementsConstraintValidator{String[]values;StringdefaultValue;@Overridepublicvoidinitialize(AllowedValuesconstraintAnnotation){values=constraintAnnotation.allowedValues();defaultValue=constraintAnnotation.defaultValue();}@Over

想进阿里?先搞懂Spring Bean的循环依赖!

引言嗨,小伙伴们!我是小米,你们的技术分享小助手!今天我们要聊的话题可是技术圈内颇为热门的“阿里巴巴面试题:Spring的循环依赖”哦!相信很多小伙伴都会在技术面试中遇到类似的问题,没错,循环依赖是一个挑战性很高的问题,但是只要你掌握了相关知识,就能够游刃有余地解决它。那么,让我们一起来深入了解一下吧!图片什么是循环依赖?循环依赖,作为软件开发中常见的问题之一,指的是两个或多个组件之间形成了相互依赖的关系,最终形成一个循环。在编程领域中,这种情况可能会导致程序运行时出现一系列难以预料的问题,比如死锁、无限递归等。循环依赖通常出现在对象之间相互引用的场景中。举个简单的例子,假设有两个类A和B,A

java - 如何抑制日志消息 'Returning cached instance of singleton bean'?

如何在Spring/Java中抑制“返回单例bean的缓存实例”日志消息?某处对此有很好的引用吗?谢谢。 最佳答案 “正在返回缓存的单例bean实例”消息由Spring在DEBUG级别记录(由AbstractBeanFactory)。Spring按照设计在DEBUG级别记录大量消息。如果您在这个级别查看您的日志文件,那么它们总是会充满日志噪音,因为Spring正在做它的事情。您不能使用log4j抑制特定消息,您能做的最好的事情就是抑制特定记录器。但是,除非您正在调试,否则在DEBUG级别查看日志并不是一个好主意,当您正在寻找有关Sp