入门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.先下载相关库文件,下载链接 ...
随机推荐
- 上传文件代码报错,java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
2018-09-11 11:11:08.235 ERROR 14352 --- [nio-8080-exec-5] o.a.c.c.C.[.[.[/].[dispatcherServlet] : ...
- ECDSA host key for 192.168.0.101 has changed and you have requested strict checking.
原文地址:http://blog.csdn.net/ausboyue/article/details/52775281 Linux SSH命令错误:ECDSA host key "ip地址& ...
- 如何配置Tomcat以使用Apache httpd?
How to Connect Tomcat 6 to Apache HTTP Server 2 Tomcat can be run as a standalone server. Tomcat can ...
- Gym101889J. Jumping frog(合数分解+环形dp预处理)
比赛链接:传送门 题目大意: 一只青蛙在长度为N的字符串上跳跃,“R”可以跳上去,“P”不可以跳上去. 字符串是环形的,N-1和0相连. 青蛙的跳跃距离K的取值范围是[1, N-1],选定K之后不可改 ...
- 利用Python代码编写计算器小程序
import tkinter import tkinter.messagebox import math class JSQ: def __init__(self): #创建主界面 self.root ...
- nginx uwsgi django 配置
用django框架,uwsgi服务器作为动态服务器,nginx作为静态资源服务器 配置uWSGI,在项目目录下创建uwsgi.ini文件: [uwsgi] #使用nginx连接时使用 socket=1 ...
- 随笔:关于Class.getSimpleName()
最近学习过程中,遇到了Class.getSimpleName()这个方法,就搜索了一些资料: API定义: Class.getName():以String的形式,返回Class对象的"实体& ...
- JDK新特性之可变个数的形参的方法
可变个数的形参的方法:1.格式:对于方法的形参来说:数据类型...形参名2.可变个数的形参的方法与同名的方法之间可以构成重载3.可变个数的形参在调用时,个数从0开始,到无穷都可以(在调用这个方法时,s ...
- nodejs-- vuex中mapActions
mapActions() 返回的是一个对象, 用了 ... 扩展符后,才可以放进一个对象里,和其他组件内定义的 method 在同一个 methods 对象. { methods: mapAction ...
- myBatis---接口代理开发(demo)
一.概述 使用接口代理开发,可以不用写接口的实现类,而采用的是MapperFactoryBean代理的实现类. * 接口代理方式开发,遵循四大原则 * 1.方法名 == mapper.xml的id名 ...