ssm项目之删除员工

删除可以分为单个删除和批量删除

一、单个删除

employeeController.java

/**
     * 删除员工
     * @param id
     * @return
     */
    @ResponseBody
    @RequestMapping(value="/emp/{id}", method=RequestMethod.DELETE)
    public Msg deleteEmpById(@PathVariable("id")Integer id) {
        //Integer id = Integer.parseInt(id);
        employeeService.deleteEmp(id);
        return Msg.success();
    }

employeeService.java

/**
     * 员工删除
     * @param id
     */
    public void deleteEmp(Integer id) {
        employeeMapper.deleteByPrimaryKey(id);

    }

index.jsp

//单个删除
    $(document).on("click",".delete_btn", function(){
        //1、弹出确认删除对话框
        var empName = $(this).parents("tr").find("td:eq(2)").text();
        var empId = $(this).attr("del-id");
        if(confirm("确认删除【" + empName + "】吗?")) {
            //确认,发送 Ajax
            $.ajax({
                url: "${APP_PATH}/emp/" + empId,
                type: "DELETE",
                success: function(result) {
                    alert(result.msg);
                    //回到本页
                    to_page(currentPage);
                }
            });
        }
    });

二、批量删除

先完成前面那个点击最上面全选全不选的功能

//完成全选全不选
    $("#check_all").click(function() {
        //prop修改和读取原生dom属性的值
        $(".check_item").prop("checked", $(this).prop("checked"));
    });

    $(document).on("click",".check_item", function() {
        var flag = $(".check_item:checked").length == $(".check_item").length;
        $("#check_all").prop("checked", flag);
    });

点击批量删除

//点击全部删除,就批量删除
    $("#emp_delete_all_btn").click(function() {
        var empNames = "";
        var del_idstr = "";
        $.each($(".check_item:checked"), function() {
            empNames += $(this).parents("tr").find("td:eq(2)").text() + ",";
            del_idstr += $(this).parents("tr").find("td:eq(1)").text() + "-";
        });
        empNames = empNames.substring(0, empNames.length - 1);
        del_idstr = del_idstr.substring(0, del_idstr.length - 1);
        if(confirm("确认删除【" + empNames + "】吗?")) {
            $.ajax({
                url:"${APP_PATH}/emp/" + del_idstr,
                type:"DELETE",
                success:function(result) {
                    alert(result.msg);
                    to_page(currentPage);
                }
            });
        }
    });

批量删除的直接用横杠拼接起来,单个删除和批量删除放在一起处理

EmployeeController.java

/**
     * 单个或批量删除员工
     * @param id
     * @return
     */
    @ResponseBody
    @RequestMapping(value="/emp/{ids}", method=RequestMethod.DELETE)
    public Msg deleteEmpById(@PathVariable("ids")String ids) {
        //批量删除
        if(ids.contains("-")) {
            List<Integer> del_ids = new ArrayList<>();
            String[] str_ids = ids.split("-");
            for(String string : str_ids) {
                del_ids.add(Integer.parseInt(string));
            }
            employeeService.deleteBatch(del_ids);
        } else {
            //单个删除
            Integer id = Integer.parseInt(ids);
            employeeService.deleteEmp(id);
        }

        return Msg.success();
    }

EmployeeService.java

/**
     * 员工单个删除
     * @param id
     */
    public void deleteEmp(Integer id) {
        employeeMapper.deleteByPrimaryKey(id);

    }
    /**
     * 批量删除
     * @param ids
     */
    public void deleteBatch(List<Integer> ids) {
        EmployeeExample example = new EmployeeExample();
        Criteria criteria = example.createCriteria();
        //delete from xxxx where emp_id in (1,2,3)
        criteria.andEmpIdIn(ids);
        employeeMapper.deleteByExample(example);

    }

测试

单个

批量

这样CRUD就做完了,不过Controller里的一些逻辑啥的最好放在Service层,毕竟Service层才是主要写逻辑的,反正怎么顺手怎么来吧

时间: 2024-10-05 05:11:57

ssm项目之删除员工的相关文章

ssm项目之新增员工

点新增按钮会出现新增的窗口,查询bootstrap文档的js里面有案例 表单的样例也可以参照css里面的 在index.jsp 的body最上面加上模态框 <!-- 员工添加模态框 --> <!-- Modal --> <div class="modal fade" id="empAddModal" tabindex="-1" role="dialog" aria-labelledby="

SSM项目整合基本步骤

SSM项目整合 1.基本概念 1.1.Spring Spring 是一个开源框架, Spring 是于 2003  年兴起的一个轻量级的 Java  开发框架,由 Rod Johnson  在其著作 Expert One-On-One J2EE Development and Design 中阐述的部分理念和原型衍生而来.它是为了解决企业应用开发的复杂性而创建的. Spring 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情.然而, Spring 的用途不仅限于服务器端的开

SSM项目整合

SSM项目整合基本步骤 SSM项目整合 1.基本概念 1.1.Spring Spring 是一个开源框架, Spring 是于 2003  年兴起的一个轻量级的 Java  开发框架,由 Rod Johnson  在其著作 Expert One-On-One J2EE Development and Design 中阐述的部分理念和原型衍生而来.它是为了解决企业应用开发的复杂性而创建的. Spring 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情.然而, Spring 的

SQL_编写一个简单的删除员工信息的存储过程

原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明以下出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/43938953 开始实验: (1).查询原始数据,使用scott用户进行试验 SQL> select  t.*,  t.rowid  from  EMP  t (2).编写存储过程并执行,如下: create  or  replace procedure  P_d

IntelliJ IDEA通过maven构建ssm项目找不到mapper

idea运行ssm项目的时候一直报错 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 原因: 部署后target里面没有mybatis的配置文件*.xml 解决方法:在pom.xml中通过maven强制将*.xml文件一起发布 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins&

简单搭建一个SSM项目

简单搭建一个用户管理的SSM项目框架,虽然也能用servlet+jdbc搭建更简单的,不过个人感觉工作中更多用的ssm框架项目,这里就简单用ssm来搭建需要的项目吧. 准备工具:eclipse.jdk1.7.Mysql.maven.tomcat.(请先确定计算机本身已安装好前面几个工具,myeclipse自动集成maven,eclipse需要自己先配置,具体配置请自行百度) 这里先把项目的目录结构显示下 好的,现在开始 File->new->other->maven project Ne

Maven 搭建 SSM 项目 (oracle)

简单谈一下maven搭建 ssm 项目 (使用数据库oracle,比 mysql 难,所以这里谈一下) 在创建maven 的web项目时,常常会缺了main/java , main/test 两个文件夹. 解决方法: ① : 在项目上右键选择properties,然后点击java build path,在Librarys下,编辑JRE System Library,选择workspace default jre就可以了. (推荐使用这种) ② :手动创建 目录.切换视图采用Navigator视图

java SSM项目搭建-- The server time zone value &#39;?й???????&#39; is unrecognized or represents more than one time zone

出现  错误 The server time zone value '?й???????' is unrecognized or represents more than one time zone 找到jdbc 数据库连接字符串, 加上?serverTimezone=UTC ?serverTimezone=UTC <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManager

idea导入ssm项目启动tomcat报错404

用idea写ssm项目,基于之前一直在用spring boot  对于idea如何运行ssm花费了一番功夫 启动Tom act一直在报404 我搜了网上各种解决办法都不行,花费一天多的时间解决不了 就是在pom中添加下面代码 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin&l