package com.dubboconsumer.dubboConsumer.service.imp;
import com.dubboconsumer.dubboConsumer.Mapper.DemoMapper;
import com.dubboconsumer.dubboConsumer.model.User;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
@Service
@Transactional
public class DemoService {
@Resource
private DemoMapper demoMapper;
public void A(){
for (int i = 1;i<5;i++){
try {
this.B(i);
}catch (Exception e){
e.printStackTrace();
}
}
}
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void B(int i){//可能发生异常的方法B
User user = new User();
if (i==2){
user.setId(2);
user.setName("No"+i);
user.setAge(i);
demoMapper.insertUser(user);//往user表插入一条用户记录
int a = 1/0;//抛出ArithmeticException异常
}else {
user.setId(i);
user.setName("Yes"+i);
user.setAge(i);
demoMapper.insertUser(user);
}
}
}