入门Spring ioc
简单的来记录一下自己的SSM框架入门--------IOC篇段
ioc(控制反转 -将对象的创建的权利从类型本身来创建,来交给spring工厂来创建)的配置。
<bean>:是可以指spring中bean的一个对象。
class:是实现类的全名,spring中bean工厂会自动根据该类型名字,采用反射机制来得到具体的类的类型
id:bean的名称(对象的名称),作用是:是在应用程序中,得到对象的标识,注意:id在整个spring的配置文件中,必须唯一! 习惯上:id一般是用接口的小写名字,比如你的借口为UserDao 那么你的id可以写为 “userDao”,千万要判断清楚,本人在这上面也出现过类似的错误,控制台也会报空指针异常,提示找不到这个bean对象。
name:与id差不多的作用,可以通用!
并且在ioc中可以使用依赖注入的方法,使用<property>标签将注入setter的名字,例如:setXxx(),名字xxx()===》setUserDao(),名字userDao
======================================================================================
当然在配置文件里写法是这样的:
<bean id ="userService(此处的名字是你要注入的对象:依赖对象,反之被依赖对象就在下面解释了)" class ="包名.类名(也就是你的接口实现类)"
简单解释一下:你要注入的对象里面必须要有一个set方法,用到set方法你就得声明。之前提到的userDao就可以作为被依赖注入对象,在userService方法里面写入 private UserDao userDao;然后自动调出set方法。
例如:<property name = "userDao" ref="userDao">
name填的就是之前解释的被依赖注入对象的名字,也就是之前所解释的东西;
而ref就是要注入具体的bean对象的引用,写被依赖的bean的名字。
简单捋一捋:也就是说我现在有userDao和userService,我把userDao的bean注入给userService。userDao是被注入对象,userService是注入对象,我的工厂里现在有两个bean 一个是id为userDao的,一个是id为userService的。
注意,你的声明必须写在userService的实现类里面,这样才能注入成功。
之后,就在测试类里面验证就可以了
=======================================================
获取工厂
ApplicationContext ac = new ClassPathXmlApplicationContext(你的spring全局配置文件);
然后获取bean对象,使用ac对象调用getBean方法
ac.getBean();
因为返回的是Object类型,所以要强制转换
ac.getBean(); =====》UserService userService = (UserService) ac.getBean("这里是你的依赖对象的bean id");
然后调用你在实现类里写的方法就可以了。
ps:因为是新手,记录自己的学习过程和理解,所以大概只有自己能看懂吧嘿嘿,勿喷,我还是个菜鸡。
入门Spring ioc的更多相关文章
- Spring IoC反转控制的快速入门
* 下载Spring最新开发包 * 复制Spring开发jar包到工程 * 理解IoC反转控制和DI依赖注入 * 编写Spring核心配置文件 * 在程序中读取Spring配置文件,通过Spring框 ...
- Spring框架[一]——spring概念和ioc入门(ioc操作xml配置文件)
Spring概念 spring是开源的轻量级框架(即不需要依赖其他东西,可用直接使用) spring核心主要两部分 aop:面向切面编程,扩展功能不是修改源代码来实现: ioc:控制反转,比如:有一个 ...
- Spring IOC - 控制反转(依赖注入) - 入门案例 - 获取对象的方式 - 别名标签
1. IOC - 控制反转(依赖注入) 所谓的IOC称之为控制反转,简单来说就是将对象的创建的权利及对象的生命周期的管理过程交 由Spring框架来处理,从此在开发过程中不再需要关注对象的创建和生命周 ...
- Spring入门2. IoC中装配Bean
Spring入门2. IoC中装配Bean 20131125 前言: 上一节学习了Spring在JavaProject中的配置,通过配置文件利用BeanFactory和ApplicationConte ...
- Spring入门1. IoC入门实例
Spring入门1. IoC入门实例 Reference:Java EE轻量级解决方案——S2SH 前言: 之前学习过关于Spring的一点知识,曾经因为配置出现问题,而总是被迫放弃学习这些框架技术, ...
- Spring入门及IoC的概念
Spring入门 Spring是一个轻量级的Java开发框架,最早由Robd Johnson创建,目的为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题,它是一个分层的JavaSE/EE轻量级开源 ...
- Spring入门之IOC
IOC/DI: Spring最核心的灵魂,IOC/DI(控制反转/依赖注入)!,这里一定要理解他,理解这个思想.我会细说什么是IOC/DI.他的思想是什么.它带来了那些好处. 进入正题,先说说什么是i ...
- Spring MVC -- Spring框架入门(IoC和DI)
Spring MVC是Spring框架中用于Web应用开发的一个模块.Spring MVC的MVC是Model-View-Controller的缩写.它是一个广泛应用于图像化用户交互开发中的设计模式, ...
- Spring IoC入门
------------------siwuxie095 Spring IoC 环境搭建 1.先下载相关库文件,下载链接 ...
随机推荐
- 使用 requests
基本实例 #利用requests库发送get请求 import requests r = requests.get('http://httpbin.org/get') print(r.text) 利用 ...
- android app内部更新适配到8.0
app 内部跟新是app中必须要有的功能,在app出现改变时,app内部更新能以最快的速度将应用提升到最新版本. 步骤: 1.获取本地app的版本号 int versionCode = 0; try ...
- PHP 多维数组排序 函数怎么保持数字键不被重新索引
/** * 根据数组中的某个键值大小进行排序,仅支持二维数组 * * @param array $array 排序数组 * @param string $key 键值 * @param bool $a ...
- 剑指offer7~10题
斐波那契数列 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项. n<=39 思路:此题用递归会超内存,故直接循环. 代码: class Solution { pub ...
- JavaScript中函数引用调用和函数直接调用的区别
首先看下面的代码: var x = 1 var f1 = function( f ) { var x = 2 ; f( ' console.log( x ) ' ) } var f2 = funct ...
- div介绍 盒子模型边框属性 CSS初始化 文字排版 边框调整 溢出
今天学习的div,了解了div是干什么用的掌握了什么是盒子模型,以及div的外边距内边距以及边框,运用div和CSS给文字排版,利用边框的来做图像,div溢出的处理 CSS初始化: 精确排版的时候用这 ...
- SQL盲注学习
如果数据库运行返回结果时只反馈对错不会返回数据库当中的信息 此时可以采用逻辑判断是否正确的盲注来获取信息 盲注是不能通过直接显示的途径来获取数据库数据的方法 1.布尔盲注 2.时间盲注 3.报错型盲注 ...
- Taskctl安装及配置Kettle插件
服务端安装 从官网下载服务端安装包(含字符客户端/代理组件) 1.环境变量设置 在fedora的终端下,输入sudo vi /etc/profile,将以下语句添加至文末 export TASKCTL ...
- 【druid 】数据库连接池
一.数据库连接池架构 二.数据库连接池的过滤器 spi的思想,加载配置文件的Filter druid.filters.default=com.alibaba.druid.filter.stat.Sta ...
- python-闭包函数
在函数编程中经常用到闭包.闭包是什么,它是怎么产生的及用来解决什么问题呢.给出字面的定义先:闭包是由函数及其相关的引用环境组合而成的实体(即:闭包=函数+引用环境)(想想Erlang的外层函数传入一个 ...