网站首页 > java教程 正文
由于可以混合使用基于构造函数和基于 setter 的 DI,因此最好的经验是使用构造函数来实现强制依赖项,并使用 setter 方法或配置方法来实现可选依赖项。请注意,在 setter 方法上使用 @Autowired 注释可以使该属性成为必需的依赖项;然而,带有编程验证参数的构造函数注入是更好的选择。
Spring 团队通常提倡构造函数注入,因为它允许您将应用程序组件实现为不可变对象,并确保所需的依赖项不为 null。此外,构造函数注入的组件始终以完全初始化的状态返回给客户端(调用)代码。
在 Spring 中我们可以通过多少种方式定义配置?
我们可以通过两种方式做到这一点:
1.基于 XML 的配置:让 bean 定义跨越多个 XML 文件会很有用。通常,每个单独的 XML 配置文件代表体系结构中的一个逻辑层或模块。
2.基于Java 的配置:使用Java 而不是XML 文件来定义应用程序类外部的bean。要使用这些功能,请参阅@Configuration、@Bean、@Import 和@DependsOn 注释。
猜你喜欢
- 2024-10-17 Java|剖析类内的五类成员:属性、方法、构造器、代码块、内部类
- 2024-10-17 C++|构造、析构、成员(静态、非静态)函数、友元、全局函数
- 2024-10-17 JavaScript构造函数和原型:构造函数和原型 原创
- 2024-10-17 灵魂拷问:创建 Java 字符串,用""还是构造函数
- 2024-10-17 dart系列之:dart类中的构造函数(dart命名构造函数)
- 2024-10-17 「php」construct() 函数介绍与使用方法详解
- 2024-10-17 为什么不允许使用 Java 静态构造函数?
- 2024-10-17 关于构造函数的Java面试问题(关于构造函数的java面试问题有哪些)
- 2024-10-17 编程语言Java如何创建对象,看完秒懂
- 2024-10-17 【教3妹学编程-java】详解父子类变量、代码块、构造函数执行顺序
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)