Spring IOC:实例解析与优缺点探讨

需积分: 13 0 下载量 171 浏览量 更新于2024-07-17 收藏 430KB PDF 举报
本文以一个生动的比喻——寻找对象的方式,深入浅出地讲述了Spring IoC(Inversion of Control,控制反转)的概念。IoC是面向对象编程中的一个重要设计模式,它提倡将对象的创建和管理职责从应用程序代码转移到外部容器,从而实现低耦合、解耦和灵活性。 在IoC的基本概念中,它强调的是改变系统组件之间的关系,而不是依赖于它们的具体实现。这种模式鼓励组件之间通过接口进行通信,而不是直接实例化和操作对方,从而降低了系统的复杂性和维护成本。这与Java中的"好莱坞原则"(Don't call us, we'll call you)相吻合,即组件间的交互通过约定而非硬编码实现。 文中提到的"青梅竹马"和"媒妁之言"分别对应于传统的编程方式,程序员自己负责对象的创建和配置,而Spring IoC则更像"婚姻媒介",它充当了对象实例化的中间者,根据应用的需求动态地提供合适的对象实例。这种方式减少了代码中对具体对象的硬编码,使得在需求变化时更加容易调整和扩展。 Spring IoC的优点主要体现在以下几个方面: 1. 低耦合:由于依赖注入,应用程序与具体实现解耦,使得改动一处不牵动全局。 2. 时间和空间的对称美:程序员不再需要在代码中频繁创建和销毁对象,体现了优雅的编程风格。 3. 灵活性和可扩展性:易于添加或替换组件,适应不同的业务场景。 然而,IoC也有其缺点: 1. 依赖于IoC容器:过度依赖IoC框架可能导致对框架的过度依赖,增加学习曲线。 2. 可能引入额外的复杂性:虽然解决了耦合问题,但容器的管理和配置也增加了系统复杂性,尤其是在大型项目中。 Spring IoC是一种强大的工具,它简化了对象的创建和管理,提升了代码的可读性和可维护性,但也需要开发者明智地使用,避免引入不必要的复杂性。通过婚姻媒介的例子,读者可以更好地理解Spring IoC的工作原理及其在实际开发中的应用。
2019-04-22 上传
1、安装maven 2、eclipse安装m2eclipse插件 打开Eclipse菜单栏Help->Eclipse Marketplace 输入“Maven”搜索到插件Maven Integration for Eclipse 并点击insall安装 3、安装成成之后我们在Eclipse菜单栏中点击File->New->Other 在弹出的对话框中点击Maven文件夹 点击Maven Project,并点击Next,到下一个对话框是默认设置,继续点击Next到下面这一步 选择maven-archetype-quickstart,点击Next 4、配置pom.xml , 加上以下依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${springframework.version}</version> </dependency> propertities标签里面加上version信息: <springframework.version>3.2.0.RELEASE</springframework.version> 保存pom.xml后等待下载组件。 5、写代码 如果发现出现applicationContext could not resolve to a type, 可能是依赖没下载完或者下载失败,或者jar包出现问题,解决方法删除这个jar包,然后重新下载。在Eclipse中选中项目右键展开run as,然后选中maven install,重新下载jar包。 https://blog.csdn.net/linxc008/article/details/81054526 applicationContext.xml要加在src/java/resources下 6.bulid project 右击项目,点击Run as, 选择Maven build... , 在弹出的窗口中的Goals栏填上Maven命令:clean package,然后点击Run.然后在有main函数的java文件上右键点击Run As Java Application 注: applicationContext.xml 配置bean信息所依赖的class路径要一致且大小写敏感,否则运行时会出现java.lang.NoClassDefFoundError (wrong name)。 https://blog.csdn.net/my_bkn/article/details/6875481