- 博客(90)
- 收藏
- 关注
原创 550 login name in prison
550 login name in prison 判定登录名被临时挂起,一般15分钟后系统会自动放开。有可能跟多次验证密码错误有关,找邮件的服务商放开一下就可以了。
2023-06-30 11:05:37
493
原创 token自动续期方案
该方法的好处:只需N(token的有效时间)分钟续期一次token就行,避免频繁续期一、原理登录生成token,有效期10分钟。将token存入redis,key与value皆为token,有效期20分钟token返回给前端前端携带token访问后端,后端先从redis获取token如果redis有token,则校验token是否到期没有到期返回ture到期了,则重新根据账户信息生成token信息,并将token放入redis当 中(注意redis的key不改变),有效期20分钟
2022-03-29 13:37:38
6651
4
转载 架构的授权方式有三种:架构层级授权(指令集授权)、内核层级授权(也就是你所说的ip核授权)、使用层级授权
一个公司若想使用ARM的内核来做自己的处理器,比如苹果三星TI等等,必须向ARM公司购买其架构下的不同层级授权,根据使用需要购买相应的层级授权。架构的授权方式有三种:架构层级授权、内核层级授权(也就是你所说的ip核授权)、使用层级授权。使用层级授权,要想使用一款处理器,得到使用层级的授权是最基本的,这就意味着你只能拿别人提供的定义好的ip来嵌入在你的设计中,不能更改人家的ip,也不能借助人家的ip创造自己的基于该ip的封装产品;内核层级授权,是指可以以一个内核为基础然后在加上自己的外设,比如USART
2021-08-18 10:39:55
8006
原创 proxy_pass后面带反斜杠与不带反斜杠的区别
区别:1、带反斜杠,转发的请求的路径会去除location后面的拦截路径2、不带反斜杠,转发请求的路径会将收到的请求原封不动的转发实例请求路径 http://192.168.88.128:123/api/login1、带反斜杠 server { listen 123; server_name 192.168.88.128; location /api/ { proxy_pass http://127.0.0
2021-03-16 18:08:15
603
原创 nginx 配置vue项目增加统一前缀
nginx配置: server { listen 123; server_name 192.168.88.128; location /calledfront/trafficbg/public/ { proxy_pass http://127.0.0.1:8080/; proxy_pass_header Set-Cookie; proxy_set_header Host $p
2021-03-16 17:56:15
4413
原创 linux 安装指定版本的nginx
这里介绍两种linux环境下jdk的安装以及环境配置方法1、第一种属于傻瓜式安装,一键安装即可(yum安装);2、第二种手动安装,需要自己去nginx官网下载需要的nginx版本,然后解压并配置环境,整个过程其实很简单。一、yum一键安装二、手动安装nginx官网下载路径:http://nginx.org/en/download.html安装步骤这里下载的是1.180版本tar -zxvf nginx-1.18.0.tar.gzcd nginx-1.12.2/# 执行配置./conf
2021-03-16 17:49:33
924
转载 什么是量子
就以激光为例吧:我们都知道,bai高能激光可以熔化金属。那么问题来了:激光对金属的加热是连续的吗?从宏观上看,激光对金属的加热显然是连续的:金属温度是1°C、1°C慢慢地“平滑”地增加上去的,表现在数学上则是:金属的温度和激光赋予金属的能量之间的关系随激光功率的变化构成了一根平滑的曲线。但是,当我们把金属被加热1°C的过程不断细分,即将激光赋予金属的能量的单位不断细分的时候,我们能把这个过程最终拆分到以1个光子对金属加热的温度增量为单位,再往下显然就没法再拆了,因为正常情况下你根本没法拆掉单一的光子
2021-03-05 16:43:54
476
原创 linux下根据查询结果求和
grep ‘查询内容’ app.log | awk -F分列标识 '{sum+=$列数}END{print sum}'示例:我这边是将查出来的结果通过":" 分列,然后取的是第10列的数(也就是->)
2021-02-04 17:28:58
2147
原创 linux下如何在.gz包中查找指定内容
gunzip -c file.gz | grep '需要搜索的内容’grep小记--color=auto 对匹配到的行添加颜色 -v 取反 -i 不区分大小写 -n 加行号 -c 打印匹配到的行数 -o 只显示匹配到的文字 -q 静默模式echo $? 查看上一条命令结果,执行成功为0,不成功为非0. -A # after 向下显示#号 -B # before 向上显示#号 -C # c
2020-12-29 17:44:13
9415
2
原创 idea上一步失效:Ctrl+Alt+左箭头 Ctrl+Alt+右箭头
可能问题一:与系统快捷键冲突解决方法:在桌面右键-图形选项-快捷键-禁用ps:桌面右键如果找不到图形选项可参考:https://blog.youkuaiyun.com/weixin_42440768/article/details/111566757可能问题二:与QQ音乐快捷键冲突解决办法:禁用或者更改上一首、下一首快捷键...
2020-12-22 20:57:36
6316
4
原创 ojdbc6手动装载
如果你需要的版本是ojdbc6-11.2.0.4,你可以直接下载我的文件,放到自己的maven下面,路径:com\oracle\ojdbc6\11.2.0.4.0https://306t.com/file/28095605-474520571密码:1234561、下载好jar包2、win+r打开dos窗口执行命令命令mvn install:install-file -Dfile=你的文件地址 -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=你
2020-12-03 14:49:05
535
转载 Navicat导出表结构到excel
SELECTCOLUMN_NAME 字段名称,COLUMN_TYPE 数据类型,IF(IS_NULLABLE=‘NO’,‘是’,‘否’) AS ‘必填’,COLUMN_COMMENT 注释FROMINFORMATION_SCHEMA.COLUMNSwhere– mysql为数据库名称,到时候只需要修改成你要导出表结构的数据库即可table_schema =‘mysql’AND– table_name为表名,到时候换成你要导出的表的名称– 如果不写的话,默认会查询出所有表中的数据,这样
2020-10-29 17:33:51
946
转载 vm15设置成中文界面
之后在论坛里看到一个方法,对着VMware Workstation Pro的图标右键,修改快捷方式里的目标属性,在最后加上[空格]–locale zh_CN(这里的“[空格]”是真的让你输入一个空格)
2020-10-12 18:00:37
16352
9
原创 java递归生成目录树
一、创建实体类public class TreeNode { protected int id; protected int parentId; protected int level; protected String name; protected String code; protected String type; protected List<TreeNode> children = new ArrayList<>(
2020-09-30 17:19:49
778
原创 springcloud版本GA、springcloud版本RC、springcloud版本M、springcloud版本SR的区别
GA =一般可用性(发布); 应该非常稳定,功能齐全GA = General Availability,通用版本RC =候选发布者; 可能功能完整,应该非常稳定 - 问题应该是相对罕见和次要的,但值得报告,试图修复它们以便发布。候选版本(Release Candidate)M =里程碑构建 - 可能不完整; 应该是模糊的稳定(即它不仅仅是一个夜间快照),但可能仍然有问题。milestones:里程碑SR =服务版本(主要版本之后的后续维护版本-RELEASE)...
2020-08-25 14:50:27
1776
转载 为什么maven中加入lombok依赖后,还需要安装插件
因为lombok的引入使得java文件使用javac编译成字节码文件中包含get set函数,但是源代码中找不到定义,IDE会认为这是错误,因此需要安装一个lombok的插件下面有一份阿里面试题大全,感兴趣的小伙伴可以拿去看一下提取码:123456https://306t.com/file/28095605-454494170...
2020-08-14 10:49:29
2434
转载 redis缓存清除
redis缓存清除1.redis根目录调出命令行(cmd)2.登录redis:redis-cli -h 127.0.0.1 -p 63793.查看所有key值:keys *4.删除指定索引的值:del key5.清空整个 Redis 服务器的数据:flushall6.清空当前库中的所有 key:flushdb...
2020-08-11 17:11:57
274
转载 Host is not allowed to connect to this MySQL server
**原因:**数据库中mysql库中user表中的host地址为localhost如图二,因此外部连接的时候就会报该错误。解决办法:1、服务器上登录mysql数据库MySQL mysql -u 用户名 -p密码2、执行use mysql;3、执行update user set host = ‘%’ where user = ‘root’;(将user表root用户的host地址修改为%)4、可以执行select host from user where user = ‘root’;看一下是否修
2020-08-10 18:08:14
706
原创 navicat15 RA-28547:connection to server failed, probable Oracle Net admin error
环境win10+navicat15+oracle版本11.2.0.4.0原因因为Navicat本地的OCI版本与Oracle服务器服务器不符造成的。所以我们要做的就是下载OCI使之与我们所安装的Oracle服务器相符合下载oci1、官网下载,但是下载的时候需要登录http://www.oracle.com/technetwork/cn/topics/winia64soft-083954-zhs.html2、去我的网盘下载,提取码:123456 64位下载:https://306t.co
2020-07-21 14:53:12
1104
2
原创 并发和并行的区别
并发:交替进行举例:在一台单cpu的电脑上启动两个线程,a线程先抢到时间片,去运行,运行到三 分之一,时间片到期,这时b线程抢到时间片,去运行,重复上述过程,直至a、 b线程运行结束。同一时间只有一个线程在执行,但是因为cpu处理的速度太快 了,让人感觉是两个线程在同时运行,因此称之为并发并行:同时进行举例:在一台多cpu的电脑上启动两个线程,a线程在acpu运行,b线程在bcpu运行。 a线程、b线程同一时间在不同的cpu上同时运行,因此称之为并发...
2020-07-21 10:15:05
202
1
原创 HotSpot新生代的垃圾回收分配比例8:1:1
新生代中的对象98%是朝生夕死的,所以并不需要按照1: 1的比例来划分内存空间,而是将内存分为一块较大的Eden空间和两块较小的Survivor空间,每次使用Eden和其中的一块Survivor。当回收时,将Eden和Survivor中还存活着的对象一次性地拷贝到另外一块Survivor空间上,最后清理掉Eden和刚才用过的Survivor的空间。HotSpot虚拟机默认Eden和Survivor的大小比例是8: 1,也就是每次新生代中可用内存空间为整个新生代容量的90%(80%+10%),只有10%的内存
2020-07-17 17:31:56
1030
1
原创 一分钟带你了解:垃圾回收的复制算法
原理为了解决标记清除算法的效率问题,一种称为“复制”(Copying)的收集算法出现了,它将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将还存活着的对象复制到另外一块上面,然后再把已使用过的内存空间一次清理掉。这样使得每次都是对其中的一块进行内存回收,内存分配时也就不用考虑内存碎片等复杂情况,只要移动堆顶指针,按顺序分配内存即可,实现简单,运行高效。缺点同时只有一半的内存被使用复制算法执行过程如下图:-----------------------------
2020-07-17 17:08:50
347
1
原创 一分钟带你了解:标记-清除算法
原理最基础的收集算法是“标记一清除”(Mark-Sweep) 算法,如它的名字- -样,算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收掉所有被标记的对象。之所以说它是最基础的收集算法,是因为后续的收集算法都是基于这种思路并对其缺点进行改进而得到的。缺点1、效率问题,标记和清除过程的效率都不高:2、空间问题,标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能会导致,当程序在以后的运行过程中需要分配较大对象时无法找到足够的连续内存而不得不提前触发另一次垃圾收
2020-07-17 16:52:08
989
4
原创 一分钟带你了解java的四种引用:强引用、软引用、弱引用、虚引用
强引用强引用就是指在程序代码之中普遍存在的,类似Object obj = new Object()这类的引用,只要强引用还存在,垃圾收集器永远不会回收掉被引用的对象。当内存空间不足是jvm会抛出oom错误,也不会回收强引用对象。软引用软引用用来描述一些还有用但非必须的对象,对于软引用关联的对象,在系统发生oom异常之前将会把这些对象列为可回收对象,并进行二次回收,如果这次回收之后,内存还不足,才会抛出oom错误弱引用弱引用用来描述非必须的对象,但他的强度不软引用更弱一些,被弱引用关联的对象只能生存
2020-07-17 15:45:40
191
1
原创 一分钟带你了解:根搜索算法
原理通过一系列名为“GC Roots”的对象作为起点,从这些节点开始向下搜索,搜索所走过的路径被称为引用链(Refreance Chain),当一个对象没有任何引用链相连,则证明此对象不可用。如下图所示,object6、object7、object8虽然相互关联但是他们到GC Roots是不可达的,所以将他们判定为不可回收的对象在java语言中可作为GC Roots的对象包括以下四种:1、虚拟栈中(栈帧中的本地变量表)引用的对象2、方法区中的类静态属性引用的对象3、方法区中常量引用的对象4、本
2020-07-17 14:42:31
816
3
原创 一分钟带你了解:引用计数算法
原理给对象添加一个计数器,每当有一个地方引用时计数器值就+1;当引用失效时就-1;任何时刻计数器都为0的对象就是不可能再被使用的对象。优点实现简单,判断效率高缺点很难解决对象之间的相互循环引用问题。ps:这也是java语言没有没有采用引用计数算法来管理内存的主要原因--------------------------------------------分割线---------------------------------------------------------以上知识均来源于该书籍
2020-07-17 14:11:04
371
1
原创 java8 map根据value升降序,代码瞬间提升了bo格
import java.util.*;import java.util.stream.Collectors;public class Test { public static void main(String[] args) { Map<Integer, Double> Probs = new TreeMap<>(); Probs.put(1, 0.5); Probs.put(2, 1.5); Probs.
2020-07-17 10:51:36
336
1
原创 使用springboot注解实现aop也太简单了吧
以下操作默认已经搭建好了springboot项目1、导入aop依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> <version>2.0.5.RELEASE</version&
2020-07-15 15:18:57
1092
1
转载 navicat15查看mysql版本、查看oracle版本、查看sqlserver版本的命令
mysql数据库: select version()oracle数据库: select * from v$instance sqlserver数据库: SELECT @@VERSION下图以oracle为例--------------------------------------------分割线---------------------------------------------------------下面是一些java相关的书籍,大家有兴趣的可以去下载看一下以下书籍的提取码皆为
2020-07-15 11:02:12
2752
4
原创 navicat15 oracle library is not loaded
加粗样式环境win10+navicat15+oracle版本11.2.0.4.0原因因为Navicat本地的OCI版本与Oracle服务器服务器不符造成的。所以我们要做的就是下载OCI使之与我们所安装的Oracle服务器相符合下载oci1、官网下载,但是下载的时候需要登录http://www.oracle.com/technetwork/cn/topics/winia64soft-083954-zhs.html2、去我的网盘下载,提取码:123456 64位下载:https://30
2020-07-15 10:48:09
2756
2
原创 java8当中的类型推断
某些情况下,用户需要手动指明类型,建议大家根据自己或项目组的习惯,采用让代码最便于阅读的方法。有时省略类型信息可以减少干扰,更易弄清状况;而有时却需要类型信息帮助理解代码。经验证发现,一开始类型信息是有用的,但随后可以只在真正需要时才加上类型信息。下面将介绍一些简单的规则,来帮助确认是否需要手动声明参数类型。Lambda表达式中的类型推断,实际上是Java 7就引入的目标类型推断的扩展。读者可能已经知道Java7中的菱形操作符,它可使javac推断出泛型参数的类型。参见例1-1。例1-1 使用菱形操作符,
2020-06-29 19:47:07
750
原创 地摊赚钱秘籍(视频)+地摊攻略玩法(新鲜出炉)
视频下载链接:https://306t.com/file/28095605-450852058提取码:123456《城市地摊财富秘籍》目录第一章 摆地摊卖什么第一节:地摊的消费人群 8第二节:地摊货有哪些 10第三节:几十元本钱卖什么 15第四节:几百元本钱卖什么 1
2020-06-27 17:58:36
2408
原创 地摊赚钱秘籍(视频)
一、地摊赚钱秘籍(视频)视频下载链接:https://306t.com/file/28095605-450852058提取码:1234562、地摊攻略玩法(新鲜出炉)3、摆地摊赚钱方案全攻略4、城市地摊财富秘籍5、地摊经济高收入秘籍6、如何摆地摊赚钱...
2020-06-27 17:44:53
280
转载 cas是什么
cas是什么?cas是compareandswap的简称,从字面上理解就是比较并更新,简单来说:从某一内存上取值V,和预期值A进行比较,如果内存值V和预期值A的结果相等,那么我们就把新值B更新到内存,如果不相等,那么就重复上述操作直到成功为止。...
2020-06-17 15:17:18
540
转载 Command line is too long
Idea启动项目报错:Command line is too long. Shorten command line for className or also for JUnit defaultconfiguration.如下图所示:解决方法:在该项目文件夹.idea/workspace.xml中找到…然后在其中添加:问题得到解决。————————————————版权声明:本文为优快云博主「阿飞哥-Jeffrey」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链
2020-06-05 10:19:12
221
原创 线程池为什么用run方法启动线程
start和run的区别start会在启动的时候创建一个线程运行run方法run是直接在主线程运行(就相当于调用了一个普通方法)重点线程池里面的任务已经创建好了,不需要通过start方法再去创建线程,因此直接调用run运行即可...
2020-05-29 17:13:35
1253
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人