当前位置: 首页 > news >正文

增删改查文档

列表 :

列表包含 :

模糊查找 + 分页

列表jsp页面 : 

一 :导入外部文件

(举例 : 用户点进来就可以看到菜单,这是预加载属于,使用文档就绪函数实现)

二 : body 上

① : 文档就绪函数 ${ function()

      //获取条件查询的字段

//组装对象

//调用文档就绪函数

}

② : 封装ajax方法{

 $.ajax({

  1. 请求路径
  2. 请求方法
  3. 数据传递
  4. 解析
  5. 成功回调函数
  1. 打印
  2. 因为有分页添加分页

let arr = res.data; //首页
let prevPage = res.prevPage; //上一页
let nextPage = res.nextPage; //下一页
let totalPage = res.totalPage; //尾页

3.清空表

4.追加表头

5.使用循环追加数据

     (因为有分页 用上面的arr)

for (let x of arr)

  1. 在循环外面追加分页按钮 colspan居中

<td colspan="100">
<input type="button" value="首页" οnclick="doPage(1)">

  1. 失败回调函数{

      给出提示

}

})

}

body 中间

三 : 搜索框 inp

四 : 搜索按钮 button

五 : 列表 table

六 : body 下写脚本 script

  1. 给搜索按钮绑定一个点击事件{

    //获取条件查询的字段

//组装对象

//调用文档就绪函数

}

  1. 分页 给分页写一个function方法{

    //获取条件查询的字段

//组装对象

//调用文档就绪函数

    //多加一个pageNum

}

Controller:

一 : @WebServlet("/menu/*")

MenuVo menuVo = JSONObject.parseObject(reqInfos, MenuVo.class);
//将转换后的对象传给Service
PageResult<MenuVo> list= service.menuList(menuVo);
//将转换后的结果响应给用户
resp.getWriter().println(JSONObject.toJSONString(list));

//调用到层方法获取所有数据
List<MenuVo> list = dao.menuList(menuVo);
//调用到层方法,获取总条数
int count = dao.getCount(menuVo);
//Integer pageNum, Integer totalNum, Integer pageSize, List<T> data
PageResult<MenuVo> menuVoPageResult = new PageResult<>(menuVo.getPageNum(), count, menuVo.getPageSize(), list);
return menuVoPageResult;

二 : ser {

全局变量

  1. 接参
  2. 将json对象转换成java对象
  3. 将转换后的对象传给service
  4. 将处理后的结果响应给用户

}

Service:

① : 调用dao层方法获取所有数据 (参数放vo类的)

List<MenuVo> list = dao.menuList(menuVo);

② : 定义总条数的方法

int count = dao.getCount(menuVo);

③ : 点进去分页工具类  调用方法 (将参数粘过来对着写) 得到返回值

④ : 返回返回值

Dao:

一 : 1.定义sql语句 :

  • 根据名字模糊查找
  • 打印sql语句
  • 分页sql语句

    sql+=" limit ?,?";

  • 分页公式 : 起始下标 = (当前页数 - 1)*条数

int index=(menuVo.getPageNum()-1)*menuVo.getPageSize();

  • 分页公式

处理返回结果

添加 :

添加Jsp页面:

一 :导入外部文件

(举例 : 用户点进来就可以看到菜单,这是预加载属于,使用文档就绪函数实现)

二 : body 上

① : 文档就绪函数 ${ function()

//调用下拉框的function方法

//关闭异步

}

