08_Spring实现action调用service,service调用dao的过程
Posted HigginCui
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了08_Spring实现action调用service,service调用dao的过程相关的知识,希望对你有一定的参考价值。
【工程截图】
【PersonDao.java】
package com.HigginCui.dao; public interface PersonDao { public void savePerson(); }
【PersonDaoImpl.java】
package com.HigginCui.dao; public class PersonDaoImpl implements PersonDao{ @Override public void savePerson() { System.out.println("save Person..."); } }
【PersonService.java】
package com.HigginCui.Service; public interface PersonService { public void savePerson(); }
【PersonServiceImpl.java】
package com.HigginCui.Service; import com.HigginCui.dao.PersonDao; public class PersonServiceImpl implements PersonService{ private PersonDao personDao; //personDao的set方法 public void setPersonDao(PersonDao personDao) { this.personDao = personDao; } @Override public void savePerson() { this.personDao.savePerson(); } }
【PersonAction.java】
package com.HigginCui.action; import com.HigginCui.Service.PersonService; public class PersonAction { private PersonService personService; //personService的set方法 public void setPersonService(PersonService personService) { this.personService = personService; } public String savePerson(){ this.personService.savePerson(); return "saveOK..."; } }
【applicationContext.xml】
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:aop="http://www.springframework.org/schema/aop" 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-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"> <bean id="personDao" class="com.HigginCui.dao.PersonDaoImpl"></bean> <bean id="personService" class="com.HigginCui.Service.PersonServiceImpl"> <property name="personDao"> <ref bean="personDao"/> </property> </bean> <bean id="personAction" class="com.HigginCui.action.PersonAction"> <property name="personService"> <ref bean="personService"/> </property> </bean> </beans>
【testPerson.java】
package com.HigginCui.test; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.HigginCui.action.PersonAction; public class testPerson { @Test public void test(){ ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml"); PersonAction personAction=(PersonAction) context.getBean("personAction"); String str=personAction.savePerson(); System.out.println(str); } }
【运行结果】
save Person...
saveOK...
【小结】
实现了完全的面向接口编程,在代码端没有必要关心一个接口的实现类是什么。
以上是关于08_Spring实现action调用service,service调用dao的过程的主要内容,如果未能解决你的问题,请参考以下文章
关于Spring事务控制方面的问题,就是不在service层做控制
Java项目,bean类,dao包,service包,action包,现在想用action调用数据库中数据,数据在bean里有get set
Spring学习3—控制反转(IOC)Spring依赖注入(DI)和控制反转(IOC)