知识归纳
文章平均质量分 70
ZNineSun
大道至简,返璞归真
展开
-
Java8之Stream流的Collectors.toMap Duplicate key问题
在项目部署的时候,编译通过,但是一直运行不起来,看到错误日志之后发现:原因是我使用stream将list转成Map的时候,有一个RouteId是重复的,导致转换报错。原创 2023-11-30 17:34:31 · 1522 阅读 · 0 评论 -
Bean转换工具MapStruct看这一篇就够了
mapstruct是一种实体类 映射框架,能够通过Java注解将一个实体类的属性安全地赋值给另一个实体类。它基于约定优于配置方法极大地简化了 Java bean 类型之间映射的实现,有了mapstruct,只需要定义一个映射器接口,声明需要映射的方法,在编译过程中,mapstruct会自动生成该接口的实现类,实现将源对象映射到目标对象的效果。总的来说,有如下三个特点:基于注解在编译期自动生成映射转换代码类型安全、高性能、无依赖性。原创 2023-10-24 19:29:56 · 1113 阅读 · 0 评论 -
修复ie浏览器无访问页面或dns问题
1.打开设置里的Internet选项,依次点击以下选项1.打开设置里的Internet选项,依次点击以下选项重启电脑即可原创 2020-09-15 15:30:22 · 1145 阅读 · 0 评论 -
谷歌邮箱登录服务器设置
1.下载并安装谷歌邮箱客户端点击此处下载安装包2.安装完成之后会进入一个登陆界面,输入用户名和要登陆的谷歌邮箱账号,点击下一步,进行网络设置选择"POP"作为您使用的接收邮件服务器类型。 在"Incoming Server:(接收邮件服务器:)"字段中输入"pop.gmail.com “, 然后点击"Next(下一步)”。在"User Name:(用户名:)“字段中输入 Gmail 用户...原创 2018-11-29 20:29:18 · 24372 阅读 · 0 评论 -
MAC终端美化
由于agnoster 主题内夹带有特殊符号,需要另外安装Powerline 字体才能够正常显示,在终端机上输入底下安装Powerline 字体指令即可,在终端依次输入一下三行命令。安装过程中如果出现了链接超时的错误,不要慌,就再来一次,一次不够来两次~,安装完毕后,就会看见一个非常大字oh my zsh ,如上图所示。至于像【agnoster】这种类似的主题的名字怎么去找,大家可以自行去Oh My Zsh的官网去查看,当设置完成之后,在回到我们的终端就会发现,已经较默认的漂亮很多了。进入终端的偏好设置项。原创 2023-09-08 17:59:20 · 1175 阅读 · 0 评论 -
解决mac系统mkdir命令不可用的问题
如果没删除成功,可以尝试直接使用rm -rf命令将这个文件夹删除即可,然后再试试mkdir命令,就会发现可以用啦。他会在你的主目录下创建一个disabled_shell_files文件夹。然后经过我的各种尝试终于给解决了,所以到这儿记录一下。可以通过上面这个命令切换到你的主目录下。1.选择shell->新建命令。在弹出的对话框里面输入。原创 2023-05-05 14:46:12 · 1361 阅读 · 0 评论 -
Mac 系统:zsh: command not found: pip解决方法
mac zsh: command not found: pip解决方法。原创 2023-04-28 09:57:52 · 9034 阅读 · 3 评论 -
mac在终端中使用vscode打开文件
我们都知道使用open命令 + 指定文件(文件夹)便可打开文件,但是mac自带的文件应用不如vscode好用,如何直接使用一个命令采用vscode的方式来打开指定文件呢?原创 2023-04-26 11:21:17 · 3085 阅读 · 0 评论 -
分片上传—webloader
最近研究大文件上传方案的时候偶然间发现的一个百度开源的工具:webloader,用了一下,确实还不错,下面带着大家一起使用一下。原创 2022-12-08 15:28:12 · 615 阅读 · 2 评论 -
SSO 单点登录和 OAuth2.0 的区别和理解
SSO是的缩写,OAuth是的缩写,这两者都是使用令牌的方式来代替用户密码访问应用。流程上来说他们非常相似,但概念上又十分不同。SSO大家应该比较熟悉,它将登录认证和业务系统分离,使用独立的登录中心,实现了在登录中心登录后,所有相关的业务系统都能免登录访问资源。OAuth2.0原理可能比较陌生,但平时用的却很多,比如访问某网站想留言又不想注册时使用了微信授权。以上两者,你在业务系统中都没有账号和密码,账号密码是存放在登录中心或微信服务器中的,这就是所谓的使用令牌代替账号密码访问应用。原创 2022-11-09 21:32:25 · 200 阅读 · 0 评论 -
token 过期后,如何自动续期?
JWT token的 payload 部分是一个json串,是要传递数据的一组声明,这些声明被JWT标准称为claims。除了以上标准声明以外,我们还可以自定义声明。下面代码片段实现了生成一个带有过期时间的token。JWT设置了过期时间以后,一旦过期,那么接口就不能访问了,需要用户重新登录获取token。如果经常需要用户重新登录,显然这种体验不是太好,因此很多应用会采用token过期后自动续期的方案,只有特定条件下才会让用户重新登录。......原创 2022-08-04 12:44:13 · 3948 阅读 · 0 评论 -
private修饰的方法可以通过反射访问,那么private的意义是什么?
Java,在一个类中,为了不让外界访问到某些属性和方法,通常将其设置为private,用正常的方式(对象名.属性名,对象名.方法名)将无法访问此属性与方法,如果不通过getset方法的方式,那么如何去访问这些设为private类型的方法或者属性呢?但是仍然无法访问私有化的构造方法,普通方法,和私有属性,此时我们可以使用他们继承父类(AccessibleObject)中的setAccessible()方法,来设置或取消访问检查,以达到访问私有对象的目的。答案是有的,这就是java反射带来的便利。...原创 2022-07-21 23:16:29 · 403 阅读 · 0 评论 -
带你彻底认识String
很明显两个之间的引用不是指向同一个地方,我在上面也提到了,不知道大家有没有注意,使用newString创建String时会先在堆上创建字符串对象,驻留到字符串常量池,并将字符串的引用压入操作数栈,所以在将字符串驻留到常量池时发现已经有ABCD这个字符串,于是直接返回ABCD的地址,但是这个地址只是保存在堆中,栈里存放的还是堆里创建的对象地址。最后,当执行Strings2="Hydra"时,发现字符串常量池中已经驻留这个字符串,直接返回对象的引用,因此s1和s2指向的是相同的对象。.........原创 2022-07-20 00:25:11 · 294 阅读 · 0 评论 -
颠覆你的认知?get和post请求的本质
GET和POST是HTTP请求的两种基本方法,要说它们的区别,可能我们脱口而出的就是 :GET把参数包含在URL中,POST通过request body传递参数。比较官方的标准答案 像以下这些:当然面试的时候回答出这些也不错啦,本文你以为我们就为了给你一个面试的答案吗???no no no如果我告诉你GET和POST本质上没有区别你信吗?首先我们要先了解GET和POST是什么?HTTP协议中的两种发送请求的方法。HTTP是什么?HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。那么 问题来原创 2022-07-05 16:15:48 · 147 阅读 · 0 评论 -
h5项目打包为app
我们通过Hbuilder进行打包,首先下载Hbuilder,自行下载安装即可,本文不再说明。1.新建项目文件——>新建——>项目生成如下所示的目录结构我们将除manifest.json文件之外的其他文件全部删除,也就是说只保留manifest.json然后将你的h5项目下所有的文件全部复制到该目录2.修改manifest.json2.1 基础配置上面我们看到有一个appid,这个appid来自于哪儿呢,访问Hbuilder个人配置中心再往下我们可以看到一个应用入口原创 2022-05-13 22:30:46 · 6002 阅读 · 1 评论 -
Map到HashMap的一步步实现
文章目录1.Map1.1 Map接口1.2 Hash 散列函数1.3 键值关系的实现1.4 Map 约定的 API1.4.1 Map 中约定的基础 API1.4.2 Map 约定的较为高级的 API1.4.3 Map 高级 API 的使用1.5 从 Map 走向 HashMap1.5.1 HashMap 的继承关系1.5.2 HashMap概述1.5.3 HashMap的数据结构2.HashMap实现原理3.HashMap 中的 Hash函数定义4.HashMap 的插入操作4.1 putVal 的流程分析原创 2022-05-11 19:58:06 · 823 阅读 · 0 评论 -
isEmpty 和 isBlank 的用法区别
1 isEmpty系列1.1 StringUtils.isEmpty()是否为空. 可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 isEmpty(" ")=falseStringUtils.isEmpty(null) = trueStringUtils.isEmpty("") = trueStringUtils.isEmpty(" ") = falseStringUtils.isEmpty("bob") = falseStringUtils.isEmpty原创 2022-03-01 10:33:12 · 810 阅读 · 0 评论 -
如何保证token的安全
在讲解token之前,我们先了解一下认证和授权之间的联系和区别什么是认证?通俗地讲就是验证当前用户的身份,证明 “你是你自己”,如:用户名密码登录邮箱发送登录链接手机号接收验证码只要你能收到邮箱 / 验证码,就默认你是账号的主人什么是授权(Authorization)?用户授予第三方应用访问该用户某些资源的权限你在安装手机应用的时候,APP 会询问是否允许授予权限(访问相册、地理位置等权限)你在访问微信小程序时,当登录时,小程序会询问是否允许授予权限(获取昵称、头像、地区、性别等个人原创 2022-02-28 23:23:59 · 9360 阅读 · 2 评论 -
linunx系统下的钉钉穿透
1.先将项目下载git clone https://github.com/open-dingtalk/pierced.git2.将linux目录上传至linux服务器3.linux下执行命令cd linuxchmod 777 ./dingnohup ./ding -config=./ding.cfg -subdomain=wzs 8080其中:1.wzs:域名前缀2.8080:我们要穿透的端口地址注意windows下的运行命令:ding -config=ding.cfg原创 2021-04-06 16:42:07 · 761 阅读 · 0 评论 -
vscode常用插件设置
1.markdown自动生成目录插件1.引入插件markdown TOC2.设置换行符3.在文章顶部右单击4.最终显示效果如下1.markdown自动生成目录插件1.引入插件markdown TOC2.设置换行符此处是设置的windows系统,其他系统请参考此处系统换行符windows\n\runix\nmac\r3.在文章顶部右单击4.最终显示效果如下...原创 2020-11-07 19:59:38 · 207 阅读 · 0 评论 -
docker自定义网络部署redis集群
1.拉取redis镜像sudo docker pull redis2.自定义网络sudo docker network create redis --subnet 172.38.0.0/16这样就创建了一个redis网络3.使用shell脚本创建若干个redis服务这里我们创建6个结点,运行一下脚本for port in $(seq 1 6); \do \mkdir -p /mydata/redis/node-${port}/conf touch /mydata/redis/no原创 2020-11-06 09:13:39 · 374 阅读 · 0 评论 -
excel常用操作
首先我们先下载好演示的excel表格1.设计规则2.怎样填对单元格内容四大规则:1.一个单元格只对应一个数据属性2.相同的数据的填写要完全一致那么我们该如何避免:在录入前,对表格进行设置,控制录入的内容若我们要保证输入的数据在0-1000之间,则可以通过下列操作方式3.日期格式必须要正确如何快速的录入当天的日期快速设置单元格格式快速将错误日期变换为正确日期4.文本型数字有风险,转换后才能使用快速将文本型数字转换为数字3.最强分析工具-数据..原创 2020-10-29 09:07:13 · 272 阅读 · 0 评论 -
牛客错题集
1.对接口的描述正确的是()A.一个类可以实现多个接口B.接口可以有非静态的成员变量C.在jdk8之前,接口可以实现方法D.实现接口的任何类,都需要实现接口的方法解析:答案:AA,一个类只能有一个直接父类,但是继承是有传递性的。一个类可以实现多的接口。一个接口可以继承多个类。B,接口中没有普通变量(普通成员变量),接口中都是常量,默认修饰符:public static finalC,JDK8之前,接口中的方法都是默认public abstract的,JDK8之后,接口中可以有static原创 2020-10-19 14:23:05 · 4737 阅读 · 0 评论 -
解决引入lombok导致项目报错的问题
项目引入lombok后报错:java: java.lang.ExceptionInInitializerError这个错误信息是:初始化异常,这里出现的原因是我们引入的lombok的依赖版本太低了,只要去Maven仓库下载最新的依赖就好了<!--lombok--> <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <dependency>原创 2020-10-07 09:45:54 · 2069 阅读 · 0 评论 -
cmd配色
1.首先下载对应的主题安装包,点击此处下载2.解压现在好的文件,同时打开cmd进入并切换路径至你解压的文件夹下3.输出指令colortool.exe -b solarized_light.itermcolors注意 solarized_light.itermcolors为主题名称,对应在schemes目录下4.最终效果如下:...原创 2020-08-06 10:12:50 · 617 阅读 · 0 评论 -
文件预览工具-前端
给大家推荐一款及其好用的文件预览插件,简直不要太好用,点击此处进入原创 2020-07-02 15:45:56 · 618 阅读 · 0 评论 -
chorm安装非应用商店下的插件
1.输入链接:chrome://extensions/2.将下载好的插件拖动至此页面,点击安装即可原创 2020-06-24 10:30:04 · 784 阅读 · 0 评论 -
vscode自动生成markdown目录
1.安装插件2.解决自动生成目录异常问题3.鼠标指针放在第一行,右单击选择下图所示内容1.安装插件2.解决自动生成目录异常问题3.鼠标指针放在第一行,右单击选择下图所示内容...原创 2020-04-10 14:55:57 · 3871 阅读 · 0 评论 -
windows无法访问指定设备、路径或文件。您可能没有合适的权限访问这个项目
1.问题描述windows无法访问指定设备、路径或文件。您可能没有合适的权限访问这个项目2.解决办法:2.1. 下载File Association Fixer.exe文件点击此处下载提取码:upv82.2.点击下图所示步骤2.3.重启即可...原创 2020-02-16 14:42:04 · 4929 阅读 · 5 评论 -
springBoot集成eureka
1.eureka用于做负载均衡以及微服务集群,所以依赖springCloud,故我们引入先在原有的springBoot基础上引入依赖 <dependencyManagement> <dependencies> <dependency> <groupId>org.springfr...原创 2020-02-13 00:40:40 · 459 阅读 · 0 评论 -
windows安装SqlServer
找到一篇质量比较高的博文,推荐使用,点击查看原创 2020-02-12 22:27:10 · 155 阅读 · 0 评论 -
nginx在windows下的安装与使用
1.nginx功能简介nginx是为了实现负载均衡减轻服务器压力而设计2.安装nginx2.1 点击此处下载2.2 下载完成之后解压缩,先进入到conf文件夹下进行一些必要的配置配置2.3 打开nginx.conf文件,添加要负载均衡的服务器地址(轮训策略与加权轮询)2.3.1 添加轮训地址upstream backser { #权重设置为5 ,如果7个请求过来,理论上有...原创 2020-02-11 14:18:02 · 279 阅读 · 0 评论 -
SQLyog 报错2058 :连接 mysql 8.0.11 解决方法
# 1.配置新连接报错:错误号码 2058,分析是 mysql 密码加密方法变了。如图:2.解决办法:1.登录到mysql控制台,登录你的 mysql 数据库,如图:2.然后 执行这条SQL:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';注:password ...原创 2020-01-08 12:22:46 · 143 阅读 · 0 评论 -
Windows 云服务器搭建 FTP 服务
1.本文搭建 FTP 服务组成版本如下:Windows 操作系统,本文以 Windows Server 2012 为例。IIS:Web 服务器,本文以 IIS 8.5 为例。2.操作步骤:1.登录云服务器windows系统登录云服务器的方法点击此处2.在 IIS 上安装 FTP 服务1.在操作系统界面,打开服务器管理器。2. 在“服务器管理器”窗口中,单击【添加角色与功能】。如...原创 2020-01-06 20:12:25 · 1722 阅读 · 0 评论 -
windows10远程连接服务器
1.WIN键+R键,输入mstsc,并回车,打开远程桌面连接工具2.在远程桌面连接工具的计算机和用户名中分别填入服务器的IP地址和用户名(默认为administrator),并点击连接3.提示需要输入密码,请按照正确的密码输入,并点击 确定 。注:若忘记密码,点击重置服务器密码4.第一次连接服务器,可能会提示证书错误,选中“不再询问……”并 点击 是 信任证书5.连接成功之后就可...原创 2020-01-04 11:38:57 · 2614 阅读 · 0 评论 -
禁用wps自启
控制面板→管理工具→任务计划程序→任务计划程序库,有两个wps的任务计划,禁用掉原创 2019-12-11 10:35:52 · 1923 阅读 · 1 评论 -
历年英语作文模板解析
20101.适用类型:适用于感谢对方接待自己并且要求对方回访以回馈对方接待1.1.真题回顾:You have just come back from the U.S. as a member of a Sino-American culturalexchange program. Write a letter to your American colleague to1 Express...原创 2019-12-08 15:17:37 · 1854 阅读 · 0 评论 -
数据结构知识点
1.稀疏矩阵的表示法:比如:1.三元组表示法2.十字正交链表法3.带行指针向量的单链表表示法数据结构定义:struct LNode//数据结构{ int col;//列 DataType value;//元素值 struct LNode *next;//指向同行下一个非零结点指针};4.带辅助行向量的二元组表示法5.伪地址法...原创 2019-11-27 09:11:59 · 2417 阅读 · 2 评论 -
软件项目管理考前复习资料
第一章.软件项目管理概述1.实现项目目标的制约因素有:项目范围成本进度计划客户满意度2.项目管理包括:启动过程组计划过程组执行过程组控制过程组收尾过程组3.什么是项目:为了创造一个唯一的产品或者提供一个唯一的服务而进行的临时性的努力,所以说项目具有临时性特性4.过程管理就是对过程进行管理,目的是要让过程能够被共享,复用,并得到持续的改进5.项目与日常运作的...原创 2018-12-12 16:53:27 · 235283 阅读 · 7 评论 -
gitHub创建,上传,更新项目
上传项目到gitHub1.首先确保已经安装git,如果未安装,请自行百度安装2.在gitHub上面创建一个New respository3.进行如下配置4.打开git-bash.exe5.cd到你的项目目录6.执行命令:git init该命令是在你的项目目录下初始化一个repository,执行成功后,会在你的目录下生成一个.git的隐藏文件。7.执行命令:git add...原创 2018-12-12 17:13:55 · 343 阅读 · 0 评论