当前位置: 代码迷 >> J2EE >> spring+aop事务配置失败有关问题,大家帮忙分析下
  详细解决方案

spring+aop事务配置失败有关问题,大家帮忙分析下

热度:75   发布时间:2016-04-22 02:05:20.0
spring+aop事务配置失败问题,大家帮忙分析下
接口:
Java code
 
public interface UserService {   
public void addUser(String username, String password);   
 
public void deleteUser(int id);   
 
public void updateUser(int id, String username);   
 
public List queryUser(String username);   


接口的实现:
Java code
 
public class UserServiceImpl implements UserService {     
    private DataSource dataSource;     
    public void addUser(String username, String password) {     
        //正确的sql     
        String sql = "insert into aaa (t1,t2,t3) values (seq_food.nextval,'"+username+"','"+password+"')";     
        System.out.println(sql);     
        JdbcTemplate jdbcTemplate = new JdbcTemplate(getDataSource());     
        jdbcTemplate.update(sql); 
    }     
   
    public void deleteUser(int id) {     
   
    }     
   
    public void updateUser(int id, String username) {     
        //错误的sql,测试回滚     
        String sql = "update aa set t2='"+username+"' where t1='"+id+"'";     
        System.out.println(sql);     
        JdbcTemplate jdbcTemplate = new JdbcTemplate(getDataSource());     
        jdbcTemplate.update(sql);     
    }     
   
    public List queryUser(String username) {     
   
        return null;     
    }     
   
    public DataSource getDataSource() {     
        return dataSource;     
    }     
   
    public void setDataSource(DataSource dataSource) {     
        this.dataSource = dataSource;     
    }     
   
}

测试servlet:
Java code
public class UserServlet extends HttpServlet {                         public void doGet(HttpServletRequest request, HttpServletResponse response)                  throws ServletException, IOException {                   doPost(request, response);          }                         public void doPost(HttpServletRequest request, HttpServletResponse response)                  throws ServletException, IOException {              request.setCharacterEncoding("utf-8");              response.setContentType("text/html; charset=utf-8");              ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(getServletContext());              try {                  UserService userService = (UserService) ctx.getBean("userService");                  userService.addUser("1", "2");                  userService.updateUser(10032190, "zf");              } catch (DataAccessException e) {                  e.printStackTrace();              }                        }           }
  相关解决方案