学习笔记42_SpringMVC

SpringMVC中,Global.axas发生变化,其中

1.原来是

public class MvcApplication:System.web.HttpApplication

现在是

public class MvcApplication:Spring.web.Mvc.SpringMvcApplication

web.config中,也发生了变化:

2.<Configuration>

  <configSections>

    <sectionGroup name="spring"  >

    <section name="context" type="Spring.Context.Support.MvcContextHandler,Spring.web.mvc4">

    </...>

  </...>

</...>

3.在web.config中,还需要有

<Configuration>

  <spring>//跟<configsections>同级

    <context>

     <resource uri = "file://~/config/BLL.xml">//这里是业务逻辑的配置,由于在controllers.xml中,会用到

     <resource uri="file://~/config/controllers.xml">//这里是让UI项目中,必须有config文件夹,内放置controllers.xml 文件,来配置类型

    </...>

  </...>

</...>

4.在<controllers.xml>中,配置控制器

假如控制器中,有一个BLL类的属性,用于跑业务逻辑,那么就可以用配置文件,灵力替换BLL类实例,但是属性必须写成接口引用

<?xml version="1.0" encoding="utf-8">

<objects>

  <object type="类全名,程序集名" singletion="false" (默认是true,表示单列,要记得改为false)>

    <property name="BLL"  ref="xxxBLL"/>//xxxBLL指向的是BLL.xml中的xxxBLL

  </object>

</...>

4.1在BLL.xml中

<?xml version="1.0" encoding="utf-8">

<objects>

  <object name="xxxBLL" type="类全名,程序集名"   singletion="false"></...>

</...>

*****效果就是,在controller中的属性BLL类属性,看上去根本没有赋值还能用,那controller.xml,BLL.xml,DAL.xml,以及global.axas继承的SpringMvcApplication综合结果

***Spring的方式是能渗透入每一个层次的,只是不在UI层中,就使用

IApplicationContext ctx = ContextRegistry.GetContext() ;

ctx.GetObject()来创建实例。

***没用必要再非UI层中,使用Spring,或者项目意料未来业务,或者数据库的变化不大,都可以不使用。

 //service.xml文件夹中放置业务逻辑相关的服务类配置,controller.xml放置控制器的配置

原文地址:https://www.cnblogs.com/pylblog/p/7184740.html