Spring学习(一)IOC


Spring是一站式框架:
(1)Spring在javaee三层结构中,每一层都提供不同的解决技术。
web层:SpringMVC
service层:Spring的Ioc
dao层:Spring的JDBCTemplate
Spring版本:Spring4.X hibernate5.x structs2.x
1、IoC(把对象的创建不是new方式实现,而是交给Spring配置创建类对象)
Spring实现了IoC(Inversion of Control:控制反转)功能:它将类与类之间的依赖从代码中脱离出来,用配置的方式进行依赖关系描述,由IoC容器负责依赖类之间的创建、拼接、管理、获取等工作。BeanFactory接口是Spring框架的核心接口,它实现了容器许多核心的功能。
Ioc操作:
1、把对象的创建交给Spring进行管理
2、IOC操作部分:
(1)Ioc配置文件
(2)Ioc的注解方式
Ioc底层原理:
1、ioc底层原理技术
(1)xml配置文件
(2)dom4j解决xml
(3)工厂设计模式
(4)反射
Ioc底层原理:


Spring 的Ioc入门案例:
第一步:导入jar包
下载jar包:http://repo.springsource.org/libs-release-local/org/springframework/spring/4.2.4.RELEASE/spring-framework-4.2.4.RELEASE-dist.zip
jar特点:每个都有3个jar包


1、只需要这四个jar包:

2、还需要导入支持输出日志的jar包

第二步:创建类,在类中创建方法
package cn.itcast.ioc;
public class User {
public void add(){
System.out.println("add.......");
}
public static void main(String[] args) {
//原始方法
User user=new User();
user.add();
//交给Spring
}
}
第三步:创建Spring配置文件,配置创建类
(1)Spring核心配置文件名称和位置不是固定的
建议放到src下面,官方建议名称为applicationContext.xml
(2)引入schema约束
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
(3)配置对象
<bean id="user" class="cn.itcast.ioc.User"></bean>
第四步:写代码测试创建对象

