springbootpuls增删改查,分页以及批量删详细过程全解

首先是controller层

/**
     * 查询
     * @return
     */
    @RequestMapping("queryRes")
    public List<RecBean> queryRes(RecBean recBean){

        return recService.queryRes(recBean);
    }

    /**
     * 分页查询
     * @param recBean
     * @param page
     * @param rows
     * @return
     */
    @RequestMapping("paginationRes")
    public HashMap<String,Object> paginationRes(
            RecBean recBean,@RequestParam(name = "page",defaultValue = "1")Integer page,@RequestParam(name = "rows",defaultValue = "10")Integer rows){
        return recService.paginationRes(recBean,page,rows);
    }
    /**
     * 删除
     * @param
     */
    @RequestMapping("deletionRes")
    public void deletionRes(Integer recId){
        recService.deletionRes(recId);
    }

    /**
     * 新增
     * @param recBean
     */
    @RequestMapping("addRes")
    public void addRes(RecBean recBean){

        recService.addRes(recBean);
    }

    /**
     * 回显
     * @param
     * @return
     */
    @RequestMapping("echoRes")
    public RecBean echoRes(Integer recId){

        return recService.echoRes(recId);
    }

    /**
     * 修改
     * @param recBean
     */
    @RequestMapping("updateRes")
    public void updateRes(RecBean recBean){
        recService.updateRes(recBean);
    }

    /**
     * 批量删除
     * @param ids
     */
    @RequestMapping("deletionAssRes")
    public void deletionAssRes(String[] ids){
        recService.deletionAssRes(ids);
    }

 接下来是实现类

@Override
    public List<RecBean> queryRes(RecBean recBean) {
        String key="order_doc";
        String key2 ="aa";
        List<RecBean> list = new ArrayList<>();
        Boolean hkey=redisTemplate.opsForHash().hasKey(key,key2);
        if (hkey){
            List<Object> list2 = redisTemplate.opsForHash().values(key);
            for (Object object:list2){
                list= JSONArray.parseArray(JSONArray.toJSONString(object),RecBean.class);
            }
        }else {
            recDao.selectList(null);
            redisTemplate.opsForHash().put(key,key2,list);
        }
        return list;
    }
@Override
    public void deletionRes(Integer recId) {
        String key = "order_doc";
        String key2 ="aa";
        redisTemplate.opsForHash().delete(key, key2);
        recDao.deleteById(recId);
    }
@Override
    public void addRes(RecBean recBean) {

        String key="order_doc";
        String key2="aa";
        Boolean  hkey=redisTemplate.opsForHash().hasKey(key,key2);
        if (hkey) {
            List<RecBean> list=(List<RecBean>)redisTemplate.opsForHash().get(key,key2);
            list.add(recBean);
            redisTemplate.opsForHash().put(key,key2,list);
        }else {
            List<RecBean> list= new ArrayList<>();
            list.add(recBean);
            redisTemplate.opsForHash().put(key,key2,list);
        }
        recDao.insert(recBean);
    }
 @Override
    public RecBean echoRes(Integer recId) {
        /*String key="myString";
        Boolean key1 = redisTemplate.hasKey(key);
        RecBean recBean=null;
        if (key1) {
             recBean = (RecBean) redisTemplate.opsForValue().get(key);
        }else {
             recBean = recDao.selectById(recId);
                redisTemplate.opsForValue().set(key,recBean);
        }
        return recBean;*/
        return recDao.selectById(recId);
    }
 @Override
    public void updateRes(RecBean recBean) {
        String key = "order_doc";
        String key2 ="aa";
        redisTemplate.opsForHash().delete(key, key2);

        List<RecBean> list= new ArrayList<>();
        list.add(recBean);
        redisTemplate.opsForHash().put(key,key2,list);

        recDao.updateById(recBean);
    }
@Override
    public void deletionAssRes(String[] ids) {
        for (String id:ids) {
            recDao.deleteById(id);
        }
    }

接下来是前端:

