Mongodb:业务应用(2)
需求:
1、获取保存到mongodb库中的搜索记录列表
2、实现删除搜索记录接口
保存搜索记录数据参考上篇Mongodb:业务应用(1)_Success___的博客-CSDN博客
获取记录列表
1、创建controller
package com.heima.search.controller.v1;import com.heima.model.common.dtos.ResponseResult;
import com.heima.search.service.ArticleSearchService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;@RestController
@RequestMapping("/api/v1/history")
public class SearchHistoryController {@AutowiredArticleSearchService articleSearchService;@PostMapping("/load")public ResponseResult getHistory(){return articleSearchService.getHistory();}}
2、service实现类
/**查询搜索历史@return*/@Overridepublic ResponseResult getHistory() {//查询当前用户下面的搜索记录Integer userId = AppThreadLocalUtil.getUser().getId();//构造条件Query query = Query.query(Criteria.where("userId").is(userId));//执行查询List<ApUserSearch> list = mongoTemplate.find(query, ApUserSearch.class);//返回数据return ResponseResult.okResult(list);}
3、测试
返回成功

根据id删除搜索记录
1、实现controller
@PostMapping("/del")public ResponseResult delHistory(@RequestBody ApUserSearch userSearch){return articleSearchService.del(userSearch);}
2、service实现类
/*根据id删除搜索记录*/@Overridepublic ResponseResult del(HistorySearchDto dto) {//检查参数if(dto == null){return ResponseResult.errorResult(AppHttpCodeEnum.NEED_LOGIN);}//检查登录状态Integer userId = AppThreadLocalUtil.getUser().getId();if(userId == null){return ResponseResult.errorResult(AppHttpCodeEnum.NEED_LOGIN);}//执行删除mongoTemplate.remove(Query.query(Criteria.where("userId").is(userId).and("id").is(dto.getId())),ApUserSearch.class);return ResponseResult.okResult(AppHttpCodeEnum.SUCCESS);}
3、测试
相关文章:
Mongodb:业务应用(2)
需求: 1、获取保存到mongodb库中的搜索记录列表 2、实现删除搜索记录接口 保存搜索记录数据参考上篇Mongodb:业务应用(1)_Success___的博客-CSDN博客 获取记录列表 1、创建controller package com.heima.search.controller.v1;…...
DSO学习笔记
最近在学习DSO系列的代码,整理记录一下 DOS代码流程 TODO DSO跑kitti数据集 参考高翔大佬的LDSO中LDSO/examples/run_dso_kitti.cc,由于kitti数据集木有光度参数标定文件,其实最重要的就是相机内参文件camera.txt按照格式来就行了ÿ…...
【Windows 常用工具系列 5 -- 如何在网页(CSDN)中实现右上角及右下角数字显示】
文章目录 网页右上角/右下角标号写法 网页右上角/右下角标号写法 在网页撰写文章时经常遇到需要平方的写法,比如书写 X 的 2次方, 可以通过下面方法完成: <sup>x</sup> : x 上移到右上角;<sub>x</sub> : x 下移到右下角。 实…...
sql注入--报错注入
常用的简单测试语句和注释符号说明 sql语句的注释符号,是sq注入语句的关键点:常用 # 和 -- 1、# 和 --(有个空格)表示注释,可以使它们后面的语句不被执行。在url中,如果是get请求也就是我们在浏览器地址栏…...
Nginx常用功能
Nginx 介绍 Nginx 是开源、高性能、高可靠的 Web 和反向代理服务器,而且支持热部署,几乎可以做到 7 * 24 小时不间断运行,即使运行几个月也不需要重新启动,还能在不间断服务的情况下对软件版本进行热更新。性能是 Nginx 最重要的…...
【Express.js】express-validator
express-validator express.js 集成 express-validator进行数据校验 在最初的时候,对于请求的数据校验,我们是自定义一个中间件,然后在里面通过最原生的方式检验。在本节,我们将尝试用一种更优雅的方式进行数据校验。 准备工作…...
沁恒ch32V208处理器开发(三)GPIO控制
目录 GPIO功能概述 CH32V2x 微控制器的GPIO 口可以配置成多种输入或输出模式,内置可关闭的上拉或下拉电阻,可以配置成推挽或开漏功能。GPIO 口还可以复用成其他功能。端口的每个引脚都可以配置成以下的多种模式之一: 1 浮空输入 2 上拉输入…...
Jenkins 中 shell 脚本执行失败却不自行退出
Jenkins 中 执行 shell 脚本时,有时候 shell 执行失败了,或者判断结果是错误的,但是 Jenkins 执行完成后确提示成功 success 。 此时,可以通过条件判断来解决这个问题,让 Jenkins 强制退出并提示执行失败 failed 。 …...
2021年12月 C/C++(一级)真题解析#中国电子学会#全国青少年软件编程等级考试
第1题:输出整数部分 输入一个双精度浮点数f, 输出其整数部分。 时间限制:1000 内存限制:65536 输入 一个双精度浮点数f(0 < f < 100000000)。 输出 一个整数,表示浮点数的整数部分。 样例输入 3.8889 样例输出 3 下面是一个使用C语言编写的输出双精度浮点数整数部分…...
有哪些可以用于性能测试方法?【举例说明】
1.负载测试 在这里,负载测试指的是最常见的验证一般性能需求而进行的性能测试,在上面我们提到了用户最常见的性能需求就是“既要马儿跑,又要马儿少吃草”。因此负载测试主要是考察软件系统在既定负载下的性能表 现。我们对负载测试可以有如下…...
Linux进程管理命令
一、进程 程序由一条条指令构成,在运行一个程序的时候就是把这些指令从第一条执行到最后一条,而进程是一个正在运行的程序。 比如说,一个main.c文件是不可以直接运行的,对main.c进行编译链接之后生成一个main.exe(在W…...
pytest 常用命令参数
-x 用例一旦失败或错误时就立即停止执行 共两条用例,运行第一条报错失败或报错,第二条就不会执行 pytest -vs -x test_pytest_study.py::TestCommon1 共2条用例,当执行到第一条失败时候,第二条不执行 --maxfailnum …...
从安装 Seata 开始的分布式事务之旅 springboot集成seata
从安装 Seata 开始的分布式事务之旅 介绍什么是 Seata? 安装 Seata Server下载 Seata Server 发行版配置Seata解压文件配置Seata的yml文件把配置文件config.txt加载到nacos上修改config.txt文件加载到nacos上 启动Seata服务正常启动查看启动日志打开控制台页面 启动…...
Laravel 使用mix引入本地样式文件 报错 Unable to locate Mix处理
刚下了一个bootstrap样式文件,mix引入了一下,直接报错: Unable to locate Mix file: /css/bootstrap.min.css. (View: D:\phpEnv\www\abc\resources\views\admin\noteAdd.blade.php)原来是需要 npm run dev 启动一下 ✔ Compiled Successfu…...
QT学习笔记-QT安装oracle oci驱动
QT学习笔记-QT安装oracle oci驱动 0、背景1、环境以及条件说明2、编译驱动2.1 下载oracle instant client2.2 编译qt oci驱动2.2.1 修改oci.pro2.2.2 MinGW64构建套件编译2.2.3 MSVC2019_64构建套件编译 3、访问数据库运行成功 0、背景 在使用QT开发应用的过程中,往…...
【React学习】—类的基本知识(五)
【React学习】—类的基本知识(五) <script>// 创建一个Person类class Person{//构造器方法constructor(name,age){this.namename;this.ageage;}//一般方法speak(){//speak方法一般放在哪里?类的原型上,供实例使用//通过Pers…...
【AI】《动手学-深度学习-PyTorch版》笔记(十六):自定义网络层、保存/加载参数、使用GPU
AI学习目录汇总 1、自定义网络层 自定义网络层很简单,三步即可完成 继承类:nn.Module定义初始化函数:__init__中定义需要初始化的代码定义向前传播函数:forward1.1 不带参数的网络层 1)定义网络层 import torch import torch.nn.functional as F from torch import nn…...
微软杀入Web3:打造基于区块链的AI产品
作者:秦晋 2023年1月,微软向 ChatGPT 创建者 OpenAI 投资 100 亿美元,在AI业界引发格外关注。此举也让微软在AI的战略探索上提前取得有利位置。 2023年3月,微软软件工程师 Albacore 披露微软正在为Edge 浏览器测试内置的非托管加密…...
聊聊51单片机
目录 1.介绍 2.发展 3.应用领域 4.发展前景 1.介绍 51单片机(AT89C51)是一种常见的8位微控制器,属于Intel MCS-51系列。它是一种低功耗、高性能的单片机,广泛应用于嵌入式系统中。 51单片机具有很多特点和功能,例如…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战
在现代战争中,电磁频谱已成为继陆、海、空、天之后的 “第五维战场”,雷达作为电磁频谱领域的关键装备,其干扰与抗干扰能力的较量,直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器,凭借数字射…...
OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...
Modbus RTU与Modbus TCP详解指南
目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...
2.3 物理层设备
在这个视频中,我们要学习工作在物理层的两种网络设备,分别是中继器和集线器。首先来看中继器。在计算机网络中两个节点之间,需要通过物理传输媒体或者说物理传输介质进行连接。像同轴电缆、双绞线就是典型的传输介质,假设A节点要给…...
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南 背景介绍完整操作步骤1. 创建Docker容器环境2. 验证GUI显示功能3. 安装ROS Noetic4. 配置环境变量5. 创建ROS节点(小球运动模拟)6. 配置RVIZ默认视图7. 创建启动脚本8. 运行可视化系统效果展示与交互技术解析ROS节点通…...
高端性能封装正在突破性能壁垒,其芯片集成技术助力人工智能革命。
2024 年,高端封装市场规模为 80 亿美元,预计到 2030 年将超过 280 亿美元,2024-2030 年复合年增长率为 23%。 细分到各个终端市场,最大的高端性能封装市场是“电信和基础设施”,2024 年该市场创造了超过 67% 的收入。…...
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用 Linux 内核内存管理是构成整个内核性能和系统稳定性的基础,但这一子系统结构复杂,常常有设置失败、性能展示不良、OOM 杀进程等问题。要分析这些问题,需要一套工具化、…...
