流水账-20240229

目录

  • git
    • 本地回滚到到`120bc409ee3b8f63a23d0060e55118bcce557acf`提交记录
    • 本地提交到已有代码分支
  • IDEA
    • 批量导入快捷键无效
    • 更换背景主题
    • 快捷键
      • 快捷键可以设置eclipse模式,但是有些不生效,可能是冲突了
      • `Ctrl+单击`,`Eclipse`里面是可以跳转到代码内部;`IDEA`是跳转到引用该方法的地方(`Ctrl + Alt +B`是跳转到方法内部)
      • 格式化代码快捷键:`Ctrl+Alt+L`
      • 转换大小写:`Ctrl+Shift+Y`(*eclipse*)或者`Ctrl+Shift+U`
      • 下划线转驼峰的用插件 `CamelCase`,快捷键是 `Shift + Alt + U`
    • 在这里插入图片描述
      • 外部修改了文件名称,类内部名称需要修改,进入类内部,点击`Alt + Enter`,可以选择改成和外部名称一致,或者外部名称改成和内部一致
      • `Ctrl+E`查看最近打开文件记录列表
      • Alt + 箭头左右 (回到之前操作的文件)
    • 设置打开代码窗口无上限
    • Ctrl+Shift+O去除无用import,变成了导入.*,导致checkstyle不通过
  • java
    • org.springframework.util.ReflectionUtils
    • 比对相同实体的属性值是否相同
      • 源码

git

本地回滚到到120bc409ee3b8f63a23d0060e55118bcce557acf提交记录

git reset --hard 120bc409ee3b8f63a23d0060e55118bcce557acf

在这里插入图片描述
强制推送到远程仓库,废弃掉之前的提交(这样做可能会改变其他人已经拉取的分支):

git push origin --force --all

本地提交到已有代码分支

在您本地对直接导入并解压缩的代码文件进行修改后,要同步到下载的Git代码分支上,可以按照以下步骤操作:

  • 首先确保你已经在本地的这个项目文件夹下初始化了Git仓库,并且已经关联到远程的GitHub仓库。如果没有,请执行以下命令:

    cd 你的项目文件夹路径
    git init
    git remote add origin 远程仓库地址
    
  • 将修改的文件添加到暂存区:

    git add .
    

    这里.代表所有修改过的文件,如果你只想添加特定文件,可以用git add 文件名

  • 提交本地更改:

    git commit -m "你的提交描述信息"
    
  • 推送到对应的远程分支(假设是master分支):

    git push origin master
    
  • 如果远程分支不是master,比如是dev分支,则改为:

    git push origin dev
    
  • 如果在推送时遇到权限问题或者需要推送到一个新分支,可能需要使用-u参数创建与远程分支的追踪关系,以及-f参数强制推送:

    git push -u origin 新分支名称 -f
    

    请谨慎使用-f参数,因为它会覆盖远程分支上的内容。

IDEA

批量导入快捷键无效

Alt+Enter,批量导入类无效,可以尝试打开下面开关
在这里插入图片描述

更换背景主题

在这里插入图片描述

快捷键

快捷键可以设置eclipse模式,但是有些不生效,可能是冲突了

在这里插入图片描述

Ctrl+单击Eclipse里面是可以跳转到代码内部;IDEA是跳转到引用该方法的地方(Ctrl + Alt +B是跳转到方法内部)


格式化代码快捷键:Ctrl+Alt+L


转换大小写:Ctrl+Shift+Y(eclipse)或者Ctrl+Shift+U


下划线转驼峰的用插件 CamelCase,快捷键是 Shift + Alt + U

在这里插入图片描述

外部修改了文件名称,类内部名称需要修改,进入类内部,点击Alt + Enter,可以选择改成和外部名称一致,或者外部名称改成和内部一致


Ctrl+E查看最近打开文件记录列表


Alt + 箭头左右 (回到之前操作的文件)


设置打开代码窗口无上限

在这里插入图片描述

Ctrl+Shift+O去除无用import,变成了导入.*,导致checkstyle不通过

通过下面设置,默认超过5个就变成导入*
在这里插入图片描述

java

org.springframework.util.ReflectionUtils

ReflectionUtilsSpring框架提供的一个工具类,主要用于简化 Java反射相关的操作。这个类包含了多个静态方法,可以帮助开发者在运行时执行一些常见的反射任务,比如:

  1. 获取和设置私有字段的值:无论字段是否为私有,都可以通过 ReflectionUtils 访问其值。
  2. 调用方法:包括私有方法在内的任意方法都可以通过 ReflectionUtils 被安全地调用。
  3. 检查类、接口、方法和字段是否存在:辅助进行类结构的探测。
  4. 遍历类层次结构:递归查找父类或接口上的方法和字段。
  5. 设置访问权限:通过 makeAccessible() 方法临时改变访问控制,使得原本不可见的成员变为可见。
  6. 处理异常:对于可能出现的反射异常进行了封装和统一处理。
  7. 获取所有字段:不论继承层次深浅,都能获取到类的所有字段。

通过使用 ReflectionUtils,开发者可以减少手动编写反射代码的复杂度,降低潜在的错误风险,并使代码更具可读性和可维护性。在 Spring 框架中,这个工具类广泛应用在依赖注入、AOP代理、事件处理等方面。

使用场景就是表里面codevalue字段存放的是属性名称、属性值,现在就是把表数据和具体实体做个映射,给实体属性set值(惭愧,作为一个老程序员,第一次用这个工具类,特此记录一下

  • 设置属性值
    在这里插入图片描述
  • 具体方法
    public static void setProperty(Object target, String propertyName, Object value) {Field field = ReflectionUtils.findField(target.getClass(), propertyName);if (field != null) {ReflectionUtils.makeAccessible(field);try {field.set(target, value);} catch (IllegalAccessException e) {throw new RuntimeException("无法设置属性值", e);}} else {throw new IllegalArgumentException("找不到名为 " + propertyName + " 的属性");}}
    

比对相同实体的属性值是否相同

在这里插入图片描述

源码

import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Map;/*** 比较实体,返回相同和不同的属性*/
public class EntityCompareTest {private static Map<String, Object> differences = new HashMap<>(); // 用于存储不同属性及其新旧值private static Map<String, Object> unchanges = new HashMap<>(); // 用于存储值未发生改变的属性及值public static void main(String[] args) throws IllegalAccessException {DemoEntity leftEntity = new DemoEntity();leftEntity.setAge(32);leftEntity.setId(20240229L);leftEntity.setName("Tom");leftEntity.setSex(1);DemoEntity rightEntity = new DemoEntity();rightEntity.setAge(31);rightEntity.setId(20240229L);rightEntity.setName("July");rightEntity.setSex(2);Class<?> leftClass = leftEntity.getClass();Class<?> rightClass = rightEntity.getClass();if (!leftClass.equals(rightClass)) {throw new IllegalArgumentException("Entities must be of the same type");}Field[] fields = leftClass.getDeclaredFields();for (Field field : fields) {field.setAccessible(true);Object leftValue = field.get(leftEntity);Object rightValue = field.get(rightEntity);if (leftValue == null && rightValue != null) {differences.put(String.valueOf(field), new ComPareValue<>(leftValue, rightValue));} else if (leftValue != null && !leftValue.equals(rightValue)) {differences.put(field.getName(), new ComPareValue<>(leftValue, rightValue));} else {unchanges.put(field.getName(), leftValue);}}System.out.println("变更信息:" + differences.toString());System.out.println("未变更信息:" + unchanges.toString());}
}
import lombok.Data;/*** demo实体类*/
@Data
public class DemoEntity {private Long id;private String name;private Integer sex;private Integer age;
}
import lombok.Data;/*** 存储差异值.** @param <L>* @param <R>*/
@Data
public class ComPareValue<L, R> {private L left;private R right;public ComPareValue(L left, R right) {this.left = left;this.right = right;}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/710743.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI:139-基于深度学习的语音指令识别与执行

🚀点击这里跳转到本专栏,可查阅专栏顶置最新的指南宝典~ 🎉🎊🎉 你的技术旅程将在这里启航! 从基础到实践,深入学习。无论你是初学者还是经验丰富的老手,对于本专栏案例和项目实践都有参考学习意义。 ✨✨✨ 每一个案例都附带关键代码,详细讲解供大家学习,希望…

Vue3自定义文件列表页面(含上传、搜索、复制链接)

文章目录 一、代码展示二、代码解读三、结果展示 一、代码展示 <template><div class"container"><h1>文件列表</h1><div class"header-actions"><a-input placeholder"输入关键词搜索" v-model:value"…

【笔记】:更方便的将一个List中的数据传入另一个List中,避免多重循环

这里是 simpleInfoList 集合&#xff0c;记为集合A&#xff08;传值对象&#xff09; List<CourseSimpleInfoDTO> simpleInfoList courseClient.getSimpleInfoList(courseIds);if(simpleInfoListnull){throw new BizIllegalException("当前课程不存在!");}这…

Python:练习:编写一个程序,写入一个美金数量,然后显示出如何用最少的20美元、10美元、5美元和1美元来付款

案例&#xff1a; python编写一个程序&#xff0c;写入一个美金数量&#xff0c;然后显示出如何用最少的20美元、10美元、5美元和1美元来付款&#xff1a; Enter a dollar amout:93 $20 bills: 4 $10 bills: 1 $5 bills:0 $1 bills:3 思考&#xff1a; 写入一个美金数量&…

【数据分享】2000~2023年MOD15A2H 061 叶面积指数LAI数据集

各位同学们好&#xff0c;今天和大伙儿交流的是2000~2013年MOD15A2H 061 LAI数据集。如果大家有下载处理数据等方面的问题&#xff0c;您可以私信或评论。 Myneni, R., Y. Knyazikhin, T. Park. MODIS/Terra Leaf Area Index/FPAR 8-Day L4 Global 500m SIN Grid V061. 2021, d…

在原有项目进行业务逻辑开发:同一用户短时间不得提交多次申请,以及更新主表时数据刷新掉了角色权限以及密码重置的问题,详细思路及代码

开发背景&#xff1a; 用户提交表单后&#xff0c;插入到对应数据库表的字段中去&#xff0c;因需要保存是哪一个用户提交的&#xff0c;所以需要拿到主表的user_id&#xff0c;更新功能为记录提交时间&#xff0c;短时间不得再次提交 在对一个已有角色权限分配&#xff0c;登录…

layui中,父页面与子页面,函数方法的相互调用、传参

<%--父页面--%> <script type"text/javascript">var KaoHaoType 0; // 考号类型 自定义参数1// 选取考号类型function SelectKaoHaoType(callBack) {KaoHaoType 0; // 默认选择填涂考号layer.open({type: 2, title: 请选择 考号区类型, ar…

职场中被小人欺负了,应该一笑了之吗?还是怎么办?

在职场中遇到不公正的待遇或被欺负&#xff0c;确实是一个让人困扰的问题。处理这类问题&#xff0c;首先要保持冷静和理性&#xff0c;避免情绪化的反应&#xff0c;这样有助于找到最合适的解决方案。以下是一些建议&#xff0c;您可以根据具体情况考虑&#xff1a; 1. **保持…

网络编程作业day2

1.将TPC和UDP通信模型各敲两遍 &#xff08;1&#xff09;TPC通信模型&#xff1a; 服务器代码&#xff1a; #include <myhead.h> #define SERVER_IP "192.168.125.136" #define SERVER_PORT 1314 int main(int argc, const char *argv[]) {//1、创建用于监…

CLion 2023:专注于C和C++编程的智能IDE mac/win版

JetBrains CLion 2023是一款专为C和C开发者设计的集成开发环境&#xff08;IDE&#xff09;&#xff0c;它集成了许多先进的功能&#xff0c;旨在提高开发效率和生产力。 CLion 2023软件获取 CLion 2023的智能代码编辑器提供了丰富的代码补全和提示功能&#xff0c;使您能够更…

统计业务流量的毫秒级峰值 - 华为机试真题题解

考试平台&#xff1a; 时习知 分值&#xff1a; 200分&#xff08;第二题&#xff09; 考试时间&#xff1a; 两小时&#xff08;共3题&#xff09; 题目描述 业务模块往外发送报文时&#xff0c;有时会出现网卡队列满而丢包问题&#xff0c;但从常规的秒级流量统计结果看&…

Mybatis-Plus介绍

目录 一、Mybatis-Plus简介 1.1、介绍 1.2、特性 1.3、架构 1.4、Mybatis-Plus与Mybatis的区别 二、快速入门 2.1、首先创建数据库mybatis-plus 2.2、创建user表 2.3、插入数据 2.4、创建Spring-Boot项目 2.5、添加依赖 2.6、连接数据库 一、Mybatis-Plus简介 1.1、…

代码随想录第46天|139.单词拆分 多重背包理论基础 背包总结

文章目录 单词拆分思路&#xff1a;代码 多重背包≈0-1背包题目代码 背包总结 单词拆分 3 思路&#xff1a; 代码 class Solution {public boolean wordBreak(String s, List<String> wordDict) {HashSet<String> set new HashSet<>(wordDict);boolean[]…

sheng的学习笔记-卷积神经网络经典架构-LeNet-5、AlexNet、VGGNet-16

目录&#xff1a;目录 看本文章之前&#xff0c;需要学习卷积神经网络基础&#xff0c;可参考 sheng的学习笔记-卷积神经网络-CSDN博客 目录 LeNet-5 架构图 层级解析 1、输入层&#xff08;Input layer&#xff09; 2、卷积层C1&#xff08;Convolutional layer C1&…

Dockerfile(5) - CMD 指令详解

CMD 指定容器默认执行的命令 # exec 形式&#xff0c;推荐 CMD ["executable","param1","param2"] CMD ["可执行命令", "参数1", "参数2"...]# 作为ENTRYPOINT的默认参数 CMD ["param1","param…

VUE3自定义文章排行榜的简单界面

文章目录 一、代码展示二、代码解读三、结果展示 一、代码展示 <template><div class"article-ranking"><div class"header"><h2 class"title">{{ title }}</h2></div><div class"ranking-list&qu…

电子技术——PN结电流关系方程

电子技术——PN结电流关系方程 平衡状态下的PN结 平衡状态下的PN结界面总共有两种电流&#xff0c;一种为 扩散电流 另一种为 漂移电流 。两种电流形成的平衡区域称为 耗散区 。 在平衡状态扩散电流等于漂移电流&#xff0c;此时静电流为0&#xff0c;PN结外部没有电流&…

Java SPI:Service Provider Interface

SPI机制简介 SPI&#xff08;Service Provider Interface&#xff09;&#xff0c;是从JDK6开始引入的&#xff0c;一种基于ClassLoader来发现并加载服务的机制。 一个标准的SPI&#xff0c;由3个组件构成&#xff0c;分别是&#xff1a; Service&#xff1a;是一个公开的接口…

Java ElasticSearch面试题

Java ElasticSearch面试题 前言1、ElasticSearch是什么&#xff1f;2. 说说你们公司ES的集群架构&#xff0c;索引数据大小&#xff0c;分片有多少 &#xff1f;3. ES的倒排索引是什么&#xff1f;4. ES是如何实现 master 选举的?5. 描述一下 ES索引文档的过程&#xff1a;6、…

【Emgu CV教程】7.8、图像锐化(增强)之同态滤波

文章目录 一、同态滤波大体原理二、代码三、效果举例 一、同态滤波大体原理 之前介绍的几个锐化、增强方法&#xff0c;包括更早之前介绍的图像模糊方法&#xff0c;都是基于空间域进行处理&#xff0c;也就是直接对目标点周边像素值进行各种数学运算。而这篇文章提到的同态滤…