spring 提供了很多第三方组件的调用接口,如果你不用那些接口调用就没必要用spring

解决方案 »

  1.   

    第三方组件的调用接口?你指什么啊?hibernate?
      

  2.   

    强烈建议看一下webwork的文档(当然是新的)
    webwork现在放弃了自己的IoC容器,采用spring作为IoC。
    什么意思呢?首先webwork中的action类创建的时候首先尝试用spring创建,创建失败的话再自己创建。
    这样有什么好处呢?当然是个层之间的解藕,webwork中默认spring注入的方式是按名称自动注入,举个例子给你。
    持久层接口:
    interface PersonDao
    {
      public void insert(Person p);
    }
    //实现略...
    class PersonDaoImp implements PersonDao....业务逻辑接口:
    interface SomeManager
    {
      public newPerson(Person p);
    }
    业务逻辑实现:
    abstract class AbstractSomeManager implements SomeManager
    {
      PersonDao personDao;
      //set方法
    }
    class DefaultSomeManager extends AbstractSomeManager
    {
      public newPerson(Person p)
      {
        personDao.insert(p);
       }
    }
    WEB层:
    xwork.xml:
    <action name="a" class="A"...........
    class A extends ActionSupport
    {
       private SomeManager someManager;
       public execute()
       {
          someManager.newPerson(...);
        }
    }ok各个层大概是这样的,用spring整合在一起
    <bean name="personDao" class="PersonDaoImp"/>
    <bean name="someManager" class="DefaultSomeManager">
      <property name="personDao"><ref bean="personDao"/></property>
    </bean>
    //////////////////////
    Manager注入到Web层是利用匹配名字自动注入的(因为Action类最终是在spring中创建的,所以可以)
    看到了么?
    MVC 用webwork
    业务逻辑利用spring整合
    持久层可以选择你喜欢的技术
    over