主页 > 知识库 > JSP 中spring事务配置详解

JSP 中spring事务配置详解

热门标签:Mysql连接数设置 服务器配置 阿里云 科大讯飞语音识别系统 银行业务 电子围栏 团购网站 Linux服务器

JSP 中spring事务配置详解

前几天被问到,如何防止服务器宕机,造成的数据操作的不完全。

问了一下同事,是事务。哎,恍然大悟,迷糊一时了。

声明式的事务配置,这个是最推荐的,配置到service层。

?xml version="1.0" encoding="UTF-8"?>
beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:context="http://www.springframework.org/schema/context"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
  xmlns:tx="http://www.springframework.org/schema/tx"
  xsi:schemaLocation="
  http://www.springframework.org/schema/beans 
  http://www.springframework.org/schema/beans/spring-beans.xsd
  http://www.springframework.org/schema/tx
  http://www.springframework.org/schema/tx/spring-tx.xsd
  http://www.springframework.org/schema/context
  http://www.springframework.org/schema/context/spring-context.xsd
  http://www.springframework.org/schema/aop
  http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">
  
  !-- 使用annotation @Repository,@Service自动注册bean, 并保证@Required、@Autowired的属性被注入的包范围 -->
  context:component-scan base-package="com.rd,com.rongdu"/>
  context:annotation-config/>
  

  bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close">
    !-- Connection Info -->
    property name="driverClass" value="com.mysql.jdbc.Driver"/>
    property name="jdbcUrl" value="jdbc:mysql://localhost:3306/sfd?useUnicode=truecharacterEncoding=utf8"/>
    property name="username" value="root"/>
    property name="password" value="123456"/>

    !-- 检查数据库连接池中空闲连接的间隔时间 -->
    property name="idleConnectionTestPeriod" value="4" />
    !-- 连接池中未使用的链接最大存活时间 -->
    property name="idleMaxAge" value="240" />
    !-- 设置每个分区含有connection最大个数 -->
    property name="maxConnectionsPerPartition" value="20" />
    !-- 设置每个分区含有connection最小个数 -->
    property name="minConnectionsPerPartition" value="10" />
    !-- 设置每个分区数 -->
    property name="partitionCount" value="3" />
    !-- 设置分区中的connection增长数量 -->
    property name="acquireIncrement" value="5" />
    property name="statementsCacheSize" value="50"/>
     property name="releaseHelperThreads" value="3"/>
  /bean>

  bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
    property name="dataSource">
      ref bean="dataSource" />
    /property>
  /bean>
  bean id="namedParameterJdbcTemplate" class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate">
    constructor-arg index="0" ref="dataSource"/> 
  /bean>

  bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
     property name="dataSource" ref="dataSource"/>
  /bean>
  
  
  tx:advice id="txAdvice" transaction-manager="txManager">
    tx:attributes>
      tx:method name="add*" propagation="REQUIRED" />
      tx:method name="delete*" propagation="REQUIRED" />
      tx:method name="update*" propagation="REQUIRED" />
      tx:method name="*" propagation="REQUIRED" />

    /tx:attributes>
  /tx:advice>
  
  aop:config>
    aop:pointcut id="allManagerMethod"
      expression="execution(* com.test.service.*.*(..))" />
    aop:advisor advice-ref="txAdvice" pointcut-ref="allManagerMethod" />
  /aop:config>
/beans>

其中,有个通配符是有点问题的。事务在于更新数据时候使用,查询不需要事务。所以直接用* ,这样太过于暴力了。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:
  • JSP 获取spring容器中bean的两种方法总结
  • JSP开发中在spring mvc项目中实现登录账号单浏览器登录
  • Spring boot 跳转到jsp页面的实现方法
  • SpringBoot创建JSP登录页面功能实例代码
  • java实现图片上加文字水印(SpringMVC + Jsp)
  • JSP 获取Spring 注入对象示例
  • JSP spring boot / cloud 使用filter防止XSS

标签:衡水 大理 广元 枣庄 萍乡 衢州 蚌埠 江苏

巨人网络通讯声明:本文标题《JSP 中spring事务配置详解》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266