java 什么时候依赖注入,java – 何时以及何时不使用IOC /依赖注入?

我正在使用几个Spring MVC Web应用程序,我使用getter / setter依赖注入并在app-servlet.xml文件中配置我的所有bean.

我相信我遵循惯例,我将大部分属性和bean注入我的控制器bean,例如我的DAO和我在applicationContext.xml或app-servlet.xml中指定的其他bean

随着我的应用程序变得越来越复杂和越来越大,这些文件中的bean已经填满了更多正在注入的属性.

我的问题是,行在哪里,或者应该注入什么的约定,以及应该在控制器中指定为实例字段/变量的内容.

如果我要在实际控制器中指定字段的值,或者如果我要将值注入到控制器bean中,有时我会面临一种情况.

例如,我正在使用速度模板库来发送我的电子邮件.我的Velocity模板的目录有一条路径.我面临着以下其中一项.

在我的控制器中,我可以指定值

private String basePath = "/path/to/velocity/templates";

或者在我的Controller bean中,我可以将相同的值注入该控制器

在我的班上,我会得到这个注入值的getter / setter.

我不知道在哪里划线.

解决方法:

我通常注入基于:

>我是否需要根据环境/部署更改此值(例如,使用PropertyPlaceholderConfiguration).

>我是否需要嘲笑某些东西进行测试.

>将来是否有其他人可能会使用此课程,并希望执行上述任何一项课程.

如果你不小心,那么你的配置可以成为大量的注入属性(我更喜欢使用构造函数参数,所以我可以保证正确的实例化,但这是另一个故事).上述指南在限制注射次数的同时可以灵活地进行.

标签:java,dependency-injection,spring

来源: https://codeday.me/bug/20190717/1483864.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值