67,550
社区成员




<!-- 数据库连接池配置 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"><value>oracle.jdbc.driver.OracleDriver</value></property>
<property name="url"><value>jdbc:oracle:thin:@localhost:1521:orcl</value></property>
<property name="username"><value>root</value></property>
<property name="password"><value>root</value></property>
</bean>
<!-- Spring 事务管理 -->
<bean id="dbTransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<!-- 配置Spring的事务代理 -->
<bean id="accountservice" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" >
<property name="transactionManager" ref="dbTransactionManager"/>
<property name="target" ref="testDaoImpl"/>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED,-Exception</prop>
</props>
</property>
</bean>
public void insertStudent(){
try{
String sql = "insert into student (snum, sname, sage, ssex) values('9','test1','39','男')";
jdbcTemplate.update(sql);
jdbcTemplate.update(sql);
}catch(Exception exception){
exception.printStackTrace();
}
}
public void insertStudent(){
DefaultTransactionDefinition td = new DefaultTransactionDefinition(
TransactionDefinition.PROPAGATION_REQUIRED);
td.setIsolationLevel(TransactionDefinition.ISOLATION_SERIALIZABLE);
td.setTimeout(10);
TransactionStatus status = transactionManager.getTransaction(td);
try{
String sql = "insert into student (snum, sname, sage, ssex) values('10','test1','39','男')";
jdbcTemplate.update(sql);
jdbcTemplate.update(sql);
}catch(Exception exception){
transactionManager.rollback(status);
exception.printStackTrace();
}
}
先注释掉这段;
<!--
<bean id="accountservice" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" >
<property name="transactionManager" ref="dbTransactionManager"/>
<property name="target" ref="testDaoImpl"/>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED,-Exception</prop>
</props>
</property>
</bean>
-->
@Transactional
public void insertStudent(){
try{
String sql = "insert into student (snum, sname, sage, ssex) values('9','test1','39','男')";
jdbcTemplate.update(sql);
jdbcTemplate.update(sql);
}catch(Exception exception){
exception.printStackTrace();
}
}