web項目的配置問題

web.xml文件中

      web項目啓動時,最先讀取的兩個節點是<context-param>節點和<listener>節點,所以這兩個節點裏面所配置的內容是web項目啓動時最先加載的部分。

  <context-param>節點中配置的applicationContext.xml裏面主要是數據庫中的配置信息,以及事物等。

  <listener>節點配置的是web請求的監聽器。

 applicationContext.xml文件中

        <!-- 自動註解除Controller以外的Component -->
    <context:component-scan base-package="com.weiluo.example">
	<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
    </context:component-scan>

    <!-- 此配置可以讓我們以${xxx}的形式來讀取property.properties裏面的信息 -->

        <!-- 配置數據源 -->
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

        <!-- 配置SessionFactory -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"
	p:dataSource-ref = "dataSource"
	p:configLocation = "classpath:sqlMapConfig.xml" />

     <!-- 採用spring與mybatis整合的第二種方法 -->
     <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
	   <constructor-arg index="0"  ref="sqlSessionFactory" />
     </bean>

     <!-- 配置事務管理器 -->
     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
	p:dataSource-ref = "dataSource" />

         <!-- MapperScanner配置,自動搜索mapper裏面的對象,並注入 -->
     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"
	p:basePackage = "com.weiluo.example.entity" />

      <!-- 啓動Spring註解事務 -->
      <tx:annotation-driven/>

          web.xml中的<servlet>節點配置的是與請求處理相關的一些內容,主要是 url路徑處理器,視圖解析器,等等
          eg:<!-- url映射攔截器 -->
	    <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
			<property name="order" value="1" />
		</bean>
          
      <!-- 配置數據格式轉換器 -->
          <bean
	class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">

      <!-- 開啓controller註解支持 -->
	    <!-- 注:如果base-package=cn.javass 則註解事務不起作用 TODO 讀源碼 -->
	    <context:component-scan base-package="com.weiluo.example.controller">
		<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
	    </context:component-scan>

      <!-- 因爲web-inf目錄下面的靜態資源文件是不能直接通過目錄過去的,所以需要特殊聲明-->
        <mvc:resources location="/static/" mapping="/static/**" />

        <!-- 視圖解析器 -->
           <bean id="viewResolver"
	        class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">

            <!-- 自定義的freemarker標籤 -->
	<bean id="blockDirective"
	              class="com.weiluo.example.freemarker.directive.BlockDirective" />

            <!-- freemarker的配置項 -->
	<bean id="freemarkerConfig"
		class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">

             另外,一些常常變化的信息習慣於存放在application.properties文件裏面,如:
	 #oracle version database setting
	database=sqlserver
	#jdbc.driver=oracle.jdbc.driver.OracleDriver
	jdbc.driver=net.sourceforge.jtds.jdbc.Driver
	#jdbc.driver=com.mysql.jdbc.Driver
	jdbc.url=jdbc:jtds:sqlserver://127.0.0.1:1433;databaseName=SpringMyBatisExample
	#jdbc.url=jdbc:mysql://localhost:3306/springmvcdemo
	jdbc.username=sa
	jdbc.password=sasa
	#dbcp settings
	dbcp.maxIdle=5
	dbcp.maxActive=20

    到這裏,一個spring mvc的基本框架就已經搭建起來了。
    後續再完成數據庫mybatis的配置以及freemarker的配置。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章