列表代码思路

目录

列表+添加+修改+删除(单删,批删)

页面==>Controller==>service==>Dao

[一.列表的jsp页面 :](#一.列表的jsp页面 :)

[一. 想要用户已经来就看到的数据使用文档就绪函数](#一. 想要用户已经来就看到的数据使用文档就绪函数)

[①文档就绪函数 :](#①文档就绪函数 :)

[二. 封装ajax方法](#二. 封装ajax方法)

[二 : 在body中间](#二 : 在body中间)

[一 : 多条件查询的文本框](#一 : 多条件查询的文本框)

[二. 写列表](#二. 写列表)

三.在body的下面写脚本

1.给搜索框绑定单击事件


列表+添加+修改+删除(单删,批删)

页面==>Controller==>service==>Dao

1.创建列表jsp页面

一.列表的jsp页面 :

一. 想要用户已经来就看到的数据使用文档就绪函数
文档就绪函数 :

$(function(){

①取值 ②组装对象 ③调用ajax

})

javascript 复制代码
$(function () {
          //取值
          let begin = $("#begin").val();
          let end=$("#end").val()
          //组装对象
          let obj={begin:begin,end:end}
          //调用ajax
          getUserList(obj);
      })
二. ②封装ajax方法

1.请求路径

2.请求方法

3.传递数据

4.解析

5.成功回调函数 :

在成功的方法里面写 :

1.清空表 2.追加表头 3.使用循环 追加表数据

注意状态想要显示启用或者未启用 使用三目运算算符

javascript 复制代码
//封装ajax方法
        function getRoleList(obj) {
            //ajax方法
            $.ajax({
                url:"/role/roleList", //请求路径
                type:"post",         //请求方法
                data:{reqInfos:JSON.stringify(obj)}, //类型转换
                dataType:"json",   //解析
                success(res){
                    console.log(res) //打印
                    //清空表
                    $("#table").empty()
                    //追加表头
                    $("#table").append(`
                    <tr>
                        <td><input type="checkbox" id="check"></td>
                        <td>角色表ID</td>
                        <td>角色表姓名</td>
                        <td>角色表注释</td>
                        <td>操作</td>
                    </tr>
                    `)
                    //循环
                    for (let x of res) {
                        //追加数据
                        $("#table").append(`
                        <tr>
                            <td><input type="checkbox" class="ck" value="\${x.roleId}"></td>
                            <td>\${x.roleId}</td>
                            <td>\${x.roleName}</td>
                            <td>\${x.roleAnnotation}</td>
                            <td>
                                <input type="button" value="修改" onclick="toUpd(\${x.roleId})">
                                <input type="button" value="删除" onclick="del(\${x.roleId})">
                            </td>
                        </tr>
                        `)
                    }
                },
                error(){
                    alert("进入维系状态,请稍等...")
                }
            })
        }

二 : 在body中间

一 : 多条件查询的文本框

例 : 1.名字模糊查找 2.时间区间查找

java 复制代码
<body>
<%--创建开始时间  结束时间--%>
    创建时间: <input type="datetime-local" step="1" id="begin">-<input type="datetime-local" step="1" id="end"><br>
<%--搜索按钮--%>
<input type="button" value="查询" id="seek">
<%--添加按钮--%>
<input type="button" value="添加" id="add">
<input type="button" id="delAll" value="批量删除">

</body>

二. 写列表

table tr td

javascript 复制代码
<%--用户对页面的查询属于后期起行为,写在body下面--%>
<%--列表--%>
    <table id="table">
        <tr>
          <td>商品创建日期</td>
          <td>商品供应厂商</td>
          <td>商品地址</td>
          <td>商品状态</td>
          <td>上传商品图片</td>
          <td>操作</td>
        </tr>
    </table>

三.在body的下面写脚本

<stricp>

1.给搜索框绑定单击事件

①取值 ②组装对象 ③调用ajax

javascript 复制代码
<%--给搜索框绑定单击点击事件--%>
        $("#seek").click(function () {
          //取值
          let begin = $("#begin").val();
          let end=$("#end").val()
          //组装对象
            let obj={begin:begin,end:end}
          //调用ajax
            getUserList(obj);
        })

</stricp>

Controller类 :

1.接参

2.将json对象转换为java对象

3.将转换后的对象传给service

返回值传的是 list集合 参数(对象)

4.将处理后的结果响应给用户

javascript 复制代码
//全局变量 方便调用
    RoleServiceImpl service = new RoleServiceImpl();
    //列表
    protected void roleList(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //接参
        String reqInfos = req.getParameter("reqInfos");
        //将JSON对象还原成Java对象
        Role role = JSONObject.parseObject(reqInfos, Role.class);
        RoleServiceImpl service = new RoleServiceImpl();
        //将转转换后的对象传给service
        List<Role> list=service.roleList(role);
        //将处理后的数据响应给用户
        resp.getWriter().println(JSONObject.toJSONString(list));
    }

service :

1.调用dao层方法

2.处理返回值

javascript 复制代码
 //列表
    @Override
    public List<Role> roleList(Role role) {
        //处理返回值   调用到层方法
        //调用页面的ajax方法名
        return roleDao.getRoleList(role);
    }

dao层

①定义sql ②执行sql

javascript 复制代码
//列表
    @Override
    public List<Role> getRoleList(Role role) {
        //定义sql
        String sql="SELECT *FROM t_role WHERE role_deleted=0";
        if (null!=role.getRoleName() && !role.getRoleName().isEmpty()){
            sql+=" and role_name like '%"+role.getRoleName()+"%' ";
        }
        System.out.println(sql); //控制台打印sql语句
        //执行sql

        return baseQueryList(Role.class,sql);
    }
相关推荐
蒜蓉大猩猩2 分钟前
Vue.js - 组件化编程
开发语言·前端·javascript·vue.js·前端框架·ecmascript
王解32 分钟前
一篇文章读懂 Prettier CLI 命令:从基础到进阶 (3)
前端·perttier
乐闻x38 分钟前
最佳实践:如何在 Vue.js 项目中使用 Jest 进行单元测试
前端·vue.js·单元测试
檀越剑指大厂1 小时前
【Python系列】异步 Web 服务器
服务器·前端·python
我是Superman丶1 小时前
【前端】js vue 屏蔽BackSpace键删除键导致页面后退的方法
开发语言·前端·javascript
Hello Dam1 小时前
基于 Spring Boot 实现图片的服务器本地存储及前端回显
服务器·前端·spring boot
小仓桑1 小时前
利用 Vue 组合式 API 与 requestAnimationFrame 优化大量元素渲染
前端·javascript·vue.js
Hacker_xingchen1 小时前
Web 学习笔记 - 网络安全
前端·笔记·学习
天海奈奈1 小时前
前端应用界面的展示与优化(记录)
前端
多多*1 小时前
后端并发编程操作简述 Java高并发程序设计 六类并发容器 七种线程池 四种阻塞队列
java·开发语言·前端·数据结构·算法·状态模式