- 博客(392)
- 资源 (12)
- 收藏
- 关注
原创 通过nginx配置解决跨源资源共享(CORS)漏洞
跨源资源共享(CORS)是一种机制,允许不同源之间的Web资源相互交互。在CORS不安全配置漏洞中,Web应用的服务器被误配置为允许来自任何来源的请求访问资源,或者错误地暴露敏感数据给不受信任的外部源。
2025-02-07 15:16:22
72
原创 xxl-job使用nginx代理https后,访问出现403异常问题解决
xxl-job使用nginx代理https后,访问出现403异常问题解决
2025-02-06 14:13:55
314
原创 spring boot解决swagger中的v2/api-docs泄露漏洞
spring boot解决swagger中的v2/api-docs泄露漏洞
2025-01-07 16:34:40
405
原创 nacos启动报错ErrCode:503, ErrMsg:server is DOWNnow, detailed error message: Optional[No leader for raft
今天在部署nacos之后,启动应用突然报错ErrCode:503, ErrMsg:server is DOWNnow, detailed error message: Optional[No leader for raft。经过排查后发现是因为,之前这个nacos在别的地方启动过,所有可能有影响。如果服务器的 IP 地址发生变化,Raft 记录的集群地址将失效,导致无法正确选举出 Leader。该错误是由于 Nacos 采用的 Raft 算法导致的。文件夹,以清除失效的集群地址记录。
2024-12-26 15:22:24
271
原创 Make sure that you provide correct `viewBox` prop (default `0 0 1024 1024`) to the icon.
Make sure that you provide correct `viewBox` prop (default `0 0 1024 1024`) to the icon.
2024-08-06 09:38:48
325
1
原创 CentOS7安装Mysql8
MySQL 服务启动项很多,一般不通过命令行输入,而是写在配置文件中,启动时指定配置文件即可。如果没有指定配置文件,则会去 /etc/my.cnf 等默认路径下找配置文件。3.将下载好的 tar 包上传到服务器上,这里演示上传到了 /root/local/ 文件夹下。11.必须为 MySQL 创建 mysql 用户才能启动服务,否则会报错。这里直接指定自己创建的配置文件,把一切都掌握在自己手里。12.启动服务,指定配置文件和使用 mysql 用户启动。10.指定自己创建的配置文件初始话 MySQL 服务。
2024-07-03 10:15:30
383
原创 git push代码报错fatal: protocol error: bad line length 239 send-pack: unexpected disconnect while readin
git push代码报错fatal: protocol error: bad line length 239 send-pack: unexpected disconnect while readin
2024-03-27 21:43:51
529
原创 @JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss“)查询时间与数据库中不一致问题
JsonFormat默认情况下timeZone为GMT(即标准时区),而北京是在东八区,所以会造成差8小时.private Date crtDate;
2023-10-12 10:16:35
814
原创 js对json数组中的json对象去重
使用map()方法将JSON对象转换为字符串,并使用Set对象去除重复项。然后,我们将字符串再次转换为JSON对象,并使用Array.from()方法将其转换为数组。这样,我们就得到了一个去重后的JSON对象数组。
2023-08-15 11:02:57
321
原创 37.Vue生命周期-挂载流程
下面绿色框中的是Vue实例,红色框中的是具体的逻辑,而且最主要的是红色框中的还在操作绿色框中的数据。这是因为在定时器里,我们修改了data中的数据opacity,而Vue有这样的承诺,只要修改了data中的数据,那它就会帮我们重新解析模板,而一重新解析模板,那么插值语法中的change就又会调用一次,所以才会有这种无限循环创建定时器的情况发生。所以我们可以发现,所谓的生命周期,其实就是指Vue中特殊的函数,像上面我们使用到的mounted函数,就是Vue在一个关键性的时刻帮我们调用的。都需要在这里去制定。
2023-07-27 11:44:52
262
原创 36.Vue引出生命周期
下面绿色框中的是Vue实例,红色框中的是具体的逻辑,而且最主要的是红色框中的还在操作绿色框中的数据。这是因为在定时器里,我们修改了data中的数据opacity,而Vue有这样的承诺,只要修改了data中的数据,那它就会帮我们重新解析模板,而一重新解析模板,那么插值语法中的change就又会调用一次,所以才会有这种无限循环创建定时器的情况发生。所以我们可以发现,所谓的生命周期,其实就是指Vue中特殊的函数,像上面我们使用到的mounted函数,就是Vue在一个关键性的时刻帮我们调用的。
2023-07-19 22:38:03
166
原创 34.Vue自定义指令-对象式
还有一种就是,我们去定义指令的时候,也不要去写v-前缀,定义指令的时候需要给指令起名字,那么这个指令的名字直接就叫big,而用的时候还是要规规矩矩的写v-big。像需求一这种问题,我们就使用函数的写法就能实现,需求二,我特意设置了一个细节问题,是函数实现不了的,我们就需要用对象的写法去实现。我们可以看到,当修改和v-big毫不相干的值name,都会引起big的调用,则充分说明了指令所在的模板被重新解析时,也会引起指令的重新调用。这个页面一进来,并没有获取焦点,但是在点击n+1以后,却又获取了焦点。
2023-07-17 16:11:16
234
原创 java避免出现科学计数法结果
2.如果使用了BigDecimal,为了避免科学计数可以使用toPlainString()1.如果是double结果,为了避免科学计数可以使用下面方法。
2023-05-30 09:36:00
2512
原创 33.Vue自定义指令(函数式)
还有一种就是,我们去定义指令的时候,也不要去写v-前缀,定义指令的时候需要给指令起名字,那么这个指令的名字直接就叫big,而用的时候还是要规规矩矩的写v-big。像需求一这种问题,我们就使用函数的写法就能实现,需求二,我特意设置了一个细节问题,是函数实现不了的,我们就需要用对象的写法去实现。我们可以看到,当修改和v-big毫不相干的值name,都会引起big的调用,则充分说明了指令所在的模板被重新解析时,也会引起指令的重新调用。就靠big函数中收到的参数,它收到的参数中有两个比较常用,这里打印出来看一下。
2023-04-04 17:07:58
1010
原创 npm 打包报错JavaScript heap out of memory(亲测可行)
npm 打包报错JavaScript heap out of memory(亲测可行)
2022-11-19 14:02:46
1509
原创 删除有外键关联的表报错,Cannot delete or update a parent row: a foreign key constraint fails
【代码】删除有外键关联的表报错,Cannot delete or update a parent row: a foreign key constraint fails。
2022-10-21 11:17:43
435
原创 sqlserver management studio(2008R2版本)添加注释列及默认值列
我们在刚安装完sqlserver的时候,管理界面的工具是不会有注释列和默认值列的,如果需要的话,就要去修改注册表。我们看到的值:1,2,6;→ 把它改成:1,2,6,7,17;win+R,输入regedit-打开注册表,在打开之前记得先将管理工具关掉。我这里使用的版本是sqlserver2008R2版本。...
2022-08-11 17:19:49
1633
原创 spring cloud解决双重跨域报错The ‘Access-Control-Allow-Origin‘ header contains multiple values , but only one
这是因为Vue的后端gateway做了一次跨域设置,而vue的前端又向其他的后台服务也发请求,如果其他的后端服务如果也做了跨域设置就会导致重复跨域问题。
2022-08-03 15:12:02
1010
原创 32.Vue的内置指令
我们之前已经学过一些Vue的指令了比如v-on,v-bind,v-if了,其实Vue还有一些其他的内置指令,我们这一节来学一下。我们学过的指令: v-bind:单向绑定解析表达式,可简写为 :xxx v-model:双向数据绑定 v-for:遍历数组/对象/字符串 v-on:绑定事件监听,可简写为@ v-if:条件渲染(动态控制节点是否存在) v-else:条件渲染(动态控制节点是否存在) v-show:条件渲
2022-07-22 16:46:48
532
2
原创 31.Vue过滤器
过滤器定义对要显示的数据进行特定格式化后再显示(适用于一些简单逻辑的处理)语法1.注册过滤器Vue.filter(name,callback)或newVue{filters{}}2.使用过滤器{{xxx|过滤器名}}或v-bind属性='xxx|过滤器名'备注1.过滤器也可以接收额外参数,多个过滤器也可以串联2.并没有改变原本的数据,是产生新的对应的数据httpshttpshttps。......
2022-07-18 12:02:02
308
原创 30.Vue收集表单数据
收集表单数据若,则v-model收集的是value值,用户输入的就是value值若,则v-model收集的是value值,且要给标签配置value值。若1.没有配置input的value属性,那么收集的就是checked(勾选or未勾选,是布尔值)2.配置了input的value属性(1)v-model的初始值是非数组,那么收集的就是checked(勾选or未勾选,是布尔值)https。......
2022-07-16 18:42:54
459
原创 29.Vue监测数据改变的原理
Vue监视数据的原理1.Vue会监视data中所有层次的数据2.如何监测对象中的数据?通过setter实现监视,且要在newVue时就传入要监测的数据(1)对象中后追加的属性,Vue默认不做响应式处理(2)如果需要给后添加的属性做响应式,请使用如下API或3.如何监测数组中的数据?通过包裹数组更新元素的方法实现,本质就是做了两件事(1)调用原生对应的方法对数据进行更新(2)更新解析模板,进而更新页面4.在Vue修改数组中的某个元素一定要用如下方法1.使用这些API。......
2022-07-15 17:20:50
1206
2
原创 js数组的splice()方法
第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)三个参数,第一个参数(起始位置),第二个参数(0),第三个参数(插入的项)两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数)...
2022-07-15 14:39:21
873
原创 28.Vue列表排序
上一节我们讲了Vue的列表过滤,那么这一节我们把上一节写的列表过滤升级一下,加一个功能叫做列表排序。我们把上一节的例子增加按年龄升序,按年龄降序,还有展示原顺序的功能。注意,这里增加的排序并不影响过滤的功能,也就是过滤和排序的功能是并存的。...
2022-07-12 14:40:37
1917
原创 27.Vue列表过滤
目录1.使用watch属性实现列表过滤2.使用计算属性实现列表过滤3.总结这一小节我们来讲一下Vue的列表过滤,那么想要完成列表过滤就需要有两个关键的步骤:1.获取用户输入2.根据用户输入信息进行匹配针对获取用户输入这一步,我们就需要使用v-model,使用双向绑定,这样用户的输入就可以实时的反馈到数据层。而针对用户信息匹配这一步,最标准的写法应该是使用计算属性去写,但是针对初学者来说可能想不到这么深,初学者可能最开始的想法是这样的只有用户输入的内容发生变化的时候才会进行过滤匹配,所以就要监听这种变化,那么
2022-07-11 13:56:55
887
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人