spring-bean相关内容

静态变量与单例

我正在制作Java REST应用程序.我想知道我应该如何实现我的服务-我应该为整个应用程序使用静态服务变量还是像在Spring MVC中那样使服务成为单例.在应用期间,单例对象和仅初始化一次对象之间有什么区别吗? 解决方案 我应该在整个应用程序中使用静态服务变量,还是将服务设为单例 这取决于.您必须问自己两个问题才能得出答案: 静态变量存储在哪里? 您有2个选项: ..
发布时间:2021-04-30 19:25:59 Java开发

@Lazy批注和< bean />的lazy-init属性有什么区别?标签?

据我了解,标签的@Lazy批注和lazy-init属性应具有相同的功能。但是,当我开发以下代码时,它表现出独特的行为。 在以下代码中,我期望:-(循环依赖项错误) org.springframework.beans.factory.BeanCurrentlyInCreationException 我已经使用@Lazy注释附加了代码,按照我的期望,它不应允许循环依赖。 @组件 ..

为什么即使bean无法实例化,Spring仍然继续初始化上下文?

在初始上下文加载期间,我在实例化bean时发现了一个奇怪的spring行为.我有一个可加载大型ML模型的bean.由于内存不足,Bean无法实例化抛出Java OutOfMemoryError Java堆空间异常. 但这不会阻止应用程序实例化,而是会继续加载应用程序. 为什么会这样?这是预期的吗? 检查弹簧AbstractAutowireCapableBeanFactory, t ..
发布时间:2020-09-15 02:00:35 Java开发

如何将@Value定义为可选

我在Spring bean中具有以下内容: @Value("${myValue}") private String value; 该值已正确注入.但是,该变量必须是可选的,它作为命令行参数传递(然后使用 SimpleCommandLinePropertySource 添加到Spring上下文),并且该参数不会总是存在. 为了提供默认值,我尝试了以下两种方法: @Value(" ..
发布时间:2020-07-09 01:44:27 其他开发

JavaBean和Spring bean之间的区别

我是Spring MVC的新手,并且对Java中Java Bean的使用有所了解. Java bean和Spring bean之间的基本区别是什么? 解决方案 JavaBeans: 从根本上讲,JavaBeans只是遵守某些编码约定的Java类.具体来说, 具有public默认(无参数)构造函数 允许使用访问器(getter和setter)方法访问其属性 实现java ..
发布时间:2020-07-09 00:19:18 Java开发

作为bean动态添加新的队列,绑定和交换

我目前正在研究Rabbit-amqp实施项目,并使用spring-rabbit以编程方式设置我所有的队列,绑定和交换. (spring-rabbit-1.3.4和spring-framework版本3.2.0) 在我看来,javaconfiguration类或基于xml的配置中的声明都非常静态.我知道如何为队列设置更动态的值(例如名称),交换 或像这样绑定: @Configuratio ..
发布时间:2020-07-08 23:53:24 其他开发

有没有一种方法@Autowire需要构造函数参数的bean?

我正在使用Spring 3.0.5,并为类成员尽可能多地使用@Autowire注释.我需要自动装配的bean之一需要其构造函数的参数.我已经浏览过Spring文档,但似乎找不到任何有关如何注释构造函数参数的参考. 在XML中,我可以将其用作bean定义的一部分. @Autowire注释是否有类似的机制? 例如: @Component public class MyConstruc ..

如何使用数据库中的属性重新加载配置Bean

我需要为每个发送的邮件创建一个spring javamail bean,并使用数据库中的值进行初始化.根据本文,如何加载应用程序属性来自数据库 我已将PropertyPlaceholderConfigurer配置为从属性文件和数据库中加载值.我的java配置类中有以下bean(mailSender),用于从应用程序发送邮件,该应用程序从数据库加载主机,端口,用户名和密码, @Confi ..
发布时间:2020-06-27 18:37:36 Java开发

如何重新初始化Spring Bean?

是否可以在运行时重新初始化Spring Bean? 我的Bean使用静态设置,在某些情况下会更改,然后我必须重新初始化Bean. 解决方案 在弹簧上下文中,您有三种选择来更新单例bean,您可以选择一种适合您的用例: 在Bean中重新加载方法 在您的bean中创建一个方法,该方法将更新/重新加载其属性.根据触发器,从spring上下文访问Bean,然后调用reload方法更新 ..
发布时间:2020-06-26 21:36:40 Java开发

SpringBoot-BeanDefinitionOverrideException:无效的Bean定义

我正在尝试使用Spring Boot在本地设置DynamoDB。最初,我开始进行设置,并且能够通过存储库将其写入/保存到DynamoDB。从那时起,我添加了更多类来构建我的应用程序。现在,当我尝试启动应用程序时,出现以下异常: org.springframework.beans.factory .support.BeanDefinitionOverrideException:名称为'agen ..
发布时间:2020-06-04 00:12:34 Java开发

如何使UserDetailsManager可以作为Bean使用

我正在尝试使用spring-security进行身份验证,并希望能够在运行时添加用户.我认为使用UserDetailsManager会带来最小的干扰. 如何使它作为Bean可用,以便可以在控制器和其他对象中访问它? 我最初使用的代码如下: @Autowired public void configureGlobal(AuthenticationManagerBuilder auth, ..
发布时间:2020-05-03 10:08:28 Java开发