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放置控制器的配置

学习笔记42_SpringMVC的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

随机推荐

  1. VR中的“寻路(wayfinding)”

    虚拟现实(VR)中很重要的一个问题就是Locomotion(用户在VR中的移动).这个Locomotion分为两种,一种是点对点的,如传送门的方式,一种是包含了可以操控的中间过程的,这种被称为“导航( ...

  2. Matplotlib之Bar Chart

    Matplotlib之Bar Chart: import numpy as np import matplotlib.pyplot as plt data = [[300, 200, 250, 150 ...

  3. Java 学习笔记之 线程interrupt方法

    线程interrupt方法: interrupt方法是用来停止线程的,但是他的使用效果并不像for+break那样,马上就停止循环. 调用interrupt()其实仅仅是在当前线程中打了一个停止标记, ...

  4. k阶斐波那契数列fibonacci第n项求值

    已知K阶斐波那契数列定义为:f0 = 0,  f1 = 0, … , fk-2 = 0, fk-1 = 1;fn = fn-1 + fn-2 + … + fn-k , n = k , k + 1, … ...

  5. mac下idea中安装docker插件

    idea中安装docker插件: 点击Intellij IDEA->Preferences...->Plugins->Browse repositories...如下: 点击Inst ...

  6. 10月27日Java整理

    实验一:凯撒密码 import java.util.Scanner; //zhanxinwu,October,25,2016 public class Addmi { public static vo ...

  7. java生成32位UUID

    java生成32位UUID,具体代码如下: package com.fxsen.uuid; import java.util.UUID; /** * Copyright: Copyright (c) ...

  8. django中CBV

    08.13自我总结 django中CBV 一.django处理业务逻辑的两种方式 FBV (function based views):使用函数来处理业务逻辑 CBV (class based vie ...

  9. Jmeter结构体系及运行顺序

    一:jmeter运行原理: jmeter时以线程的方式来运行的(由于jmeter是java开发的所以是运行在JVM虚拟机上的,java也是支持多线程的) 二:jmeter结构体系 1.取样器smapl ...

  10. STM32串口IAP分享

    什么是IAP? IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发布后可以方便地通 ...