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

公司study three

ctrl+win+d:新建桌面

ctrl+win +箭头 切换桌面

WIN + CTRL + F4 删除桌面

stream

  • foreach遍历
 instFormModifytracesList.stream().forEach(s->{  s.setModifyUser(sysUserTemplate.getNameById(s.getModifyUser()));});
  • 拼接
 String collect2 = peopleList.stream().map(People::getName).collect(Collectors.joining(","));
  • list转成 map<string,实体>
Map<String, Sample> sampleCodeMap = list.stream().collect(Collectors.toMap(Sample::getSampleCode, sample -> sample));
  • list去重
   List<String> collect = departmentList.stream().map(TaskDepartment::getDepartmentId).collect(Collectors.toList());List<String> departmentIds = new ArrayList<String>(new TreeSet<String>(collect));
  • list根据某个字段去重
	//根据值班日期去重,一天只需要获取一条数据
List<SiteScheduling> siteSchedulings = schedulingList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(SiteScheduling::getOnDutyDate))), ArrayList::new));

mybatis-plus+stream+lambda

  • lambda遍历 存值
   if (bpmBoEntityList != null && !bpmBoEntityList.isEmpty()) {bpmBoEntityList.forEach(x -> {BpmBoEntityDTO dto = new BpmBoEntityDTO();BeanUtil.copyProperties(x, dto);dtoList.add(dto);});}
  • lambda+stream 遍历
  List<BpmSolresContent> bpmSolresContentList=bpmSolresContentMapper.selectList(lambdaQueryWrapper);bpmSolresContentList.stream().forEach(w->{if(Func.isNotEmpty(w.getRoute())){w.setRoute(varParamService.replaceVarString(w.getRoute(),userId,instId, VarParamGroupEnum.INST));}});

集合

  • 对象转成map
Map<String, Object> dataMap = MapUtil.toMap(vo);
  • 判断list和map是否包含这个值
    在这里插入图片描述

  • contains方法是用来判断集合中是否包含某个元素的方法

例子:
Connection c=new ArrayList();
c.add(1);
System.out.println(c.contains(1));结果:
ture

代码学习

  • 将list的id分割
 String userIds = StringUtils.join(userIdList,",");`
  • 复制实体
BeanUtil.copyProperties(x, dto);
 selectBatchIds:mybatus-plus批量查询集合
  • 判断类型是否为空,是返回信息
 Asserts.isEmpty(treeDTO.getNodeType(), "节点类型不能为空!");
  • 删除新增修改保存 @PostMapping+@BpmApiLog

  • 新增或修改

  if (holidayService.insertBpmHolidayWorkhours(holidayWorkhours) > 0) {return R.success("设置工作时间成功");}return R.fail("设置工作时间失败!");}
  • 获取当前登录用户id
Long userId = AuthUtil.getUserId(true);
String userId=AuthUtil.getUserId().toString();
  • 根据报错信息,找到所在位置,然后查看报错信息原因
    在这里插入图片描述

在这里插入图片描述

  • 获取就是response
  • 设置保存 就是request
  • vo:用于给前端显示信息
  • dto:用于service层跟mapper层数据交换
  • equals() 会判断大小写区别,equalsIgnoreCase() 不会判断大小写区别

注解

  • @Validated:为了在实体中使用对应的注解对参数进行校验

在这里插入图片描述

@Null(message = "无需上传id!程序会根据年份入参自适应修改!")

在这里插入图片描述

循环

  • break用于完全结束一个循环,跳出循环体,执行循环之后的代码
  • continue语句用于终止本次循环,接着开始下一次循环。

多线程

  • 在方法上加上@Async注解,然后去启动类加上@EnableAsync启动注解开启异步
  • @Async失效的原因
    • 1、注解@Async的方法不是public方法
      2、注解@Async的返回值只能为void或者Future
      3、注解@Async方法使用static修饰也会失效
      4、spring无法扫描到异步类,没加注解@Async 或 @EnableAsync注解
      5、调用方与被调方不能在同一个类
  • 测试异步是否成功,成功了就直接走到 保存成功,不会进入休眠,最后才进入对应休眠的方法
  • 异步处理线程
  • 开启异步后无论异步 方法是否执行成功 ,都会 直接走到保存成功,互不影响在这里插入图片描述在这里插入图片描述
    // 异步线程处理数据源xml解析ExecutorService es = Executors.newFixedThreadPool(1);es.submit(new Callable<BpmFormInfo>() {@Overridepublic BpmFormInfo call() {formDatasourceService.updateFormXmlJson(bpmFormInfo.getFormId());return null;}});es.shutdown();
  • 异步 开启了新线程所以 获取不到当前的登录人的id,需要获取传值过来

强转

  • list转hashmap
HashMap<String, Object> map = (HashMap) oldFormDatum;

概念

  • 没加@requestbody的不能用json,只能用form-data

  • stream的Collectors.toList(),加了分组就等于转化成list了,不加 就要Collectors.toList()

  • java回调:回调是一种双向调用模式,什么意思呢,就是说,被调用方在被调用时也会调用对方,这就叫回调。“If you call me, i will call back”

    • 所谓回调:就是A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法
  • if,elseif,else,三者语句只执行一条,谁的语句先为真就执行哪条,后面的条件的语句就不用管了。

  • @RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的);而最常用的使用请求体传参的无疑是POST请求

相关文章:

公司study three

ctrlwind&#xff1a;新建桌面 ctrlwin 箭头 切换桌面 WIN CTRL F4 删除桌面 stream foreach遍历 instFormModifytracesList.stream().forEach(s->{ s.setModifyUser(sysUserTemplate.getNameById(s.getModifyUser()));});拼接 String collect2 peopleList.stream()…...

【运维】speedtest测试

目录 docker 布署 布署云端 docker布署 云端放置于已有容器里 librespeed/speedtest: Self-hosted Speedtest for HTML5 and more. Easy setup, examples, configurable, mobile friendly. Supports PHP, Node, Multiple servers, and more (github.com) docker 布署 获取…...

CycloneDDS开源代码在Linux系统上编译生成可执行文件的详细步骤

cyclonedds开源代码在Linux系统上编译生成可执行文件的详细步骤 1 远程仓库CycloneDDS源码下载2 创建build目录3 进入build目录4 指定安装路径前缀5 编译 cmake --build6 编译完成后进行安装7 版本构建并编译7.1 虚拟机网络桥接7.2 镜像源添加7.3 CUnit单元测试工具安装7.4 编译…...

PLL锁相环的一部分--鉴频鉴相器

鉴频鉴相器作为锁相环的一部分也是有相对应的独立芯片. 鉴频鉴相器芯片主要有以下几种&#xff1a; LM565/LM565C 鉴频鉴相器芯片XR2211CP 鉴频鉴相器芯片NE567 比较器、鉴频、鉴相 ICMC1496/LM1496 综合运算放大器与调制/解调器 ICLM567 比较器、鉴频、鉴相 ICMC100EP2100 高…...

CSS实现磨砂玻璃(毛玻璃)效果样式

要实现磨砂玻璃背景&#xff0c;可以使用 CSS3 中的 ::before 伪元素和 backdrop-filter 属性&#xff0c;结合 opacity 属性和 blur() 函数来实现。 具体实现步骤如下&#xff1a; 创建一个具有背景的元素&#xff0c;例如一个 div 元素。 div {background-image: url(&quo…...

Solidity拓展:数学运算过程中数据长度溢出的问题

在数学运算过程中假如超过了长度则值会变成该类型的最小值&#xff0c;如果小于了该长度则变成最大值 数据上溢 uint8 numA 255; numA;uint8的定义域为[0,255]&#xff0c;现在numA已经到顶了&#xff0c;numA会使num变成0(由于256已经超过定义域&#xff0c;它会越过256&…...

【C语言】经典题目(一)

【C语言】字符串刷题篇在这里哦&#xff01; 【C语言】字符串—刷题篇 【C】语言经典题目&#xff0c;五个摘录为一篇&#xff0c;将会持续更新啦&#xff01;&#x1f49e; C语言经典题目 三位数水仙花数完数求利润三个数数字排序 三位数 &#x1f4ab;题目 已知有1、2、3、4…...

Linux 设备树文件手动编译的 shell 脚本

前言 前面通过 Makefile 实现手动编译 Linux 设备树 dts 源文件及其 设备树依赖 dtsi、.h 头文件&#xff0c;如何写成一个 shell 脚本&#xff0c;直接编译呢&#xff1f; 其实就是 把 Makefile 重新编写为 shell 脚本即可 编译设备树 shell 脚本 脚本内容如下&#xff1a…...

C++核心编程——初识STL——STL的基本概念和六大组件

文章目录&#x1f4ac; 一.前言二.STL基本概念和组成①容器②算法③迭代器④空间配置器⑤适配器⑥仿函数 三.STL工作机制 一.前言 长久以来&#xff0c;软件界一直希望建立一种可重复利用的东西&#xff0c;以及一种得以制造出“可重复运用的东西”的方法,让程序员的心血不止于…...

5.2图的BFS与DFS遍历

一.BFS遍历 1.图的广度优先遍历代码实现 说明&#xff1a; 1.广度优先遍历&#xff0c;类比树的层次遍历&#xff08;树属于特殊的图&#xff09; 2.对应算法想象图的物理结构存储&#xff1a; 邻接矩阵表示唯一时间复杂度&#xff1a;O(|V|^2); 邻接表不唯一:O(|V|2|E|)&…...

JSP+SQL网上选课系统(源代码+论文+答辩PPT)

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。学生选课系统作为一种现代化的教学技术,以越来越受到人民的重视,是一个学校不可缺少的部分, 学生选课系统就是为了管理好选课信息而设计的。学…...

C语言数据结构——树、堆(堆排序)、TOPK问题

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C&#xff0c;数据结构 &#x1f525;座右铭&#xff1a;“不要等到什么都没…...

springboot+vue 刘老师

课程内容 前端&#xff1a;vue elementui 后端&#xff1a;springboot mybatisplus 公共云部署 ------boot-------- 热部署 不用devtools&#xff0c;交给jrebel工具 RequestMapping ​ 参数 value 路径 method 方法consumes 请求媒体类型 如 application/jsonproduces …...

学生网上考试报名系统的设计与实现

技术栈&#xff1a; MySQL、Maven、SpringBoot、Spring、SpringMVC、MyBatis、HikariCP、fastjson、slf4j系统功能&#xff1a;用户角色&#xff1a; &#xff08;1&#xff09;登录&#xff1a;用户在登录界面输入正确的账户名和密码&#xff0c;点击登录&#xff0c;系统将与…...

Jmeter实现分布式并发

Jmeter实现分布式并发&#xff0c;即使用远程机执行用例。 环境&#xff1a; VMware Fusion Windows系统是win7。 操作过程 1、Master在jmeter.properties添加remote_hosts 2、Slave在jmeter.properties添加server_port 同时把remote_hosts修改为和主机&#xff08;Master…...

动态xml文件配置 hibernate validator 约束校验

父文章 入参校验产品化 schema_个人渣记录仅为自己搜索用的博客-CSDN博客 一般都是通过 注解进行校验, 很少看到 通过配置来进行校验. 自己再通过谷歌找到了官网文档hibernate validator constraint from xml Hibernate Validator 8.0.0.Final - Jakarta Bean Validation Re…...

Vue绑定class样式与style样式

1&#xff0c;回顾HTML的class属性 答&#xff1a;任何一个HTML标签都能够具有class属性&#xff0c;这个属性可能只有一个值&#xff0c;如class"happs"&#xff0c;也有可能存在多个属性值&#xff0c;如class"happs good blue"&#xff0c;js的原生DOM针…...

集权攻击系列:如何利用PAC新特性对抗黄金票据?

黄金票据简介 黄金票据是一种常见的域内权限维持手段&#xff0c;这种攻击主要是利用了Kerberos认证过程中TGT票据由KRBTGT用户的hash加密的特性&#xff0c;在掌握KRBTGT用户密码之后可以通过签发一张高权限用户的TGT票据&#xff0c;再利用这个TGT向KDC获取域内服务的ST来实…...

同程面试(部分)(未完全解析)

一面 Java直接内存有了解吗&#xff1f;为什么Java NIO的效率更高&#xff1f;Netty用到很多NIO&#xff0c;来了一个请求后Netty是怎么分发的&#xff0c;它里面有哪些角色&#xff1f;粘包、拆包怎么解决&#xff1f;为什么建立TCP连接是三次握手&#xff0c;而不是四次&…...

讯飞星火_VS_文心一言

获得讯飞星火认知大模型体验授权&#xff0c;第一时间来测试一下效果&#xff0c;使用申请手机号登录后&#xff0c;需要同意讯飞SparkDesk体验规则&#xff0c;如下图所示&#xff1a; 同意之后就可以进行体验了&#xff0c;界面如下&#xff1a; 讯飞星火效果体验 以下Promp…...

AI写作辅助平台8款AI写作辅助软件梯队榜,毕业护航!

论文选题毫无头绪&#xff0c;文献检索耗时费力&#xff0c;格式排版反复修改&#xff1f; 查重率居高不下&#xff0c;写作思路始终不畅&#xff0c;时间紧迫却无从下手&#xff1f; 面对繁杂的学术任务&#xff0c;你是否也感到力不从心&#xff1f; 别担心&#xff01;AI论文…...

权威测评!2026年顶尖AI论文写作软件榜单,高质初稿轻松写

2026 年实测 10 款主流 AI 论文工具&#xff0c;千笔AI以全流程覆盖 语义级降重 免费查重领跑综合榜&#xff1b;ThouPen 稳坐留学生毕业全流程工具头把交椅&#xff1b;免费工具中DeepSeek Scholar、豆包学术版表现亮眼&#xff0c;30 分钟即可生成万字高质量初稿&#xff0…...

5分钟搞定Sunshine游戏串流:从安装到畅玩的完整指南

5分钟搞定Sunshine游戏串流&#xff1a;从安装到畅玩的完整指南 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 你是否想过在卧室的平板上玩书房里的3A大作&#xff1f;或者用手机…...

卖切削液怎么找客户?下游工厂在哪里

卖切削液找客户&#xff0c;本质是找用切削液的下游工厂&#xff0c;核心难点是拿到这些下游厂的名单和联系人。切削液不像消费品&#xff0c;它的消耗量和工厂的机床数量、加工班次直接挂钩——有金属切削车间的工厂才是真客户&#xff0c;没有机加工产线的工厂对你毫无意义。…...

为什么你的DeepSeek流式接口总在TP99处陡增?揭秘TCP_NODELAY误配+LLM输出熵突变双重陷阱

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;为什么你的DeepSeek流式接口总在TP99处陡增&#xff1f;揭秘TCP_NODELAY误配LLM输出熵突变双重陷阱 当 DeepSeek-R1 或 DeepSeek-V3 的流式响应&#xff08;如 /v1/chat/completions 启用 streamtrue&a…...

Cursor Pro破解工具完整指南:5步实现机器标识重置与永久Pro功能解锁

Cursor Pro破解工具完整指南&#xff1a;5步实现机器标识重置与永久Pro功能解锁 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve rea…...

3分钟快速解锁WeMod高级功能:Wand-Enhancer完整使用指南

3分钟快速解锁WeMod高级功能&#xff1a;Wand-Enhancer完整使用指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 你是否曾经在使用WeMod时&#xff0…...

量子优化在LLM代码生成测试中的应用与优势

1. 量子优化如何重塑LLM代码生成测试流程在当前的软件开发实践中&#xff0c;大语言模型(LLM)已经成为了不可或缺的代码生成工具。但每个使用过GitHub Copilot或类似工具的开发者都深有体会&#xff1a;模型生成的代码虽然功能正确&#xff0c;却常常包含大量冗余逻辑和不必要的…...

多目标贝叶斯优化在复杂量子动力学模型参数校准中的应用

1. 项目概述与核心挑战在光化学和生物物理领域&#xff0c;模拟视网膜在视紫红质中的光异构化反应&#xff0c;是理解视觉初始步骤的基石。这个反应看似简单——一个分子键的旋转&#xff0c;但其背后的量子动力学过程却异常复杂。传统上&#xff0c;我们依赖量子化学计算来构建…...

毕业论文查重不花一分钱?书匠策AI这个免费功能,90%的同学还不知道!

嗨&#xff0c;同学们好&#xff0c;我是你们的论文写作科普搭子。 今天要跟大家聊一个所有毕业生都绕不开的坎——论文查重。 先问大家一个扎心的问题&#xff1a;你的论文查重花了多少钱&#xff1f; 我见过有同学前前后后查了五六次&#xff0c;光查重费就花了上千块。更…...