在Java中,可以使用以下兩種方式來處理和管理事務:
Connection conn = null;
try {
conn = getConnection();
conn.setAutoCommit(false);
// 執行數據庫操作
conn.commit();
} catch (SQLException e) {
if (conn != null) {
conn.rollback();
}
} finally {
if (conn != null) {
conn.setAutoCommit(true);
conn.close();
}
}
@Service
@Transactional
public class UserService {
@Autowired
private UserDao userDao;
public void addUser(User user) {
userDao.addUser(user);
}
}
在上述示例中,通過在Service類上添加@Transactional注解,Spring會自動管理該類中的所有方法的事務。當方法執行時,如果發生異常,事務將會回滾。