一.前期条件:
首先需要创建一个maven项目
然后完善maven项目的结构
然后写两个小程序,一个是Dao层的BookDao对象,里面写上一个save对
另外一个是Service层的BookService对象。里面同样包含一个save方法
两个程序都是简单的输出语句,其中Service层调用Dao层
二.核心的操作步骤:
1.导入spring-context依赖
2.创建applicationContext.xml文件
3.配置bean
4.创建IOC容器,由他创建指定对象,执行方法
5.依赖注入
三.总结:
通过IOC(控制反转)就可以实现对象的创建,而不同在类中手动的new对象,这就实现了不同层之间的调用关系变得松散,不用再源程序中出现一个对象依赖于另一个对象的情况,如果我们需要改变对象之间的依赖关系,通过修改配置文件就可以实现,而不用在手动的修改源代码,省去了很多测试,运行,上线的操作,易于维护和管理,这也是低耦合的体现
基本代码注释:
<!--1.导入Spring对应的坐标spring-context,版本是5.2.10.RELEASE--> <!--2.配置bean--> <!--bean标签表示配置bean id标签表示给bean起名字 class标签表示给bean指定类型--> <bean id="bookDao" class="org.example.dao.impl.BookDaoImpl"/> <bean id="bookService" class="org.example.service.impl.BookServiceImpl">
//3.先创建IOC容器 ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); //4.获取bean,执行方法 BookDao bookDao = (BookDao) ctx.getBean("bookDao"); BookService bookService = (BookService) ctx.getBean("bookService"); //5.调用方法 bookDao.save(); bookService.save();
<bean id="bookService" class="org.example.service.impl.BookServiceImpl"> <!--7.配置service和dao的关系--> <!--property表示配置当前bean的属性 name属性表示配置哪一个具体的属性 ref表示参照哪一个bean--> <property name="bookDao" ref="bookDao"/> </bean>