Spring环境搭建,IoC容器初体验~
由于最近的任务是关于IoC配置文件格式的转换,所以需要从Spring的IoC容器开始学起,今天根据网上的介绍搭建了Spring环境,并对其IoC容器进行了初体验。文章中涉及到的软件以及推荐的一本关于Spring IoC容器的电子书,在结尾处会附上我的百度网盘下载地址,以防官网维护或其他浮云情况。下附说明~
1.打开http://www.springsource.org/spring-community-download,如下图所示,点击take me to the download page。
2.然后进入了下载页面,选择最新版本的下载
3.下载完成后解压缩到任意文件夹,里面的目录结构一目了然。
4.打开eclipse,新建java project,右键工程名→Build Path→Configure Build Path,在打开的窗口选择Add External JARs
5.然后在JAR Selection窗口中找到刚才解压的路径,进入libs文件夹,选中spring-beans-3.2.1.RELEASE.jar、spring-context-3.2.1.RELEASE.jar、spring-core-3.2.1.RELEASE.jar、spring-expression-3.2.1.RELEASE.jar,打开之后点击ok添加成功。
6.打开http://commons.apache.org/proper/commons-logging//download_logging.cgi,下载commons-logging-1.1.1-bin.zip,之后解压到任意文件夹,然后再通过第五步的方法将解压后文件夹中的commons-logging-1.1.1.jar引入工程,成功后工程目录结构如下图
7.准备工作完成,开始IoC的初体验,创建如下目录结构
8.各个文件的代码如下
BeanA.java
1 package org.beans; 2 3 public class BeanA { 4 public void say(){ 5 System.out.println("welcome"); 6 } 7 }
BeanB.java
1 package org.beans; 2 3 public class BeanB { 4 private BeanA ba ; 5 6 public BeanA getBa() { 7 return ba; 8 } 9 10 public void setBa(BeanA ba) { 11 this.ba = ba; 12 } 13 14 }
Start.java
1 package org.beans; 2 3 import org.springframework.context.ApplicationContext; 4 import org.springframework.context.support.ClassPathXmlApplicationContext; 5 6 public class Start { 7 public static void main(String[] args) { 8 ApplicationContext ctx = new ClassPathXmlApplicationContext("org/beans/applicationContext.xml"); 9 BeanB bb = (BeanB) ctx.getBean("beanB"); 10 bb.getBa().say(); 11 } 12 }
applicationContext.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans 3 xmlns="http://www.springframework.org/schema/beans" 4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5 xmlns:p="http://www.springframework.org/schema/p" 6 xsi:schemaLocation="http://www.springframework.org/schema/beans 7 http://www.springframework.org/schema/beans/spring-beans-3.2.xsd"> 8 <bean id = "beanB" class = "org.beans.BeanB"> 9 <property name = "ba" ref = "beanA"/> 10 </bean> 11 <bean id = "beanA" class = "org.beans.BeanA"/> 12 </beans>
搞定,运行程序后,控制台输出welcome~~
文章涉及的jar包以及Spring IoC容器的介绍电子书下载链接:
http://pan.baidu.com/share/link?shareid=408901&uk=152821134
有不足之处还望路过大神指出,有疑问的地方欢迎讨论~~
转载于:https://www.cnblogs.com/FlameRen/archive/2013/03/04/2943185.html
Spring环境搭建,IoC容器初体验~相关推荐
- 从源码深处体验Spring核心技术--IOC容器初体验
开局经验之谈:可能从这一篇文章开始,小伙伴们都会有点晕车的感觉了,但是这个系列并不是只是介绍下spring表面的一些肤浅的东西,本系列的目的是为了让大家从源码层次深入理解Spring,这也是大家在未来 ...
- Web IOC 容器初体验
我们还是从大家最熟悉的DispatcherServlet 开始,我们最先想到的还是DispatcherServlet 的init()方法.我们发现在DispatherServlet 中并没有找到ini ...
- IoC、Spring 环境搭建、Spring 创建对象的三种方式、DI
二.IoC 中文名称:控制反转 英文名称:(Inversion of Control) 3.I oC 是什么? 3.1 IoC 完成的事情原先由程序员主动通过 new 实例化对象事情,转交给 Spri ...
- Docker深入浅出系列 | 容器初体验
Docker深入浅出系列 | 容器初体验 教程目标 Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要偏重实战,尽量讲干 ...
- 比Spring简单的IoC容器
比Spring简单的IoC容器 Spring 虽然比起EJB轻量了许多,但是因为它需要兼容许多不同的类库,导致现在Spring还是相当的庞大的,动不动就上40MB的jar包, 而且想要理解Spring ...
- 【微服务】SpringBoot 搭建微服务初体验
SpringBoot 搭建微服务初体验 前言 Server端程序开发 1.创建Server项目,并添加依赖 2.引入依赖,完善配置文件 3.开发SQL语句 4.开发JavaBean 5.开发DAO接口 ...
- spring系列之IOC容器结构
IOC容器结构 IOC(控制反转): 传统javaSE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象,而Ioc是有专门一个容器来创建这些对象,即由Ioc容器来控制对象的创 ...
- 自己搭建IOC容器(C#)(二)实现Ioc容器基本功能
实现Ioc容器基本的类和功能 实现简单ioc容器的基本方式:通过一个Dictionary字典集合存储不同类型Type之间的对应关系,然后使用System.Activator.CreateInstanc ...
- 最新最全面的Spring详解(一)——Spring概述与IOC容器
前言 本文为 [Spring]Spring概述与IOC容器 相关知识,下边将对Spring概述,IOC容器(包括:IOC概述.配置元数据.容器实例化与使用.Bean的概述.依赖注入 Dependenc ...
最新文章
- “噪声对比估计”杂谈:曲径通幽之妙
- boost::mpl模块实现erase相关的测试程序
- 用asp.net画饼图
- java 柱状图 宽度_Java实现 LeetCode 84 柱状图中最大得矩形
- TabError- inconsistent use of tabs and spaces in indentation 查验及解决方法
- 高级产品经理的思维方式
- 06-移动端开发教程-fullpage框架
- UTF-8 encode decode 集合
- 计算机课题立项申报书范文,课题立项申请书怎么写
- c++打开图片查看器并查看图片
- 做H5页面用什么软件比较好?
- matlab 1 d lookup,matlab中关于lookup table
- chapter2 基因组学
- 五年了还在原地踏步咋整?技术大佬给你整理了一套切实可行的方法论
- 了解汽车贷款全过程,不要掉进车贷“坑”!
- 第五章:3ds max UV展开和BP贴图绘制(下)
- 科普|AGV自动运输车的不同导航方式以及优缺点
- UR机器人使用教程-总结
- ROS2机器人笔记20-11-22
- 计算机修改人类记忆曲线,遗忘曲线——揭秘人类记忆存储的奥秘
热门文章
- 腾讯发布人工智能辅助翻译,致敬人工翻译
- 学界 | DeepMind想用IQ题测试AI的抽象思维能力,进展还不错
- NASA打算送机器蜜蜂去探索火星上的生命痕迹
- 《程序员做饭指南》霸榜 GitHub!不仅有量筒、烧杯,还用上了数学公式?
- 吐血整理:手拿几个大厂 Offer 的秘密武器!
- 从科幻灵感开始的一场数据存储基础设施实验之旅
- 数字货币支付能成为主流吗?
- low逼三人组、nb二人组、归并、希尔排序----小结
- LINUX系统管理员技术(Admin)-------第三天
- What is the purpose for IT Pro in Windows 10 Creators Update