SpringMVC配置文件和依賴詳解


1.配置文件applicationContext.xml配置如下:

  1 <?xml version="1.0" encoding="UTF-8"?>
  2 <!--配置文件頭部引入所使用到的標簽的命名空間-->
  3 <beans xmlns="http://www.springframework.org/schema/beans"
  4        xmlns:context="http://www.springframework.org/schema/context"
  5        xmlns:aop="http://www.springframework.org/schema/aop"
  6        xmlns:tx="http://www.springframework.org/schema/tx"
  7        xmlns:mvc="http://www.springframework.org/schema/mvc"
  8        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  9        xsi:schemaLocation="http://www.springframework.org/schema/beans
 10         http://www.springframework.org/schema/beans/spring-beans.xsd
 11         http://www.springframework.org/schema/context
 12         http://www.springframework.org/schema/context/spring-context.xsd
 13         http://www.springframework.org/schema/aop
 14         http://www.springframework.org/schema/aop/spring-aop.xsd
 15         http://www.springframework.org/schema/tx
 16         http://www.springframework.org/schema/tx/spring-tx.xsd
 17         http://www.springframework.org/schema/mvc
 18         http://www.springframework.org/schema/mvc/spring-mvc.xsd">
 19        
 20     <!--
 21         若把應用拆分成多個spring模塊來寫,則在本模塊中必須使用import標簽把所依賴的其他模塊的spring配置文件導入進來,
 22         否則啟動應用的時候會出現創建spring bean失敗。相當於是把依賴的其他模塊的spring配置文件中的內容導入整合到一個
 23         spring文件里面。若只是單個spring模塊則不用寫import標簽
 24         <import resource="spring-biz.xml"/>
 25     -->
 26     <!--
 27         context:component-scan 標簽作用
 28         在Spring IOC容器初始化過程中,自動創建並管理com.puhj.hdm包及子包中擁有一下注解的對象:
 29         @Repository
 30         @Service
 31         @Controller
 32         @Component
 33     -->
 34     <context:component-scan base-package="com.puhj.hdm"/>
 35     <!--開啟aop:aspectj自動掃描-->
 36     <aop:aspectj-autoproxy/>
 37     <!--啟用Spring MVC的注解開發模式,即可以使用@RequestingMapping等注解-->
 38     <mvc:annotation-driven>
 39         <mvc:message-converters>
 40             <bean class="org.springframework.http.converter.StringHttpMessageConverter">
 41                 <property name="supportedMediaTypes">
 42                     <list>
 43                         <!--
 44                             處理響應輸出亂碼
 45                             response.setContentType("text/html;charset=utf-8")
 46                         -->
 47                         <value>text/html;charset=utf-8</value>
 48                     </list>
 49                 </property>
 50             </bean>
 51         </mvc:message-converters>
 52     </mvc:annotation-driven>
 53     <!--
 54         將圖片/js/css等靜態資源排除在外,可提高執行效率.如:來了一個圖片資源的請求要展示頁面上的圖片,
 55         這類請求就不讓DispatcherServlet攔截了
 56     -->
 57     <mvc:default-servlet-handler/>
 58     <!--數據源配置-->
 59     <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
 60         <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
 61         <property name="url" value="jdbc:mysql://localhost:3306/hospital?
 62               useUnicode=true&amp;characterEncoding=UTF-8&amp;useSSL=false"/>
 63         <property name="username" value="root"/>
 64         <property name="password" value="root"/>
 65     </bean>
 66     <!--Mybatis的sqlSessionFactory工廠配置-->
 67     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
 68         <!--配置sqlSessionFactory使用的數據源-->
 69         <property name="dataSource" ref="dataSource"/>
 70         <!--配置mapper映射文件路徑:和實際路徑保持一致-->
 71         <property name="mapperLocations" value="classpath:mapper/*.xml"/>
 72         <!--配置實體類包路徑:讓mapper文件中的類型可以使用簡寫,即不用把實體類完整路徑寫出來-->
 73         <property name="typeAliasesPackage" value="com.puhj.hdm.entity"/>
 74     </bean>
 75     <!--Mybatis持久化對象配置-->
 76     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
 77         <property name="basePackage" value="com.puhj.hdm.dao"/>
 78         <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
 79     </bean>
 80     <!--聲明試事物-->
 81     <!--事物管理器-->
 82     <bean id="transcationManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
 83         <property name="dataSource" ref="dataSource"/>
 84     </bean>
 85     <!--通知-->
 86     <tx:advice id="txAdvice" transaction-manager="transcationManager">
 87         <tx:attributes>
 88             <tx:method name="get*" read-only="true"/>
 89             <tx:method name="find*" read-only="true"/>
 90             <tx:method name="search*" read-only="true"/>
 91             <tx:method name="*" propagation="REQUIRED"/>
 92         </tx:attributes>
 93     </tx:advice>
 94     <!--植入-->
 95     <aop:config>
 96         <!--配置切入點為com.puhj.hdm.service包下的任意類里的任意方法並且任意參數-->
 97         <aop:pointcut id="txPointcut" expression="execution(* com.puhj.hdm.service.*.*(..))"/>
 98         <aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut"/>
 99     </aop:config>
100     <!--
101         配置視圖轉換器,比如訪問login.jsp頁面,只需要寫login,
102         前綴和后綴都在bean里面的prefix和suffix屬性配置好了
103     -->
104     <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
105         <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
106         <property name="prefix" value="/WEB-INF/pages/"/>
107         <property name="suffix" value=".jsp"/>
108     </bean>
109     <!--
110         配置SpringMVC自帶的登陸攔截器對登陸請求過濾,效果和Filter一樣:
111         使用自定義類LoginInterceptor並且實現接口HandlerInterceptor來處理請求攔截
112     -->
113     <mvc:interceptors>
114         <mvc:interceptor>
115             <!--/**為攔截所有請求-->
116             <mvc:mapping path="/**"/>
117             <bean class="com.imooc.hdm.global.LoginInterceptor"/>
118         </mvc:interceptor>
119     </mvc:interceptors>
120 </beans>

 

2.pom.xml依賴配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>bookmgrpro</artifactId>
        <groupId>com.imooc</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>service</artifactId>

    <dependencies>
        <!--mysql驅動依賴-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.41</version>
        </dependency>
        <!--mybatis包依賴-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.3</version>
        </dependency>
        <!--mybatis整合spring包依賴-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.3.1</version>
        </dependency>
        <!--tx通知依賴-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>5.1.5.RELEASE</version>
        </dependency>
        <!--spring-jdbc依賴-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>5.1.5.RELEASE</version>
        </dependency>
        <!--aspectj依賴-->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.9.4</version>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>1.9.4</version>
        </dependency>
        <!--
            springmvc依賴
            引入spring-webmvc依賴后則無需再單獨引入spring的beans、core、context、aop、web等依賴了
        -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.1.5.RELEASE</version>
        </dependency>
        <!--web應用相關依賴-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.0</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
    </dependencies>
</project>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM