• SSM项目spring配置文件详细步骤(分门别类、灵巧记忆)


    spring-dao.xml文件

    1.配置外部db.property文件:

    <context:property-placeholder location="classpath:jdbc.properties"/>

      或者

    <context:property-overdide location="classpath:db.property">
    

      区别在于:

    property-override标签的作用是为xml配置文件中的bean的属性指定最终结果;而property-placeholder标签的作用是把xml配置文件中bean 的<property>标签的value值替换成正真的值。一般情况下都是可以通用的。

    2.配置数据源DataSource,最常用的就是c3p0:

    需要使用value="${jdbc.driverClass}"

    这样的格式。

    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <property name="driverClass" value="${jdbc.driverClass}"/>
            <property name="jdbcUrl" value="${jdbc.jdbcUrl}"/>
            <property name="user" value="${jdbc.user}"/>
            <property name="password" value="${jdbc.password}"/>
        </bean>
    

    3.配置sqlSessionFactory,该bean是mybatis社区开发用于整合spring的bean:

     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
            <!--注入数据库连接池-->
            <property name="dataSource" ref="dataSource"/>
            <!--配置mybatis全局配置文件:mybatis-config.xml-->
            <property name="configLocation" value="classpath:mybatis-config.xml"/>
            <!--扫描entity包,使用别名,多个用;隔开-->
    设置这个,那么在Mapper文件里面就可以直接写对应的类名 而不用写全路径名了  <property name="typeAliasesPackage" value="org.seckill.entity"/> <!--扫描sql配置文件:mapper需要的xml文件--> <property name="mapperLocations" value="classpath:mapper/*.xml"/> </bean>

      或者用p标签声明数据源:

     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" p:dataSource-ref="dataSource"/>

    其中的mybatis的全局配置文件可以不配,使用默认的mybatis配置。另外,要使用xml配置mapper,需要配置mapperlocations,否则直接用注解配置mapper的话就不需要,仅仅需要第四部即可。

    4.配置自动扫描dao接口包,动态实现dao接口,注入到spring容器。可以用完整的配置,如下:

     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <!--注入SqlSessionFactory-->
            <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
            <!-- 给出需要扫描的Dao接口-->
            <property name="basePackage" value="org.seckill.dao"/>
        </bean>
    

      也可以使用简化版配置:

    <mybatis:scan base-package="com.imqsl.dao"/>
    

      

    spring-service.xml文件

    该配置文件主要是配置一下JDBC事务以及扫描service包。具体如下:

    1.扫描service包下所有使用注解的类型

    <context:component-scan base-package="org.seckill.service"/>
    

    2.配置事务管理器

     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
            <!--注入数据库连接池-->
            <property name="dataSource" ref="dataSource"/>
        </bean>
    

    3.配置基于注解的声明式事务

    <tx:annotation-driven transaction-manager="transactionManager"/>
    

    spring-web.xml文件

    1.开启springMVC注解,简化配置

    主要提供了以下功能:

    (1)自动注册DefautAnnotationHandlerMapping,AnnotationMethodHandlerAdapter
    (2) 提供一系列:数据绑定,数字和日期的format @NumberFormat,@DataTimeFormat,
    xml,json默认读写支持
    <mvc:annotation-driven/>
    

    2.静态资源默认servlet配置

    主要提供了以下功能:

    (1):加入对静态资源的处理:js,gif,png
    (2):允许使用"/"做整体映射
     <mvc:default-servlet-handler/>
    
    
    

    3.配置jsp 显示viewResolver

    配置前缀后缀与jstl支持

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
            <property name="prefix" value="/WEB-INF/jsp/"/>
            <property name="suffix" value=".jsp"/>
        </bean>
    

    4.自动扫描

    <context:component-scan base-package="com.imqsl.controller"/>
    

    此外,mybatis的配置文件(可配可不配,根据需求)

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE configuration
            PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
            "http://mybatis.org/dtd/mybatis-3-config.dtd">
    
    <configuration>
    
        <settings>
            <!--使用jdbc的getGeneratedKeys 获取数据库的自增主键值-->
            <setting name="useGeneratedKeys" value="true"/>
            <!--使用别名替换列名 默认true
            select name as title from table
            -->
            <setting name="useColumnLabel" value="true"/>
            <!--开启驼峰命名转换-->
            <setting name="mapUnderscoreToCamelCase" value="true"/>
    
        </settings>
    
    
    
    </configuration>
    

    web.xml配置文件的一般格式:

    <servlet>
     <!--定义springmvc的前端控制器-->
    <servlet-name>seckill-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param>
    <!--contextConfigLocation参数用来指定spring的配置文件--> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/spring-*.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>seckill-dispatcher</servlet-name> <!--默认匹配所有的请求--> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
  • 相关阅读:
    我的收藏
    VS2019错误:CS8370 的处理方法
    Win7设置远程访问(免密码)---- Cuba
    【收藏】关于AsposeDLL的使用
    VS Code 离线安装插件(中文包)
    WinCE在启动界面无法进入系统
    WinCE 清除远程连接缓存
    MySQL 创建远程访问用户
    MySQL 命令行(常用)操作数据库
    C# 制作关键字醒目显示控件
  • 原文地址:https://www.cnblogs.com/imqsl/p/7474608.html
Copyright © 2020-2023  润新知