applicationContext.xml各作用

来源:互联网 发布:视频制作软件 爱剪辑 编辑:程序博客网 时间:2024/06/08 07:32

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"

xmlns:c="http://www.springframework.org/schema/c" xmlns:cache="http://www.springframework.org/schema/cache"

xmlns:context="http://www.springframework.org/schema/context"

xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:jee="http://www.springframework.org/schema/jee"

xmlns:lang="http://www.springframework.org/schema/lang" xmlns:mvc="http://www.springframework.org/schema/mvc"

xmlns:p="http://www.springframework.org/schema/p" xmlns:task="http://www.springframework.org/schema/task"

xmlns:tx="http://www.springframework.org/schema/tx" xmlns:util="http://www.springframework.org/schema/util"

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

http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd

http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd

http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc.xsd

http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd

http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang.xsd

http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd

http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd

http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd

http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">

作用一:<!--加载外部的properties配置文件-->配数据库

 

<!-- maven下不能用这种方式,只能用第二种方式 -->

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

/> -->

<bean

class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

<property name="locations">

<list>

<value>classpath:jdbc.properties</value>

</list>

</property>

</bean>

 

<!-- 自动扫描与装配bean -->

<context:component-scan base-package="*.*.*" />

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"

init-method="init" destroy-method="close">

<!-- 基本属性 urluserpassword -->

<property name="url" value="${*}" />

<property name="username" value="${username}" />

<property name="password" value="${password}" />

<!-- 配置初始化大小、最小、最大 -->

<property name="initialSize" value="1" />

<property name="minIdle" value="1" />

<property name="maxActive" value="20" />

 

<!-- 配置获取连接等待超时的时间 -->

<property name="maxWait" value="60000" />

 

<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->

<property name="timeBetweenEvictionRunsMillis" value="60000" />

 

<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->

<property name="minEvictableIdleTimeMillis" value="300000" />

 

<property name="validationQuery" value="SELECT 'x'" />

<property name="testWhileIdle" value="true" />

<property name="testOnBorrow" value="false" />

<property name="testOnReturn" value="false" />

 

<!-- 打开PSCache,并且指定每个连接上PSCache的大小-->

<property name="poolPreparedStatements" value="true" />

<property name="maxPoolPreparedStatementPerConnectionSize"

value="20" />

 

<!-- 配置监控统计拦截的filters -->

<property name="filters" value="mergeStat" />

</bean>

 

<!-- 配置druid监控spring jdbc -->

<bean id="druid-stat-interceptor"

class="com.alibaba.druid.support.spring.stat.DruidStatInterceptor" />

<bean id="druid-stat-pointcut" class="org.springframework.aop.support.JdkRegexpMethodPointcut"

scope="prototype">

<property name="patterns">

<list>

<value>org.bigdatacn.sfgk.wlzbs.service.*</value>

</list>

</property>

</bean>

<aop:config>

<aop:advisor advice-ref="druid-stat-interceptor"

pointcut-ref="druid-stat-pointcut" />

</aop:config>

 

作用二:<!--开启spring缓存-->

<cache:annotation-driven cache-manager="cacheManager" />

<bean id="cacheManagerFactory"

class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"

p:configLocation="classpath:ehcache.xml" p:shared="false" />

<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"

p:cacheManager-ref="cacheManagerFactory" />

 

 作用三:性能优化

<!-- 监控daoservice的执行情况-->

<bean id="facadeMonitoringAdvisor" class="net.bull.javamelody.MonitoringSpringAdvisor">

<property name="pointcut">

<bean class="org.springframework.aop.support.JdkRegexpMethodPointcut">

<property name="patterns">

<array>                          

<value>org\.bigdatacn\.sfgk\.wlzbs\.dao\..*</value>

<value>org\.bigdatacn\.sfgk\.wlzbs\.daoImpl\..*</value>

<value>org\.bigdatacn\.sfgk\.wlzbs\.service\..*</value>

<value>org\.bigdatacn\.sfgk\.wlzbs\.view\.service\..*</value>

<value>org\.bigdatacn\.sfgk\.wlzbs\.view\.serviceImpl\..*</value>

</array>

</property>

</bean>

</property>

</bean>

 

作用四:<!--配置SessionFactory -->,导入hibranate.cfg.xlm

<bean id="sessionFactory"

class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

<property name="dataSource" ref="dataSource"></property>

<property name="configLocation" value="classpath:hibernate.cfg.xml"></property>

</bean>

 

作用五: <!-- 配置声明式的事务管理(采用基于注解的方式)-->

<bean id="transactionManager"

class="org.springframework.orm.hibernate3.HibernateTransactionManager">

<property name="sessionFactory" ref="sessionFactory" />

</bean>

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

 

 

</beans>

原创粉丝点击