SpringMVC+Mybatis+Maven框架配置文件介绍

主要为几个配置文件:spring.xml,spring-bean.xml,spring-mvc.xml,mybatis-config.xml,generatorConfig.xml

spring.xml如下所示:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns=""xmlns:tx="" xmlns:aop=""xmlns:context="" xmlns:p=""xmlns:mvc="" xmlns:xsi=""xsi:schemaLocation=" "><import resource="spring-bean.xml" /><!– 引入数据库属性文件 –><context:property-placeholder location="classpath:properties/db.properties" /><!– 配置datasource数据源 –><bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource"init-method="init" destroy-method="close"><property name="url" value="${jdbc.url}" /><property name="username" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /><!– 初始化连接大小 –><property name="initialSize" value="0" /><!– 连接池最大使用连接数量 –><property name="maxActive" value="20" /><!– 连接池最大空闲 –><property name="maxIdle" value="20" /><!– 连接池最小空闲 –><property name="minIdle" value="0" /><!– 获取连接最大等待时间 –><property name="maxWait" value="60000" /><!– <property name="poolPreparedStatements" value="true" /> <propertyname="maxPoolPreparedStatementPerConnectionSize" value="33" /> –><!– <property name="validationQuery" value="${validationQuery}" /> –><property name="testOnBorrow" value="false" /><property name="testOnReturn" value="false" /><property name="testWhileIdle" value="true" /><!– 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 –><property name="timeBetweenEvictionRunsMillis" value="60000" /><!– 配置一个连接在池中最小生存的时间,,单位是毫秒 –><property name="minEvictableIdleTimeMillis" value="25200000" /><!– 打开removeAbandoned功能 –><property name="removeAbandoned" value="true" /><!– 1800秒,也就是30分钟 –><property name="removeAbandonedTimeout" value="1800" /><!– 关闭abanded连接时输出错误日志 –><property name="logAbandoned" value="true" /><!– 监控数据库 –><!– <property name="filters" value="stat" /> –><property name="filters" value="mergeStat" /></bean><!– 配置mybatis –><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource" /><property name="configLocation" value="classpath:mybatis/mybatis-config.xml" /></bean><!– 配置事物管理 –><bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource" /></bean><tx:annotation-driven transaction-manager="transactionManager" /><!– 配置druid监控spring jdbc –><!– <bean id="druid-stat-interceptor" –><!– class="com.alibaba.druid.support.spring.stat.DruidStatInterceptor"></bean> –><!– <bean id="druid-stat-pointcut" class="org.springframework.aop.support.JdkRegexpMethodPointcut" –><!– scope="prototype"> –><!– <property name="patterns"> –><!– <list> –><!– <value>com.fafa.service.*</value> –><!– </list> –><!– </property> –><!– </bean> –><!– <aop:config> –><!– <aop:advisor advice-ref="druid-stat-interceptor" –><!– pointcut-ref="druid-stat-pointcut" /> –><!– </aop:config> –></beans>

根据配置,事物管理只需要在service层的方法前加上注解

@Transactional(propagation = Propagation.SUPPORTS, rollbackFor = { RuntimeException.class, Exception.class })

即可利用spring的事物管理进行完整性事物控制,包括回滚、重做等。

spring-baen.xml文件如下:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns=""xmlns:xsi="" xmlns:context=""xsi:schemaLocation=""><!– 自动扫描(自动注入) –><context:component-scan base-package="com.fafa.service" /><!– 扫描mapper接口,自动生成代理类 –><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.xxxx.mapper" /><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /></bean></beans>spring-mvc的文件如下:<?xml version="1.0" encoding="UTF-8"?><beans xmlns=""xmlns:mvc="" xmlns:xsi=""xmlns:p="" xmlns:context=""xsi:schemaLocation=" "><!– 自动扫描controller包下所有的类 –><context:component-scan base-package="com.xxxx.controller" /><!– 开启注解 –><mvc:annotation-driven /><!– springMVC注解映射 –><beanclass="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"><property name="messageConverters"><list><beanclass="org.springframework.http.converter.ByteArrayHttpMessageConverter" /><beanclass="org.springframework.http.converter.StringHttpMessageConverter"><property name="supportedMediaTypes"><list><value>text/plain;charset=UTF-8</value></list></property></bean><beanclass="org.springframework.http.converter.ResourceHttpMessageConverter" /><beanclass="org.springframework.http.converter.xml.SourceHttpMessageConverter" /><beanclass="org.springframework.http.converter.xml.XmlAwareFormHttpMessageConverter" /><beanclass="org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter" /></list></property></bean><span style="white-space:pre"></span><!– Spring-mvc.xml 添加文件上载支持 <span style="white-space:pre"></span>如果使用这个组件必须导入fileupload包!<span style="white-space:pre"></span>ID 必须为 multipartResolver–><span style="white-space:pre"></span><bean id="multipartResolver"<span style="white-space:pre"></span>class="org.springframework.web.multipart.commons.CommonsMultipartResolver"><span style="white-space:pre"></span><!– 限制上载文件的大小是 102400 Byte<span style="white-space:pre"></span>也就是 100K Byte–><span style="white-space:pre"></span><property name="maxUploadSize"<span style="white-space:pre"></span>value="102400"/><span style="white-space:pre"></span><!– 将异常推迟到 控制器中处理 –><span style="white-space:pre"></span><property name="resolveLazily"<span style="white-space:pre"></span>value="true"/><span style="white-space:pre"></span></bean><!– 前缀与后缀设置 –><bean id="viewResolver"class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/" /><property name="suffix" value=".jsp" /></bean><!– 静态资源访问 –><mvc:resources location="/fafa/" mapping="/fafa/**" /><mvc:resources location="/css/" mapping="/css/**" /><mvc:resources location="/js/" mapping="/js/**" /><mvc:resources location="/images/" mapping="/images/**" /><span style="white-space:pre"></span><bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/> <span style="white-space:pre"></span><bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/> <span style="white-space:pre"></span><mvc:default-servlet-handler />  </beans>自信是一个人的胆,有了这个胆,你就会所向披靡!

SpringMVC+Mybatis+Maven框架配置文件介绍

相关文章:

你感兴趣的文章:

标签云: