问题标签 [autowired]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
46245 浏览

hibernate - Spring+Hibernate,Autowire sessionFactory 到 hibernate DAO

我有一个Hibernate DAO,根据Hibernate API 3Spring 3.x,我只使用 asessionFactory不是HibernateDaoSupport+ getHibernateTemplate()- 我希望这是一个不错的选择...... -

现在我的目标是sessionFactory使用注释自动装配到我的 DAO 中。

在我的spring.xml我有这个:

在数据包里面我有我所有的 DAO 和服务类。

这是我的简单HibernateDao

spring.xml我在加载过程中没有错误,但sessionFactory仍然是null.

我必须做什么?

编辑

这是我的sessionFactory声明spring.xml

EDIT2 现在sessionFactory不为空,但我有另一种例外:

也许意味着它找不到PersonHDAObean?

谢谢大家。

0 投票
1 回答
653 浏览

java - 我将如何自动装配速度模板?

我有一个需要使用的静态速度模板,所以我想知道是否可以自动装配它而不是这样做:

谢谢

0 投票
1 回答
2859 浏览

java - Spring JUnit4 手动/自动接线的困境

我遇到了一个问题,只能用我对 Spring 的 IoC 容器设施和上下文设置的基本缺乏理解来解释,所以我会要求对此进行澄清。

仅供参考,我正在维护的应用程序具有以下技术堆栈:

  • Java 1.6
  • 春天 2.5.6
  • RichFaces 3.3.1-GA 用户界面
  • Spring 框架用于 bean 管理,Spring JDBC 模块用于 DAO 支持
  • Maven 用作构建管理器
  • JUnit 4.4 现在作为测试引擎引入

我正在追溯(原文如此!)为应用程序编写 JUnit 测试,令我惊讶的是,我无法通过使用 setter 注入将 bean 注入测试类而不诉诸 @Autowire 表示法。

让我提供设置示例和随附的配置文件。

测试类TypeTest非常简单:

其上下文定义在TestStackOverflowExample-context.xml

TestContext.properties位于类路径中,仅包含数据源所需的特定于 db 的数据。

这就像一个魅力,但我的问题是 - 为什么当我尝试手动连接 bean 并执行 setter 注入时它不起作用,如下所示:

我在这里想念什么?这里配置的哪一部分是错误的?当我尝试通过设置器手动注入 bean 时,测试失败,因为这部分

在运行时被解析为 null。当然,我查阅了 Spring 参考手册并尝试了各种 XML 配置组合;我所能得出的结论是,Spring 无法注入 bean,因为它以某种方式无法正确取消引用 Spring Test Context 引用,但是通过使用 @Autowired,这会“自动”发生,我真的不明白为什么会这样,因为Autowired注释及其的JavaDocPostProcessor类没有提到这一点。

@Autowired另外值得添加的是仅在应用程序中使用的事实。在其他地方只执行手动接线,所以这也带来了一个问题 - 为什么在我的测试中它在那里工作而不是在这里工作?我缺少 DI 配置的哪一部分?如何@Autowired获取 Spring Context 的引用?

编辑:我也试过这个,但结果相同:

也许还有其他想法?

EDIT2:我找到了一种方法,而无需编写自己的TestContextListenerBeanPostProcessor. 这出人意料地简单,事实证明我在上一次编辑时走在了正确的轨道上:

1)基于构造函数的上下文解析:

2)通过实现ApplicationContextAware接口:

这两种方法都正确地实例化了 bean。

0 投票
2 回答
10018 浏览

java - Servlet 中的 Spring @Autowired

我在我的应用程序中使用带有加载时间编织的 Spring 框架(2.5.4),并且在任何地方(在 Spring bean 中,在非 Spring 实体中)一切正常,除非我尝试在注释为 @Configurable 的 servlet 中自动装配字段,然后我得到一个很好的 NullPointerException ......



关于我做错了什么有什么建议吗?

谢谢。

0 投票
2 回答
365 浏览

spring - Spring:对象未自动装配,在另一个类中工作正常

我正在创建一个实用程序类,但问题是服务类没有被自动装配。autowired 类也在其他地方使用,所以我只是复制了 autowire 代码。并且正在扫描包裹。

有谁知道为什么尽管这个 z 仍然为空?

0 投票
3 回答
3482 浏览

spring - Spring:将 bean 的属性(参考其他 bean)定义为可选

有两个bean定义:

文件 a.xml

文件 b.xml

在某些情况下,文件 b.xml 不包含 bean
B 的定义。另一方面,文件 a.xml 始终包含指向 B 定义的链接。

如何定义对 B bean 的引用是可选的,以避免org.springframework.beans.factory.NoSuchBeanDefinitionException

0 投票
7 回答
59203 浏览

spring - 弹簧@Autowired 不工作

我对自动装配注释有一些问题。我的应用程序如下所示:

这是控制器:

这是一个服务层:

和 DAO 层:

这是一个 app-service.xml 文件:

所以......当我启动一个网络应用程序时,MyController Autowires 正确(由 SomeServiceImpl 类对象正确注入的 someService 字段),但 someService 的 myDAO 字段具有空值(未正确注入)。

你能帮我找出问题吗?

PS 这很有趣,但是当我将“bean id”从 myDAO 更改为另一个(例如 myDAO2)时,系统给了我一个错误,无法完成注入,因为 bean myDAO 不存在。那么,Spring 进行了一次注入,但是它在哪里呢?为什么它不能正常工作?

0 投票
2 回答
15589 浏览

java - spring-nullpointerexception-无法访问无注释类中的自动装配注释服务(或 dao)

我有这个我无法解决的问题。

从我的@Controller,我可以轻松地访问我的自动连线@Service课程并毫无问题地使用它。但是当我从一个没有注释的单独类中执行此操作时,它给了我一个NullPointerException.

我的控制器(工作)-

我单独的 Java 类(不工作)-

或者

userService 或 userDao 始终为空!只是在尝试其中任何一个是否有效。

我的组件扫描设置具有用于扫描的根级别包设置,因此应该没问题。

我的 servlet 上下文 -

有什么线索吗?

0 投票
5 回答
39725 浏览

spring - 是否可以使用注释连接 Spring MVC 拦截器?

是否可以使用注释连接 Spring MVC 拦截器,如果可以的话,有人可以为我提供一个如何这样做的示例吗?

通过注释通过电汇我指的是在 XML 配置中做的尽可能少。例如,在我在http://www.vaannila.com/spring/spring-interceptors.html找到的这个配置文件中;

你可以在那里逃脱多少配置?我想 an@Autowired会消除在第 2 行显式声明 bean 的需要,但是是否有可能用注释摆脱第 1 行?

0 投票
2 回答
2008 浏览

spring - 将 Proguard 与按名称使用 Spring @Autowired 的库一起使用

我正在使用 Proguard 来混淆具有多个 @Autowired 字段的库。混淆器正在重命名这些类字段(因为它们是类的私有/内部),因此我的 bean 无法实例化。

预混淆:

后混淆:

现在可能有很多方法可以使这些特定字段不自动连接,但我希望找到一种方法来告诉 Proguard 不要混淆任何带有重要 Spring-isms 注释的内部字段(@Autowired 等) .

任何人都知道我通常如何做到这一点?

授予