Context模块构建与核心模块之上,扩展了BeanFactory的功能,添加了il8n国际化、Bean生命周期控制、事件框架体系、资源加载透明化等多项功能。此外该模块还提供了许多企业级服务的支持,如邮件服务、任务调度、JNDI获取、EJB集成、远程访问等。ApplicationContext是Context模块的核心接口。
表达式语言模块是统一表达式语言的一个扩展,该表达式语言用于查询和管理运行期的对象,支持设置/获取对象属性,调用对象方法、操作数组、集合等。此外,该模块还提供了逻辑表达式运算、变量定义等功能,可以方便的通过表达式串和Spring Ioc容器进行交互。
2、AOP(面向切面编程:扩展功能不需要修改源代码)
AOP 是继OOP之后,对编程设计思想影响极大的技术之一,AOP是进行横切逻辑编程的思想,它开拓了考虑问题的思路。在AOP模块里,Spring提供了满足AOP Alliance规范的实现,还整合了AspectJ这种AOP语言级的框架。在Spring里实现AOP编程有众多的选职。
3、数据访问和集成
Spring学习(一)IOC的更多相关文章
- Spring学习之Ioc控制反转(1)
开始之前: 1. 本博文为原创,转载请注明出处 2. 作者非计算机科班出身,如有错误,请多指正 ---------------------------------------------------- ...
- Spring学习之Ioc控制反转(2)
开始之前: 1. 本博文为原创,转载请注明出处 2. 作者非计算机科班出身,如有错误,请多指正 ---------------------------------------------------- ...
- Spring学习笔记IOC与AOP实例
Spring框架核心由两部分组成: 第一部分是反向控制(IOC),也叫依赖注入(DI); 控制反转(依赖注入)的主要内容是指:只描述程序中对象的被创建方式但不显示的创建对象.在以XML语言描述的配置文 ...
- Spring 学习笔记 IoC 基础
Spring IoC Ioc 是什么 IoC -- Inversion of Control(控制反转)什么是控制?什么是反转? 控制反转了什么? 在很早之前写项目不用 Spring 的时候,都是在 ...
- Spring学习之Ioc
Ioc原理讲解:http://www.cnblogs.com/xdp-gacl/p/4249939.html Ioc IoC是一种编程思想,由主动编程变为被动接收. 也就是说,所有的组件都是被动的(p ...
- [跟我学spring学习笔记][IoC]
IoC基础 什么是IoC Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想. ioc做什么 IoC容器帮对象找相应的依赖对象并注入,而不是由对象主动去找 ...
- spring学习(一) ———— IOC讲解
spring基本就两个核心内容,IOC和AOP.把这两个学会了基本上就会用了. --WH 一.什么是IOC? IOC:控制反转,通俗点讲,将对象的创建权交给spring,我们需要new对象,则由spr ...
- spring 学习 二 IOC/DI
中文名称:控制反转 英文名称:( Inversion of Control ) 1 控制反转作用: 一般在编写java程序时,需要程序员自己创建对象的实例,例如 A a=new A();语句,就是程序 ...
- Spring学习二----------IOC及Bean容器
© 版权声明:本文为博主原创文章,转载请注明出处 接口 用于沟通的中介物的抽象化 实体把自己提供给外界的一种抽象化说明,用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互的 ...
- Spring学习之==>IoC
一.概述 Spring的三大核心思想:IoC(控制反转),DI(依赖注入),AOP(面向切面编程).本问讲着重介绍一下控制反转. 何谓控制反转:Spring 通过一种称作控制反转(IoC)的技术促进了 ...
随机推荐
- Poj1159 Palindrome(动态规划DP求最大公共子序列LCS)
一.Description A palindrome is a symmetrical string, that is, a string read identically from left to ...
- 【转】 Pro Android学习笔记(七四):HTTP服务(8):使用后台线程AsyncTask
目录(?)[-] 5秒超时异常 AsyncTask 实现AsyncTask抽象类 对AsyncTask的调用 在哪里运行 其他重要method 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注 ...
- HTTP 2 VS HTTP 1.1
提升H5应用加载速度的方式有很多,比如缓存.cdn加速.代码压缩合并和图片压缩等技术. 今天介绍的是HTTP 2.0
- redis的 key string hash list set sorted set 常用的方法
redis 安装文件: http://blog.csdn.net/tangsilai/article/details/7477961 ============================== ...
- CSS多列布局Multi-column、伸缩布局Flexbox、网格布局Grid详解
新css属性为我们提供了更加便捷的网页布局方式.来自微软的thomas lewis将带你认识去Grid Alignment,Flexibox Box以及Multi-column Layout这三大领域 ...
- 09_android项目的目录结构
R.java是由IDE自动生成的,不允许修改. Android Dependences 安卓的支持库 项目创建之后一般都会把安卓支持库的V4包导入进来. 项目打包的时候assets的内容并不会被编译 ...
- 掌握HDFS的Java API接口访问
HDFS设计的主要目的是对海量数据进行存储,也就是说在其上能够存储很大量文件(可以存储TB级的文件).HDFS将这些文件分割之后,存储在不同的DataNode上, HDFS 提供了两种访问接口:She ...
- 6.6 chmod的使用
从公司拷贝了白天整理的笔记,拿回家整理,结果发现有锁,无法对其解压.解决方案如上: ll 命令,查看其权限. sudo chmod 777 Picture.tar-1修改权限. 然后,可以正常打开Pc ...
- Ubuntu12.04更新出现 The system is running in low-graphics mode解决方法
这两天都困在这个问题上. 感谢:http://blog.chinaunix.net/uid-26748719-id-3780062.html 原因:显卡没驱动起来 解决方法: sudo apt-get ...
- hdu1073
#include<iostream> using namespace std; #define N 5050 char a[N],b[N],tmp[N]; void Read(char p ...