MVC+Nhibernate+spring.net(三)

 

當前層次已經分好web

分層架構spring

畫的不是太好啊,後面我會上代碼,你們先將就着看吧。多線程

如今開始搭建spring架構

搭建spring首先引用類庫文件:線程

spring.Aop
Spring.Core
spring.Web
spring.Web.Extensions
spring.Web.Mvc43d

將這幾個程序集都添加完成以後,修改Global.asax.cd中的System.Web.HttpApplication爲Spring.Web.Mvc.SpringMvcApplicationserver

而後開始配置web.configxml

在<configSections>添加對象

 <!--Spring.Net塊配置-->
    <sectionGroup name="spring">
      <section name="context" type="Spring.Context.Support.MvcContextHandler,Spring.Web.Mvc4" />
    </sectionGroup>
    

 在<configuration>節點下面添加以下方法:blog

<!--Spring.Net的容器配置節點-->
<spring>
<context>
<resource uri="file://~/Config/Server.xml" />
<resource uri="file://~/Config/controllers.xml" />
<resource uri="file://~/Config/Dals.xml" />
</context>
</spring>

如今在web的根目錄下建立一個Config文件夾,在config文件夾裏面創三個文件

dal是數據訪問層往bll層注入的

server是接受dal層的注入並往controlle層注入的

controllers是接受server層注入的

先來實例化DbSession

這個是經過一個工廠的靜態對象來實例化對象

<!--經過工廠的一個靜態方法來建立對象  type就配置到工廠類型就能夠了-->
  <object name="DbSession" type="Factory.DbSessionFactory,Factory" singleton="false"
          factory-method="GetCurrentDbSession" >

 name是要注入的屬性名  type="程序集+類名,程序集"  

singleton="false"  要求在多線程的環境下必須是一個線程對應一個實例
還有另外一種辦法,就是經過工廠實例方法注入
 <!--經過工廠的實例方法來建立對象的配置-->
 <object name="DbSession" type="AioaAgain.DALFactory.DbSession,AioaAgain.DALFactory" singleton="false" 
          factory-method="GetCurrentDbSession" foctory-object="DbSessionFactory">

暫時先作一個瞭解,等我把這個項目寫完,我準備寫一個spring專題。網上也有不少spring的知識,你們能夠參考一下:

相關文章
相關標籤/搜索