Spring IoC入门
------------------siwuxie095
Spring IoC 环境搭建
1、先下载相关库文件,下载链接:
(1)http://projects.spring.io/spring-framework/
(2)http://repo.spring.io/release/org/springframework/spring/
注意:下载以
-dist.zip 结尾的文件,这里选择下载
Spring 4.3 版本
将 spring-framework-4.3.7.RELEASE-dist.zip
解压一览:

2、导入
Spring 的 jar 包:由于做的是 Spring 最基本的功能,
所以只需要导入 4 个核心
jar 包即可

(1)spring-beans
(2)spring-core
(3)spring-context
(4)spring-expression
3、在使用 Spring 时,有日志信息输出,而 Spring 本身
并没有日志输出的包,所以还要导入其它日志相关的包,
如下:
(1)commons-logging
(2)log4j
Commons Logging
下载链接:
http://commons.apache.org/proper/commons-logging/download_logging.cgi
LOG4J 下载链接:
https://www.apache.org/dist/logging/log4j/
4、综上,共需 6 个
jar 包

创建一个普通的
POJO 类
包名:com.siwuxie095.ioc
类名:User.java
User.java:
|
package com.siwuxie095.ioc; public class User {
public System.out.println("----- add -----"); } } |
创建
Spring 核心配置文件
在
Spring 的核心配置文件中,进行 Bean 的配置
1、创建
XML 格式的配置文件
核心配置文件的名称和位置没有固定要求
(1)位置:建议在
src 下
(2)名称:建议为
applicationContext.xml
2、在配置文件中引入 XML 约束
spring-beans-4.3.xsd
「XML约束有 DTD 和 Schema 两种,在
Spring 的配置文件
中引入的是 Schema 约束(目前),注意:要引入和
Spring
版本对应的约束」
该文件在
schema\beans
文件夹下:

在
applicationContext.xml 中添加如下约束:
|
<?xml <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"> |
可以在
docs\spring-framework-reference\html
文件夹下找到
xsd-configuration.html,其中就有对应的约束
3、配置
Bean
applicationContext.xml:
|
<?xml <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">
<!-- http://www.springframework.org/schema/beans/spring-beans.xsd
该 Schema 文件是用于提示的文件,联网即有提示信息,也可 手动添加:Window->Preferences->XML->XML Catalog, 点击 Add 添加即可,Location 即路径,Key 即上面的链接, Key type 即 Schema Location --> <!-- Spring IoC 容器:配置和管理 Bean --> <bean </beans> |
测试:使用
Spring IoC 容器创建对象
包名:com.siwuxie095.ioc
类名:TestIoc.java
TestIoc.java:
|
package com.siwuxie095.ioc; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class TestIoc { /** * 手动加上 @Test 以进行单元测试(将自动导入 JUnit 4 的 jar 包) * * 选中方法名,右键->Run As->JUint Test */ @Test public
// (1) 加载 Spring 的核心配置文件 ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
// (2) 得到核心配置文件中创建的对象(获取 Bean 实例) User user=(User) context.getBean("user");
user.add(); } } |
【made by siwuxie095】
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入门1. IoC入门实例
Spring入门1. IoC入门实例 Reference:Java EE轻量级解决方案——S2SH 前言: 之前学习过关于Spring的一点知识,曾经因为配置出现问题,而总是被迫放弃学习这些框架技术, ...
- 【Spring】---【IOC入门案例】
第一步:导入Jar包 第二步:创建类,在类里面创建方法 public class User { public void add(){ System.out.println("-------- ...
- 二 Spring的IOC入门,环境搭建,Spring测试类
IOC:inversion of Control 控制反转,Spring框架的核心.削减计算机程序的耦合问题,把对象(例如JDBC)的创建权交给Spring. IOC的两种类型: 依赖注入: 依赖查 ...
- Spring MVC -- Spring框架入门(IoC和DI)
Spring MVC是Spring框架中用于Web应用开发的一个模块.Spring MVC的MVC是Model-View-Controller的缩写.它是一个广泛应用于图像化用户交互开发中的设计模式, ...
- Spring入门篇——第2章 Spring IOC容器
第2章 Spring IOC容器 介绍Spring IOC容器的基本概念和应用 2-1 IOC及Bean容器 自己的理解:什么是IOC?就是利用配置文件(外部容器)来创建对象. 在IOC容器中,所有对 ...
- Spring(1) --入门(IoC,AOP)
说说你对spring的理解? Spring框架是一个轻量级的企业级开发的一站式解决方案,所谓一站式解决方案就是可以基于Spring解决Java EE开发的所有问题.Spring框架主要提供了IoC容器 ...
随机推荐
- Python数据类型-01.数字和布尔值
本节主要介绍Python中的基础知识中的数据类型,数字和布尔值 介绍几个知识点:1)内置函数print()的用法,直接打印括号里面的内容,或者print后跟多个输出,以逗号分隔.2)内置函数type( ...
- HDU3335 Divisibility Dilworth定理+最小路径覆盖
首先需要一些概念: 有向图,最小路径覆盖,最大独立集,Dilworth,偏序集,跳舞链(DLX).... 理解一: 对于DAG图,有:最大独立集=点-二分匹配数,二分匹配数=最小路径覆盖. 而无向图, ...
- 10013: 以一种访问权限不允许的方式做了一个访问套接字的尝试【WCF异常】
错误代码:10013 异常描述:侦听 IP 终结点=0.0.0.0:6666 时出现 TCP 错误(10013: 以一种访问权限不允许的方式做了一个访问套接字的尝试.). 解决方式:由于端口6666被 ...
- javascript reg 不加入分组
from :https://stackoverflow.com/questions/3512471/what-is-a-non-capturing-group-what-does-a-question ...
- 前端安全系列:如何防止CSRF攻击?
背景 随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点.在移动互联网时代,前端人员除了传统的 XSS.CSRF 等安全问题之外,又时常遭遇网络劫持 ...
- python 保存文件时候, 去除名字中的非法字符
import re def validateTitle(title): rstr = r"[\/\\\:\*\?\"\<\>\|]" # '/ \ : * ? ...
- iOS 基础类解析 - NSDate
版权声明:本文为博主原创文章,未经博主同意不得转载.转载联系 QQ 30952589,加好友请注明来意. https://blog.csdn.net/sleks/article/details/248 ...
- Hive之 数据类型
hive 目前支持的数据类型如下: -- 数值类型 Numeric TypesTINYINT (1-byte signed integer, from -128 to 127)SMALLINT (2- ...
- php 取数组最后一个元素
可以用end()函数取出数组的最后一个元素, $rList = array( array('id'=>1,'txt'=>'a'), array('id'=>2,'txt'=>' ...
- HttpHelp 请求帮助类
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net ...