Sping之Ioc
Ioc,控制反转,依赖注入!
作用:降低代码之间的耦合性
代码永远是最好的示例:
1.新建test类
package demo;
public class test {
	String string_var;
	int int_var;
	char char_var;
	double double_var;
	public String getString_var() {
		return string_var;
	}
	public void setString_var(String string_var) {
		this.string_var = string_var;
	}
	public int getInt_var() {
		return int_var;
	}
	public void setInt_var(int int_var) {
		this.int_var = int_var;
	}
	public char getChar_var() {
		return char_var;
	}
	public void setChar_var(char char_var) {
		this.char_var = char_var;
	}
	public double getDouble_var() {
		return double_var;
	}
	public void setDouble_var(double double_var) {
		this.double_var = double_var;
	}
	public void inin(){
		System.out.println("在init()方法中String的值是:"+string_var);
		System.out.println("在init()方法中int的值是:"+int_var);
		System.out.println("在init()方法中char的值是:"+char_var);
		System.out.println("在init()方法中double的值是:"+double_var);
	}
	public void printAll(){
		System.out.println("在printAll()方法中String的值是:"+string_var);
		System.out.println("在printAll()方法中int的值是:"+int_var);
		System.out.println("在printAll()方法中char的值是:"+char_var);
		System.out.println("在printAll()方法中double的值是:"+double_var);
	}
}
2.新建applicationContext.xml配置文件<?xml version="1.0" encoding="UTF-8"?><beans
xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> <!-- init-method属性:在取得Bean实例并对属性进行注入以后自动执行的, 可解决注入后对属性值进行继续更改的操作;唯一id名,class为类的路径 --> <bean id="test_ref" class="demo.test" init-method="inin">
<!-- 对类里的字段进行注入值 --> <property name="string_var" value="高渐离"></property> <property name="int_var" value="66"></property> <property name="char_var" value="女"></property> <property name="double_var" value="66.66"></property> </bean>
<bean id="runit_ref" class="demo.runit">
<!-- ref引用test_ref --> <property name="test_ref" ref="test_ref"></property> </bean> </beans>
3.新建runit类,方便测试,直接写了main方法
package demo;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class runit {
    test test_ref;
    public test getTest_ref() {
        return test_ref;
    }
    public void setTest_ref(test test_ref) {
        this.test_ref = test_ref;
    }
    public static void main (String[] args){
        ApplicationContext contex = new ClassPathXmlApplicationContext("applicationContext.xml");
        runit runit_ref = (runit) contex.getBean("runit_ref");
        runit_ref.getTest_ref().printAll();
    }
}
以上示例只展示了基本数据类型的注入,还有构造方法、Properties文件等注入方法!自己查去吧!
Sping之Ioc的更多相关文章
- 【Java】模拟Sping,实现其IOC和AOP核心(一)
		在这里我要实现的是Spring的IOC和AOP的核心,而且有关IOC的实现,注解+XML能混合使用! 参考资料: IOC:控制反转(Inversion of Control,缩写为IoC),是面向对象 ... 
- Spring——IoC
		控制反转(Inversion ofControl,英文缩写为IoC)是一种能够解耦的方法,不是什么技术.是一种思想,也是轻量级的Spring框架的核心.控制反转一般分为两种类型.依赖注入(Depend ... 
- Spring中基于注解的IOC(二):案例与总结
		2.Spring的IOC案例 创建maven项目 导入依赖 pom.xml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ... 
- ASP.NET跨平台最佳实践
		前言 八年的坚持敌不过领导的固执,最终还是不得不阔别已经成为我第二语言的C#,转战Java阵营.有过短暂的失落和迷茫,但技术转型真的没有想象中那么难.回头审视,其实单从语言本身来看,C#确实比Java ... 
- 初识SSH框架
		想了解SSH的工作原理吗?还不快快来看我的新文章----ssh框架的工作原理 也许你还不知道SSH存在的意义,但只是因为在没点开这篇文章之前的事了. SSH由Strut2,Spring,Hiberna ... 
- Spring容器的工具类
		代码实现: package com.ht.util; import java.util.Map; import org.springframework.beans.BeansException; im ... 
- ASP.NET跨平台
		ASP.NET跨平台最佳实践 前言 八年的坚持敌不过领导的固执,最终还是不得不阔别已经成为我第二语言的C#,转战Java阵营.有过短暂的失落和迷茫,但技术转型真的没有想象中那么难.回头审视,其实单从语 ... 
- java框架常见的面试题
		1.谈谈你对MVC的理解 MVC是Model—View—Controler的简称.即模型—视图—控制器.MVC是一种设计模式,它强制性的把应用程序的输入.处理和输出分开. MVC中的模型.视图.控制器 ... 
- Webservice实践(七)CXF 与Spring结合+tomcat发布
		上一节介绍了如何使用CXF 来发布服务,但是没有介绍使用web 容器来发布,很多项目需要用tomcat 这样的容器来发布.另外本节将介绍CXF 与spring 结合的方法. 一 目标: 1.利用spi ... 
随机推荐
- 执行ANT JAVA三种方式
			1. 命令行 <target name="reporttoexcel" depends="report"> <exec executable= ... 
- .NET链接Oracle 参数绑定问题
			在.NET项目中链接Oracle使用的驱动是 Oracle.ManagedDataAccess.dll ,这里下载 所遇到的问题 使用存储过程一个参数没有问题,发现两个或两个以上会有参数没传过来的现象 ... 
- Unity3D常用 API 之 Invoke 函数调用
			1.金钱副本细节完善 1.1.宝箱自动掉落 给宝箱预制体添加刚体组件即可. 1.2.实现按键宝箱批量掉落 ①将实例化生成宝箱的代码单独封装成一个函数: ②使用 for 循环,批量生成宝箱. 按一次z键 ... 
- Python原理 -- 深浅拷贝
			python原理 -- 深浅拷贝 从数据类型说开去 str, num : 一次性创建, 不能被修改, 修改即是再创建. list,tuple,dict,set : 链表,当前元素记录, 下一个元素的位 ... 
- 转化来的图标用法symbol引用‘font-class引用及Unicode引用
- JS常用数据校验集合(adding)
			常用数据校验集合 var _validator = { MAIL_REGEX: /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,; ... 
- 一些css书写的小技巧
			一.css顺序 首先声明,浏览器读取css的方式是从上到下的.我们一般书写css只要元素具备这些属性就会达到我们预期的效果,但是这会给以后的维护和浏览器的渲染效率带来一定的影响,那么该怎么书写css的 ... 
- php中有关合并某一字段键值相同的数组合并
			<?php function combine($array,$start,$key,$newkey){ static $new; //静态变量 foreach($array as $k=> ... 
- 7.如何发布vue项目到服务器
			1.确保程序是可运行的,即npm run dev可以运行 2.把index.js修改 3.运行npm命令npm run build 4.生成的dist文件为 直接点击index.html就能运行,部署 ... 
- phpcmsV9常用标签
			头部: <title>{if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO ... 
