关于 IOC和spring基本配置详解
Spring 中的两个概念
IOC控制反转(也叫依赖注入DI):
AOP面向切面编程:
控制反转:当某个java对象需要(依赖)另一个java对象是,不是直接创建依赖对象,而是由实现IOC的容器来创建,并将它注入需要这个依赖对象的JAVA对象中;
一、Spring的依赖注入
- 构造器注入
- 设置(set方法)注入
- 接口注入(很少使用)
二、XML装配bean属性的含义
- Id指定该bean的唯一标识
- Class指定该bean的全限定名称
- Name 为该bean指定一个到多个别名
- Autowire 指定该bean属性的装配方式
- no 不使用自动装配,必须通过ref元素指定依赖;
- byname 根据属性名自动装配:过程将检查容器并根据名字查找属性完全一致的bean,并将其属性自动装配(没有property属性)
- bytype 如果容器中存在一个与指定属性类型相同的bean,那么将该属性自动装配;如果存在多个给类型的bean,那么将会抛出异常;(没有property属性)
- constructor:与bytype的方式类似,不同之处在于他应用于构造器参数;如果在容器中没有找到与构造器参数类型一致的bean,那么将抛出异常(没有property属性)
- autodetect:通过bean类的自省机制来决定是使用constructor还是bytype方式进行自动装配;
- scope:指定该bean的生存范围(存活时间)
- single 在一个容器中都存在一个实例,所有对给类型bean的依赖都引用这一单一实例
- property 每次都会重新生成一个新的对象给请求方
- request,session和global session 这三个类型只适用于web程序通常和XMLWEBApplicationContext共同适用
- request 容器会为每个http请求来生成一个对象
- session 为每个session创建一个对象
- global session
- Init-method 指定该bean的初始化方法;destory-method 指定该bean销毁方法
- Abstract 指定该bean是否为抽象的,如果是抽象的,则spring不会为他创建实例
- Parent 使用继承来减少配置工作
关于 IOC和spring基本配置详解的更多相关文章
- spring事务配置详解
一.前言 好几天没有在对spring进行学习了,由于这几天在赶项目,没有什么时间闲下来继续学习,导致spring核心架构详解没有继续下去,在接下来的时间里面,会继续对spring的核心架构在继续进行学 ...
- Spring MVC配置详解(3)
一.Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0) 1. jar包引入 Spring 2.5.6:spring.jar.spring-webmvc.ja ...
- spring MVC配置详解
现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过 ...
- Spring mvc 配置详解
现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过 ...
- spring MVC配置详解(转)
现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过 ...
- 笔记:Spring Boot 配置详解
Spring Boot 针对常用的开发场景提供了一系列自动化配置来减少原本复杂而又几乎很少改动的模板配置内容,但是,我们还是需要了解如何在Spring Boot中修改这些自动化的配置,以应对一些特殊场 ...
- Spring 的配置详解
Bean元素 Spring创建对象的方式 (1)空参构造方式 (2)静态工厂(了解) (3)实例工厂方式 Bean元素进阶 (1)scope属性 a.singleton (2)生命周期属性 Sprin ...
- Spring Boot 配置详解
Spring Boot 针对常用的开发场景提供了一系列自动化配置来减少原本复杂而又几乎很少改动的模板配置内容,但是,我们还是需要了解如何在Spring Boot中修改这些自动化的配置,以应对一些特殊场 ...
- Spring MVC配置详解(1)
web.xml的配置 <!-- 配置前端控制器 前端控制器(DispatcherServlet)--> <servlet> <servlet-name>spring ...
随机推荐
- js基础学习笔记(五)
多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便. 语法: switch(表达式) { case值1: 执行代码块 1 break; case值2: 执行代码 ...
- (并查集)Travel -- hdu -- 5441(2015 ACM/ICPC Asia Regional Changchun Online )
http://acm.hdu.edu.cn/showproblem.php?pid=5441 Travel Time Limit: 1500/1000 MS (Java/Others) Memo ...
- POJ3045 Cow Acrobats 2017-05-11 18:06 31人阅读 评论(0) 收藏
Cow Acrobats Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 4998 Accepted: 1892 Desc ...
- php学习之路-笔记分享20150327
由于公司需要,不得已是php也学习并用了段时间做了两个项目,现也分享出笔记.需要源文档的留下邮箱,.
- ASP.Net C#---Excel导入导入后台方法
https://www.cnblogs.com/chendaye/p/10693983.html 这里写了Excel的导入导入方法, 后台我用的是MVC 以及 C#语句用来在后台做接受和输出数据 / ...
- Xamarin.Forms第三方XAML预览工具-LiveXAML简单体验
截至目前,Xamarin官方的Xaml Previewer工具仍然处于测试阶段,使用中也发现了各种不便,例如各种莫名其妙的渲染失败,或者提示需要编译项目才能渲染等等,复杂项目基本不可用, 完全没有体现 ...
- C# 读取Excel,一波华丽的操作
C# 读取Excel,其实有很多方法.但是今天要来一波华丽的操作. 先看效果: 以上这波操作使用了 ExcelDataReader 和 ExcelDataReader.DataSet 完成的. Exc ...
- C#winfrom最简DBHelp(数据库连接操作)
代码如下: //需引用命名空间 using System.Data; using System.Data.SqlClient; class DBHelper { //定义数据库连接语句,连接语句书写方 ...
- xt
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- mvc基础知识(1)
复制大佬的,侵权请联系我主动删除 1.js/css合并 在之前的crud例子中,我们引入js/css脚本的方式和平常的web开发一样 <script src="~/Scripts/jq ...