Spring IoC、DI入门小程序
2015-08-31 17:17
711 查看
Alt+/智能提示xml配置文件节点及属性;在接口上使用Ctrl+T可以提示其实现类
一、IoC控制反转(将创建对象的权利交给spring)入门小程序
1、引入jar包
2、工程基本结构
3、新建UserService类
4、新建beans.xml文件配置bean
5、新建测试类TestApp
二、DI依赖注入(自动实例化类中属性对象)入门小程序
1、沿用上面工程
2、新增包,结构如下
3、新建BookDao类
4、新建BookService类
5、新建beans.xml文件配置bean
6、新建测试类TestAPP
一、IoC控制反转(将创建对象的权利交给spring)入门小程序
1、引入jar包
2、工程基本结构
3、新建UserService类
package hjp.spring.demo1; import org.junit.Test; public class UserService { public void addUser() { System.out.println("addUser"); } }
4、新建beans.xml文件配置bean
<?xml version="1.0" encoding="UTF-8"?> <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"> <bean id="userServiceId" class="hjp.spring.demo1.UserService"></bean> </beans>
5、新建测试类TestApp
import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class TestApp { @Test public void demo1() { // 1、加载配置文件 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("hjp/spring/demo1/beans.xml"); // 2、从Spring工厂获得对象 UserService userService = (UserService) applicationContext.getBean("userServiceId"); userService.addUser(); } }
二、DI依赖注入(自动实例化类中属性对象)入门小程序
1、沿用上面工程
2、新增包,结构如下
3、新建BookDao类
package hjp.spring.demo2; public class BookDao { public void save() { System.out.println("save book"); } }
4、新建BookService类
package hjp.spring.demo2; public class BookService { private BookDao bookDao; public BookDao getBookDao() { return bookDao; } public void setBookDao(BookDao bookDao) { this.bookDao = bookDao; } public void addBook() { bookDao.save(); } }
5、新建beans.xml文件配置bean
<?xml version="1.0" encoding="UTF-8"?> <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"> <!-- 创建dao --> <bean id="bookDaoId" class="hjp.spring.demo2.BookDao"> </bean> <!-- 创建service --> <bean id="bookServiceId" class="hjp.spring.demo2.BookService"> <!-- <property>进行依赖注入过程,底层将执行setter方法 name 指BookService类bookDao属性 ref 指属性实例引用 --> <property name="bookDao" ref="bookDaoId"></property> </bean> </beans>
6、新建测试类TestAPP
package hjp.spring.demo2; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class TestApp { @Test public void demo1() { //获得容器 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("hjp/spring/demo2/beans.xml"); //获得对象 BookService bookService = applicationContext.getBean("bookServiceId", BookService.class); bookService.addBook(); } }
相关文章推荐
- eclipse外挂SVN插件的方法
- java多线程之synchronized和锁对象
- JAVA生成WebService客户端命令2种方式
- Spring 字符编码过滤
- JavaWeb基础学习第五天
- Java 动态代理源码分析
- 用java选择selenium下拉选择框的一个选项
- spring mvc + MyBatis + Easyui
- SpringMVC中使用Interceptor拦截器
- spring整合webservice
- java 获取路径
- java中回调机制
- java 完全解耦[编程思想之9.4]
- Java并发编程(一) 基础知识
- Java中有关Null的9件事
- eclipse+pydev 安装和配置
- 《Data Structures and Algorithm Analysis in Java》Second Edition中文版笔记
- Java- 受检的异常(checked Exception)
- java.sql.SQLException: Access denied for user 'root'
- svn设置忽视某个文件夹不提交 Eclipse VS2012