草庐IT

Bean注解

全部标签

java - 同一个类上注解Entity和Component是不是错了

将来自spring@Component和JPA@Entity的注释放在同一个类上是错误的想法吗?为什么需要它是在JSF页面上使用这个类,它还描述了表结构。原因是为了避免将实体对象映射到将成为表示层的某个值对象。这是一些反模式吗?你有更好的解决方案吗? 最佳答案 Isitwrongideatoputannotationfromspring@ComponentandJPA@Entityonthesameclass.这是Controller和模型的紧耦合。WhyItisneededistousethisclassonJSFpageanda

java - 为什么java注解属性有限制?

我注意到如果我创建注释:public@interfaceNullableTypeOverride{NullableTypehibernateTypeOverride();}我对注释属性的选择有限。上面的代码将不起作用,因为注释只采用原始类型、String或Class类型作为它们的属性。所以在这种情况下我不能像这样使用这个注解:@NullableTypeOverride(hibernateTypeOverride=Hibernate.INTEGER)privateLongdistance;我的猜测是它与编译时间和运行时间有关,但我不完全确定。那么这个限制的原因是什么?我该如何解决?

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 - java注解在java字节码中是如何表示的

我试图反编译包含JUnit测试的.class文件。我读了字节码,但我没有看到任何@Test注解的线索(它在java源代码中使用)。作为元数据,注释在字节码中是如何表示的? 最佳答案 注解出现在它所关联的事物的字节码之前。如果您没有看到注释,它可能是一个旧的反编译器(大多数是) 关于java-java注解在java字节码中是如何表示的,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/

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

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

java - 使用Spring注解自动应用Hibernate Interceptor?

在我的服务类中,我需要可用的hibernatesession。我目前在beans.xml中这样做:com.app.dao.UserDaohibernateInterceptor...(手抄,可能有错别字..)我正在转向在XML上使用注释,我想知道是否有一种方法可以像我上面那样使用它们来配置代理,包括hibernate拦截器?如果没有-有没有一种方法可以减少XML的数量(大约7个DAO会使它变得非常困惑) 最佳答案 好吧,我们走吧。你说IammovingtousingannotationsoverXML如下启用一个方面packageb

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

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