SSM框架配置文件整理(一) applicationContext.xml

1.applicationContext.xml配置文件在web项目中的作用

  • spring容器创建
  • 数据注入
  • 连接数据库
  • 引入外部数据文件

以及其他对数据交互、连接外部服务的功能
这些功能是完成SSM框架对web项目作用的基础

2.applicationContext.xml配置文件的组成部分

  1. 表头header
<?xml version="1.0" encoding="UTF-8"?>

version——声明xml版本号
encoding——声明xml传输数据编码
UTF-8——声明编码格式

  1. beans实例声明
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context-4.3.xsd
		http://www.springframework.org/schema/tx
		http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">
		
		配置内容……
		
</beans>

解释:
【xmlns=“http://www.springframework.org/schema/beans”】

声明xml文件默认的命名空间,表示未使用其他命名空间的所有标签的默认命名空间。

【xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”】

声明XML Schema实例,声明后就可以使用schemaLocation属性。

【xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd】

指定Schema的位置这个属性必须结合命名空间使用。这个属性有两个值,第一个值表示需要使用的命名空间。第二个值表示供命名空间使用的XML schema的位置。

上面配置的命名空间指定xsd规范文件,这样你在进行下面具体配置的时候就会根据这些xsd规范文件给出相应的提示,比如说每个标签是怎么写的,都有些什么属性是都可以智能提示的,在启动服务的时候也会根据xsd规范对配置进行校验。

配置技巧:对于属性值的写法是有规律的,中间使用空格隔开,后面的值是前面的补充,也就是说,前面的值是去除了xsd文件后得来的。

以上解释取自

https://blog.csdn.net/tanga842428/article/details/78572708

我们可以看到在xsi中所配置的实例一定是与xmlns声明相对应

  1. 配置内容

<!--    引入数据源文件-->

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

<!--    配置数据源-->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<!--        注入相关数据-->
        <property name="driverClass" value="${jdbc.driver}"/>
        <property name="jdbcUrl" value="${jdbc.url}"/>
        <property name="user" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="maxPoolSize" value="30"/>
        <property name="minPoolSize" value="2"/>
    </bean>

<!--配置SqlSessionFactory对象-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--       产生sqlSession会话,连接数据库-->
        <property name="dataSource" ref="dataSource"/>
<!--       自动配置实体类别名 -->
        <property name="typeAliasesPackage" value="com.zjitc.bean"/>
<!--       自动加载mapper配置-->
        <property name="mapperLocations">
<!--       用数组的方式进行多个mapper进行自动加载-->
            <array>
                <value>classpath:mapper/UserMapper.xml</value>
                <value>classpath:mapper/HouseMapper.xml</value>
            </array>
        </property>

<!--    配置pageHelper分页插件-->
        <property name="plugins">
            <array>
<!--             加载PageInterceptor,传入插件对象-->
                <bean class="com.github.pagehelper.PageInterceptor">
<!--                    加载数据注入-->
                    <property name="properties">
                        <props>
<!--                            自动监测数据库连接-->
                            <prop key="helperDialect">mysql</prop>
<!--
分页合理化参数,默认值为 false 。
当该参数设置为 true 时, pageNum<=0 时会查询第一页,pageNum>pages (超过总数时),会查询最后一页。
默认 false 时,直接根据参数进行查询。
-->
                            <prop key="reasonable">true</prop>
                        </props>
                    </property>
                </bean>
            </array>
        </property>
<!--开启驼峰命名,对数据库中的字段以及实体类取消大小写以及特殊符号,以保证能够实体类与数据库互通-->
        <property name="configuration">
            <bean class="org.apache.ibatis.session.Configuration">
                <property name="mapUnderscoreToCamelCase" value="true"/>
            </bean>
        </property>
    </bean>
<!--Mapper扫描器,扫描映射器并且开启sqlSession会话-->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.zjitc.dao"/>
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
    </bean>
<!--包扫描器,对指定包内的所有成员进行扫描,主要针对使用注解的对象进行扫描,自动注册为bean-->
    <context:component-scan base-package="com.zjitc"/>
<!--开启事务管理器,服务端请求数据库时失败,则回滚数据;若成功,则执行sql-->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource"/>
    </bean>
<!--开启事务注解扫描器-->
    <tx:annotation-driven></tx:annotation-driven>

暂且就这些,若有更多将会更新……

你可能感兴趣的:(SSM框架配置文件整理(一) applicationContext.xml)