JSP实现选中删除功能

选中删除


          1.实现所使用到的技术:


                               JavaScript做的复选框的“全选和全不选功能”;

                               form表单提交;

                               使用Bootstrap框架,在超链接按钮做提交按钮时,使用JavaScript:void(0)使href属性失效;

                               复选框的默认值value的设置;

                               确认框(提示框)的使用confirm("您确定抛弃我们吗?")。

           2.核心代码:  

  
                    
           全选/全不选        

  function checkAll(obj) {
        var flag = obj.checked;
        //alert(flag);
        var items = document.getElementsByClassName("item");
        for(var i in items){
            items[i].checked=flag;
        }
   }
                               web层

String[] ids = request.getParameterValues("ids");
ContactService contactService = new ContactService();
contactService.delAll(ids);
//删除成功后,重定向 查询所有联系人信息
response.sendRedirect(request.getContextPath()+"/findAll");


                              service层

public void delAll(String[] ids) throws Exception{
    //1.获取连接池对象
    DataSource dataSource = JDBCUtils.getDataSource();
    //2.创建jdbcTemplate实例 // template从连接池中获取一个连接 conn1
    JdbcTemplate template = new JdbcTemplate(dataSource);

    //3.启动事务管理器(将conn和当前线程做绑定)
    TransactionSynchronizationManager.initSynchronization();
    //4.获取连接 : 获取JdbcTemplate所使用的连接对象
    Connection conn = DataSourceUtils.getConnection(dataSource);  // conn1
    try {
        //5.将连接的事务,设置为手动事务提交
        conn.setAutoCommit(false);

        //===== 业务处理
        for(String id:ids){ // [1,2,....]
            contactDao.delById(id,template);
        }

        // 提交事务
        conn.commit();
    } catch (Exception e) {
        e.printStackTrace();
        // 事务回顾
        try {
            conn.rollback();
        } catch (SQLException e1) {
            e1.printStackTrace();
        }
        // 将异常抛给调用者,告知执行失败
        throw e;
    } finally {
        // 将conn对象和当前线程解除绑定
        TransactionSynchronizationManager.clearSynchronization();
        // 修改为自动事务提交
        try {
            conn.setAutoCommit(true);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}
                             Dao层

String sql="delete from contact where id=? ";
template.update(sql,id);

                     

           

猜你喜欢

转载自blog.csdn.net/qq_40591439/article/details/84146468