② : 封装ajax方法{

 $.ajax({

  1. 请求路径
  2. 请求方法
  3. 数据传递
  4. 解析
  5. 成功回调函数{

① : 打印

② : 循环追加数据{

   //追加数据 :

1.是下拉框的数据

2.头追的是外键的ID

3.value : 外键的ID

4.option中间方法的是 外键的名字

for (let x of res) {
     //追加数据
     $("#typeId").append(`
     <option value="\${x.typeId}">\${x.typeName}</option>

  1. 失败回调函数 {  给出提示 }

三 : body 中间

  1. 添加文本框

文本框用 : text  下拉框 : <select> <option>

下拉框的ID给的是主表里外键的字段 追加的是外键的主键和外面的名称字段

下俩框示例 : 类型ID: <select id="typeId">
            <option value="">请选择</option>
           </select><br>

图片实例 :

上传图片: <img src="" alt="" width="35" height="35" id="imgUrl">
        <input type="file" id="file" onchange="showImg(this)">

  1. 添加的按钮
  2. Body下面写 <script>

   ①先给图片绑定点击事件

  1. 获取选中图片的路径
  2. 创建文件阅读器
  3. 读取文件图片路径
  4. 加载给src内容给service赋值{
  5. 给图片赋值

}

图片绑定事件案例

function showImg(obj) {
     //获取选中图片的路径(和绑定事件里的实参使用一个单词)          加载图片内容给Service赋值
     let file = obj.files[0];
     //创建文件阅读器
     let reader = new FileReader();
     //读取图片路径
     reader.readAsDataURL(file);
     //加载src内容给Service赋值
     reader.onload=function () {
        //给图片赋值
        $("#imgUrl").attr("src",reader.result)
     }
}

  1. 给添加按钮绑定单击事件

  ①将res的路径给imgUrl  添加的点击事件里.ajax外

  ②创建formDate对象

  ③获取选中的图片

  ④将图片放到创建的formData中

  ⑤图片的ajax{

在成功回调函数里:将res的路径给imgUrl

}

   ⑥取值 (添加框字段的值)

   ⑦非空校验

   ⑧组装对象

   ⑨添加的ajax{

在成功回调函数里:添加后跳转list.jsp}

FileController

一 : 上传图片的方法 (上传图片单词 : upload)

①调用图片方法

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

上传图片示例 :

protected void upload(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    //调用图片方法
    String image = UploadUtil.uploadImage(req, resp);
    //将处理后的结果响应给用户
    resp.getWriter().println(JSONObject.toJSONString(image));
}

二:展示图片方法 showIng

①传参

②使用工具类调用方法

展示图片方法示例 :

protected void showImg(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    //传参
    String imgUrl = req.getParameter("imgUrl");
    //使用工具类调用方法
    UploadUtil.showImg(imgUrl,resp);
}

Controller :

上传图片的方法 : upload

1.调用工具类图片方法

2.响应

展示图片的方法 :showImg

3.传参

4.使用工具类调用方法

添加方法 {

  1. 接参
  2. 将json对象转换成Java对象
  3. 将转换后的对象传给service
  4. 处理返回值(返200)

}

Service :

①不需要显示的字段设置默认值

        ②调用dao层方法 没有返回值直接走

Dao :

  • : 定义sql
  • : 执行sql

修改 :

删除 :

相关文章:

增删改查文档

列表 : 列表包含 : 模糊查找 分页 列表jsp页面 : 一 :导入外部文件 (举例 : 用户点进来就可以看到菜单,这是预加载属于,使用文档就绪函数实现) 二 : body 上 ① : 文档就绪函数 ${ function() //获取条件查询的字段 //组装对象 //调用文档就绪函数 } ② : 封装ajax方…...

C语言蓝桥杯2023年省赛真题

文章目录 持续更新中...第一题题目描述输入格式输出格式样例输出提示 2 第二题题目描述 第三题题目描述输入格式输出格式样例输入样例输出 第四题题目描述输入格式输出格式样例输入样例输出提示 第四题题目描述输入格式输出格式样例输入样例输出提示 第五题题目描述输入格式输出…...

Python迭代器-大数据量的处理

一 生成器的实际使用&#xff08;大量数据的导出&#xff09; #分批导出数据然后分批写入excel import pandas as pd import openpyxl from openpyxl.utils.dataframe import dataframe_to_rowsdef execute_query(query):# 假设这是执行 SQL 查询的函数# 返回查询结果passdef …...

自动化包括态交互与感交互,而智能化包括势交互与知交互

“自动化包括态交互与感交互&#xff0c;而智能化包括势交互与知交互”交互框架将交互过程划分为不同类型&#xff0c;有助于更清晰地理解自动化和智能化的本质及其在未来agent应用中的差异与联系。 1. 自动化&#xff1a;态交互与感交互 自动化主要关注的是高效、无差错地执行…...

VideoBooth: Diffusion-based Video Generation with Image Prompts

VideoBooth: Diffusion-based Video Generation with Image Prompts 概括 文章提出了一个视频生成模型VideoBooth&#xff0c;输入一张图片和一个文本提示词&#xff0c;即可输出保持图片中物体且符合文本提示词要求的视频。 方法 粗-细两阶段设计&#xff1a;1&#xff09;…...

模拟简单的iOT工作流

没有实际接触过iOT的流程&#xff0c;应该实际使用比这个接口返回要复杂&#xff0c;只是演示~希望能参与实际的接口接入&#xff0c;而不是只展示个假数据。 启动RabbitQ 使用的是3.8.5 启动命令 RabbitMQ Service - start RabbitMQ Command Prompt rabbitmqctl start_app …...

C++学习0.2: RAII

引用&#xff1a; 【代码质量】RAII在C编程中的必要性_raii 在c中的重要性-CSDN博客 C RAII典型应用之lock_guard和unique_lock模板_raii lock-CSDN博客 前言: 常用的线程间同步/通信&#xff08;IPC&#xff09;方式有锁&#xff08;互斥锁、读写锁、自旋锁&#xff09;、…...

k8s,进一步理解Pod

比如&#xff0c;凡是调度、网络、存储&#xff0c;以及安全相关的属性&#xff0c;基本上是Pod 级别的。 这些属性的共同特征是&#xff0c;它们描述的是“机器”这个整体&#xff0c;而不是里面运行的“程序”。比如&#xff0c;配置这个“机器”的网卡&#xff08;即&#…...

MFC图形函数学习13——在图形界面输出文字

本篇是图形函数学习的最后一篇&#xff0c;相关内容暂告一段落。 在图形界面输出文字&#xff0c;涉及文字字体、大小、颜色、背景、显示等问题&#xff0c;完成这些需要系列函数的支持。下面做简要介绍。 一、输出文本函数 原型&#xff1a;virtual BOOL te…...

【Canvas与雷达】点鼠标可暂停金边蓝屏雷达显示屏

【成图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>点鼠标可暂停金边蓝屏雷达显示屏 Draft1</title><style typ…...

React第十二节组件之间通讯之发布订阅模式(使用pubsub-js插件)

组件之间通讯常用方案 1、通过props 2、通过context 3、通过发布订阅模式 4、通过Redux 后面会有专栏介绍 1、安装 pubsub-js 插件 yarn add pubsub-js 常用的事件 a、发布事件&#xff1a;传入一个自定义事件名称&#xff08;name&#xff09;&#xff0c;以及要发布的消息内…...

Vue3安装 运行教程

本文是综合了所有vue安装教程而成 更细化 更简略 希望对各位读者有所帮助&#xff01; Vue安装 1. Vue-cli脚手架安装 安装vue的方式有很多 我们这里选择npm方式安装vue npm方式 npm方式安装vue&#xff0c;详细介绍见下文。 1.node.js安装和配置 安装npm 需要安装note.js&…...

MySQL:约束constraint

约束就是表中数据的限制条件. 表在设计的时候加入约束的目的是为了保证表中记录的完整性和有效性&#xff0c;如用户表有些列的值&#xff08;手机号&#xff09;不能为空&#xff0c;有些列的值&#xff08;身份证号&#xff09;不能重复。 主键约束(primary key) PK MySQL主…...

使用Rufus制作Ubuntu需要注意

‌在使用Rufus制作Ubuntu启动盘并进行BIOS设置时&#xff0c;需要注意以下几点‌&#xff1a; ‌关闭RST&#xff08;英特尔 快速存储技术&#xff09;‌&#xff1a;在BIOS设置中&#xff0c;如果电脑启用了RST功能&#xff0c;需要将其关闭。因为Ubuntu可能无法检测到硬盘&a…...

探索Go语言的高级特性:性能分析与安全性

Go语言性能分析与安全性 引言 Go语言因其高效的并发特性、简洁的语法和强大的工具链而受到广泛欢迎。在实际开发中&#xff0c;性能分析和安全性是需要特别关注的两个方面。本文将深入探讨Go语言中的性能分析工具和安全性考虑&#xff0c;帮助开发者编写高效、安全的Go应用程…...

SearchSploit配合gcc的使用

渗透测试中&#xff0c;SearchSploit是一个非常有用的工具&#xff0c;用于在Exploit数据库中搜索漏洞利用代码。其使用方法如下&#xff1a; 安装SearchSploit&#xff1a;首先确保你的系统中已经安装了Kali Linux&#xff0c;因为SearchSploit是Kali Linux的一部分。如果没有…...

无人机设计:云台挂载!

一、无人机云台挂载设置 安装与固定 将云台固定到无人机的挂载点上&#xff0c;通常需要使用专用的固定架和螺丝等工具。 确保云台与无人机之间的连接牢固&#xff0c;避免在飞行过程中出现松动或脱落的情况。 连接与调试 将云台与无人机之间的连接线缆&#xff08;如电源…...

Spring Native适用场景、代理使用及测试部署策略

文章目录 1. Spring Native 适用的应用程序2. 在 Spring Native 中使用代理3. 测试和部署 Spring Native 应用测试部署 1. Spring Native 适用的应用程序 微服务&#xff1a;微服务架构中每个服务都相对独立&#xff0c;快速启动时间和较低的资源消耗对于提高部署效率和服务响…...

LeetCode—11. 盛最多水的容器(中等)

题目描述&#xff1a; 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明&#xff1a;…...

第一部分:入门准备 1.欢迎来到新手村 --[JavaScript 新手村:开启编程之旅的第一步]

为什么学习 JavaScript&#xff1f; 学习 JavaScript 有多个重要的理由&#xff0c;它在现代 Web 开发中扮演着不可或缺的角色。以下是几个关键原因&#xff1a; 1. 广泛的应用 JavaScript 是唯一可以在浏览器端直接运行的编程语言&#xff0c;几乎所有的网站和Web应用都使用…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程&#xff1a;首先由HR先筛选一部分简历后&#xff0c;在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如&#xff1a;Boss直聘&#xff08;招聘方平台&#xff09; 直接按照条件进行筛选 例如&#xff1a…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!

简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求&#xff0c;并检查收到的响应。它以以下模式之一…...

【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)

本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机&#xff0c;点进去 点进去 查看URL&#xff0c;有 ?fileflag.php说明存在文件包含&#xff0c;原理是php://filter 协议 当它与包含函数结合时&#xff0c;php://filter流会被当作php文件执行。 用php://filter加编码&#xff0c;能让PHP把文件内容…...

【Linux系统】Linux环境变量:系统配置的隐形指挥官

。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量&#xff1a;setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...

uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)

UniApp 集成腾讯云 IM 富媒体消息全攻略&#xff08;地理位置/文件&#xff09; 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型&#xff0c;核心实现方式&#xff1a; 标准消息类型&#xff1a;直接使用 SDK 内置类型&#xff08;文件、图片等&#xff09;自…...