0
点赞
收藏
分享

微信扫一扫

spring配置文件

非宁静不致远 2022-03-16 阅读 117

web.xml

1.配置监听器:加载Spring的配置文件

<listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </context-param>

2.配置前端控制器:加载SpringMvc的配置文件

<servlet>
        <servlet-name>DispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:applicationContext-mvc.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

3.配置过滤器:解决post请求的中文参数乱码问题

<filter>
        <filter-name>EncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>EncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

applicationContext-mvc.xml

1.静态资源放行

<mvc:default-servlet-handler />

2.扫描包路径:上下文组件扫描

<context:component-scan base-package="cn.itsource.controller"></context:component-scan>
 

3.开启Spring对Mvc的支持:能够使用@RequestMapping

<mvc:annotation-driven></mvc:annotation-driven>

4.视图解析器:统一处理【webmvc】

<bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/views/"></property><!-- 前缀 -->
        <property name="suffix" value=".jsp"></property><!-- 后缀 -->
    </bean>

拦截器

<mvc:interceptors>
        <!-- 配置登录拦截器 -->
        <mvc:interceptor>
            <!-- 拦截的路径 
                /**:代表拦截所有路径
                /system/**:以system开头的所有的路径都会拦截
            -->
            <mvc:mapping path="/system/**"/>
            <!-- 放行登录的路径   exclude:排除-->
            <mvc:exclude-mapping path="/system/login"/>
            <!-- 全限定名 -->
            <bean class="cn.itsource.interceptor.LoginInterceptor"></bean>
        </mvc:interceptor>
    </mvc:interceptors>

applicationContext.xml

<!-- 1.加载属性配置文件:如果属性文件中没有前缀,必须加上system-properties-mode="NEVER"  -->
    <context:property-placeholder location="classpath:jdbc.properties" />
    
    <!-- 2.将连接池对象交给Spring去管理 -->
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName" value="${jdbc.driverClassName}"></property>
        <property name="url" value="${jdbc.url}"></property>
        <property name="username" value="${jdbc.username}"></property>
        <property name="password" value="${jdbc.password}"></property>
    </bean>
    
    <!-- 3.将SqlSessionFactory交给Spring去管理  -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <property name="typeAliasesPackage" value="cn.itsource.domain,cn.itsource.query"></property>
        <property name="mapperLocations" value="classpath:cn/itsource/mapper/*Mapper.xml"></property>
    </bean>
    
    <!-- 4.将Mapper接口交给Spring去管理 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <!-- 指定mapper接口的包路径 -->
        <property name="basePackage" value="cn.itsource.mapper"></property>
    </bean>
    
    <!-- 5.扫描包路径 -->
    <context:component-scan base-package="cn.itsource.service"></context:component-scan>
 

举报

相关推荐

0 条评论