问题标签 [setter-injection]

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 投票
1 回答
240 浏览

asp.net-mvc-5 - 在我的 MVC5 控制器中使用 StructureMap[4.7.0] Setter 注入

我正在尝试将IApplicationConfigurationSection实现注入这个 MVC5 Controller,这样我就可以在我web.config的所有视图中从我的自定义部分访问一些信息(各种字符串):

我想使用 setter 注入,这样我就不必将派生的Controller构造函数与他们并不真正关心的参数混在一起。

注意如果有更好的方法来注入基类依赖项,请告诉我。我承认我在这里可能没有走上正轨

在我Global.asax加载我的 StructureMap 配置:

我的StructureMapConfig班级加载我的注册表:

我的 MvcRegistry 提供了 StructureMap 的映射:

我也“举起手来”并尝试使用[SetterProperty]BaseController 上的属性 - 该技术也失败了。


尽管我尽最大努力寻找解决方案,但AppConfig我的控制器构造函数中的属性始终是null. 我以为

会做的伎俩,但它没有。

我发现如果我放弃 setter 注入并使用构造函数注入,它会像宣传的那样工作。我仍然想知道我哪里出错了,但我想强调我不是 StructureMap 大师 -可能有更好的方法来避免构造函数注入我的基类依赖项。如果你知道我应该怎么做,但不是,请分享。

0 投票
1 回答
465 浏览

spring - 如何在 Kotlin 和 Spring 中使用 setter 注入?

我目前正在尝试弄清楚如何将 Spring 的 setter 注入与 Kotlin 一起使用。我不能为此使用构造函数注入,因为 Bean 可能为空,并且我不想使用字段注入,因为它是最糟糕的。显而易见的写作方式

无法工作,因为这将导致循环调用。那么如何使用 setter 注入自动装配成员呢?

0 投票
1 回答
7305 浏览

java - 如何修复“使用类路径资源中定义的名称创建 bean 时出错”?

我参加了一个 bean 课程,在这个课程中我学习了一个内部 bean。我已经在配置文件中配置了它们。但是当我试图运行我的 Java 应用程序时,它抛出异常说“在类路径资源 [spconfig.xml] 中定义名称为 'id1' 的 bean 创建错误:设置属性值时出错;嵌套异常是 org.springframework.beans .NotWritablePropertyException:bean 类 [SampleBean] 的无效属性 'db':Bean 属性 'db' 不可写或具有无效的 setter 方法。您的意思是 'DB'?为什么我不欢迎内豆?该怎么办?

在配置文件中正确定义的属性。

0 投票
1 回答
148 浏览

java - 允许 Simpleflatmapper 忽略构造函数并仅使用 setter

以下映射器配置工作正常(MyPojo 没有其他构造函数)

但就我而言,MyPojo 是一个遗留类,并带有一大堆构造函数:

这会导致映射器无法工作。我收到以下错误:

很明显,映射器正试图寻找一个参数与 SELECT 子句中的每个列匹配的构造函数。我不想添加重载的构造函数(SELECT 列列表很大)。

如何设置映射器来调用设置器而不是构造器?

0 投票
2 回答
78 浏览

java - 如何注入 Set在 Setter 注入中使用基于注释的配置?

我正在做一个简单的 Spring Core 项目。正如我们所知,要使用 Spring Core,我们需要向 IoC 容器提供一些配置元数据,并且配置元数据可以以 3 种形式提供。来源在这里

  1. 基于 XML 的配置
  2. 基于 Java 的配置
  3. 基于注解的配置

让我们考虑一个例子。我有一堂课Team

正如我们所见,它有 2 个属性,我们想通过使用Setter Injection. 我们可以通过使用XML-based configurationas 来做到这一点:

我们也可以使用Java-based configurationas 来做到这一点:

现在的问题是我们如何通过使用来做到这一点Annotation-based configuration

在基于注解的配置中,我们通常使用原型注解,如@Component, @Service, @Controller, @Repository

0 投票
0 回答
15 浏览

properties - 使用 StructureMap 在所有派生类中设置接口属性

我在我的项目中定义了以下接口:

如何在使用 StructureMapQusetionDelegate实现以下代码的所有类中设置属性?IInteractiveValidator

更新(问题解决)

我找到了这个Steven答案并使用它: