gpt4 book ai didi

java - 向非 Spring 管理对象提供 Spring 管理对象?

转载 作者:行者123 更新时间:2023-12-01 19:24:39 28 4
gpt4 key购买 nike

我有一个数据结构,表示包含数千个配置设置的 CSV 文件。该结构是一个 Java 类文件,带有实例变量来表示文件中的记录(即:HashMap )和文件的状态(错误、警告等)。

这些类不是由 Spring 创建的,因为它们具有状态。我希望该类能够访问当前由 Spring 管理的数据库 DAO 类处理的系统配置属性。通常,当类需要这个 DAO 时,我使用 @Autowired 通过 Spring 注入(inject)它。但是由于我的数据结构不是由Spring管理的,CSV结构类如何访问DAO?

我能想到的唯一方法是从 Spring 托管 bean 创建数据结构以传入 DAO:

CSVDataStruture c = new CSVDataStruture(dao);

最佳答案

参见6.8.1. Using AspectJ to dependency inject domain objects with Spring关于使用@Configurable

另一种方法是获取应用程序上下文(在 Web 应用程序中,这是 WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext))并使用 context.getBean("name"),但这更多的是一种解决方法。

关于java - 向非 Spring 管理对象提供 Spring 管理对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2086203/

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