function delOne(recId) {
    bootbox.confirm({
        size: "small",
        title: "提示",
        message: "是否确认删除??",

        //普通弹框
        buttons: {
            cancel: {
                label: "取消",
                className: "btn-danger glyphicon glyphicon-remove"
            },
            confirm: {
                label: "确定",
                className: "btn-success glyphicon glyphicon-ok"
            }
        },


        callback: function (r) {
            if (r) {
                $.ajax({
                    url: "../rec/deletionRes",
                    type: "post",
                    data: {recId: recId},
                    success: function () {
                        bootbox.alert({
                            size: "small",
                            title: "提示",
                            message: "删除成功!",
                            buttons: {
                                ok: {
                                    label: "确定",
                                    className: "btn-success glyphicon glyphicon-ok"
                                }
                            }
                        });
                        //刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
                        searchData();
                    }
                });
            }
        }
    });
}
function deleteAll(){
    //获取选中的复选框【方法:getSelections】
    var arr = $("#myTable").bootstrapTable("getSelections");
    if(arr==null || arr.length<=0){
        //alert("请至少选中一条数据!!");
        bootbox.alert({
            size:"small",
            title:"提示",
            message:"请至少选中一条数据!!",
            buttons:{
                ok:{
                    label:"确定",
                    className:"btn-success glyphicon glyphicon-ok"
                }
            }
        });
        return;
    }

    //拼接ids
    var ids = "";
    for(var i=0;i<arr.length;i++){
        //alert(arr[i].name);
        ids+= ids==""?arr[i].recId : (","+arr[i].recId);
    }
    $.ajax({
        url:"../rec/deletionAssRes",
        type:"post",
        data:{ids:ids},
        success:function(){
            bootbox.alert({
                size:"small",
                title:"提示",
                message:"删除成功!",
                buttons:{
                    ok:{
                        label:"确定",
                        className:"btn-success glyphicon glyphicon-ok"
                    }
                }
            });
            //刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
            searchData();
        }
    });
}
function openAdd(){
    bootbox.dialog({
        title:"新增简历",
        message:openPage("addShow"),
        buttons:{
            cancel:{
                label:"取消",
                className:"btn-danger glyphicon glyphicon-remove"
            },
            success:{
                label:"保存",
                className:"btn-success glyphicon glyphicon-ok",
                callback:function(){
                    //提交表单
                    $.ajax({
                        url:"../rec/addRes",
                        type:"post",
                        data:$("#addForm").serialize(),
                        success:function(){
                            bootbox.alert({
                                size:"small",
                                title:"提示",
                                message:"新增成功!",
                                buttons:{
                                    ok:{
                                        label:"确定",
                                        className:"btn-success glyphicon glyphicon-ok"
                                    }
                                }
                            });
                            //刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
                            searchData();
                        }
                    });
                }
            }
        }
    });
    uploadImg();
}
function updateRes(recId){
    bootbox.dialog({
        title:"修改简历",
        message:openPage("addShow"),
        buttons:{
            cancel:{
                label:"取消",
                className:"btn-danger glyphicon glyphicon-remove"
            },
            success:{
                label:"保存",
                className:"btn-success glyphicon glyphicon-ok",
                callback:function(){
                    //提交表单
                    $.ajax({
                        url:"../rec/updateRes",
                        type:"post",
                        data:$("#addForm").serialize(),
                        success:function(){
                            bootbox.alert({
                                size:"small",
                                title:"提示",
                                message:"修改成功!",
                                buttons:{
                                    ok:{
                                        label:"确定",
                                        className:"btn-success glyphicon glyphicon-ok"
                                    }
                                }
                            });
                            //刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
                            searchData();
                        }
                    });
                }
            }
        }

    });
    $.ajax({
        url:"../rec/echoRes",
        type:"get",
        data:{recId:recId},
        success:function(data){
            //data:学生对象
            $("#recId2").val(data.recId);
            $("#recName2").val(data.recName);
            $("#recDemand2").val(data.recDemand);
            $("#recAddress2").val(data.recAddress);
            $("#recSeniority2").val(data.recSeniority);
            $("#recLow2").val(data.recLow);
            $("#recHight2").val(data.recHight);
            $("#recEducation2").val(data.recEducation);
            $("#recPicture2").val(data.recPicture);
            uploadImg(data.recPicture);
            $("#testimg").val(data.recPicture);
        }

    });

}
function initTable(){
	$("#myTable").bootstrapTable({
		pagination:true,//开启分页
		sidePagination:"client",//分页方式   前端分页 "client"  后端分页 "server"
		pageSize:5,//每页条数,默认10
		pageList:[1,2,4,10,20],//每页条数的列表
		pageNumber:1,//默认页
		url:"../rec/queryRes",
		columns:[
                 {checkbox:true},
		         {title:"id",field:"recId"},//title:列头、标题  field:域、实体类中的属性名  formatter:格式化 处理特殊值
		         {title:"公司名称",field:"recName"},
		         {title:"招聘需求",field:"recDemand"},
		         {title:"地址",field:"recAddress"},
                 {title:"工作年限",field:"recSeniority"},
                 {title:"最低薪资",field:"recLow"},
                 {title:"最高薪资",field:"recHight"},
                 {title:"学历",field:"recEducation"},
                 {title:"头像",field:"recPicture",formatter:function(value,row,index){
                    return "<img onclick='downloadImg(\""+value+"\")' width='50px' height='50px' src='"+value+"'>";
                }},
		         {title:"操作",formatter:function(value,row,index){
		        	 var str="";
                         str+='<button type="button"class="btn btn-primary glyphicon glyphicon-trash" onclick="delOne('+row.recId+')">删除</button>';
                         str+='<button type="button"class="btn btn-primary glyphicon glyphicon-trash" onclick="updateRes('+row.recId+')">修改</button>';
                         return str;
		         }},
        ],
		         queryParams:function(param){
					 return {
						 	page:param.pageNumber, //开始位置
						 	rows:param.pageSize  //每页条数
						 };
					 }//往后台传值:条查、分页      
	});

到此为止,springbootpuls增删改查以及批量删全部实现

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MyBatis是一种持久层框架,可以轻松地进行数据库的增删改查操作,并且还支持分页功能。 要使用MyBatis进行增删改查,首先需要在配置文件中定义数据库的连接信息和SQL语句。通过定义映射文件,将数据库表的字段与Java对象进行映射。 对于增加操作,可以使用insert语句,在映射文件中编写相应的SQL语句,并在Java代码中调用插入方法,传入相应的参数即可实现数据的添加。插入方法返回的是插入数据所影响的行数。 对于删除操作,可以使用delete语句,在映射文件中编写相应的SQL语句,并在Java代码中调用删除方法,传入相应的参数即可实现数据的删除删除方法返回的是删除数据所影响的行数。 对于修改操作,可以使用update语句,在映射文件中编写相应的SQL语句,并在Java代码中调用更新方法,传入相应的参数即可实现数据的修改。更新方法返回的是更新数据所影响的行数。 对于查询操作,可以使用select语句,在映射文件中编写相应的SQL语句,并在Java代码中调用查询方法,传入相应的参数即可实现数据的查询。查询方法返回的是查询结果。 对于分页查询,可以使用MyBatis提供的分页插件进行设置。通过在映射文件中添加分页参数,以及在Java代码中设置分页的起始位置和每页的数据量,即可实现分页查询功能。 总而言之,通过配置文件定义数据库连接和SQL语句,编写映射文件,以及在Java代码中调用相应的方法,就可以使用MyBatis进行数据库的增删改查分页操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值