自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 收藏
  • 关注

原创 cookies为什么会有csrf风险,为什么token可以避免

如果使用token,因为token可以不放在cookie里面,在发送请求时经过前端程序处理才可以把token放到请求参数中,所以在直接请求伪造的地址时,浏览器会自动让请求携带cookie,但是没经过前端的操作,请求不会携带token,服务器没有验证token,就会拦截不服务。当浏览器发送请求且浏览器存在 Cookie 且同源不跨域时,浏览器会自动在请求头携带上 Cookie 数据。所以浏览器对csrf背锅,即利用的是网站对用户网页浏览器的信任。CSRF 利用的是网站对用户网页浏览器的信任。

2024-03-16 16:08:11 408

原创 nginx相关操作

start nginxtaskkill /f /t /im nginx.exe

2024-03-15 11:09:00 85

原创 easypoi导出Word中,表格分页时上边框丢失

然后,检查当前页的最后一行是否是表格的最后一行,如果是,则在表格下方添加一个空行,并为该行的每个单元格设置上边框线。通过这两个步骤,您可以确保在分页时不丢失上边框。请根据您的具体需求和代码结构进行相应的调整和集成。2. 当表格分页时,检查当前页的最后一行是否位于表格的最后一行。如果是,则在表格的下方添加一个空行,并为该行的每个单元格设置上边框。创建表格,并为每个单元格设置上边框线。创建一个新段落,并在段落中添加分页符(

2024-01-26 19:27:11 547

原创 递归的一些个人思考

最近在复习数据结构与算法,结合了操作系统的知识,对递归有了新的理解,故落笔记录。

2024-01-25 14:54:22 382 1

原创 springboot的自定义注解使用

/ 自定义注解// 自定义注解的属性// 控制器类@MyAnnotation // 使用自定义注解// 自定义拦截器@Component@Override// 判断请求方法上是否有自定义注解= null) {// 在这里处理自定义注解的逻辑// 省略postHandle()和afterCompletion()方法// 注册拦截器@Override// 自定义注解// 自定义注解的属性// 控制器类@MyAnnotation // 使用自定义注解。

2024-01-20 23:06:23 563

原创 springboot启动后加载热点数据到Redis

要在Spring Boot启动完成时加载数据到Redis,

2024-01-20 22:36:30 738

原创 springboot启动过程中触发的事件

在这个事件中,Spring Boot的SpringApplication正在准备应用程序上下文之前,但是在任何bean定义或应用程序上下文加载之前。在这个事件中,Spring Boot已经加载了应用程序的配置文件,并且环境准备好被使用。在这个事件中,Spring Boot已经完成了初始化工作,并且应用程序已经可以处理请求。在这个事件中,Spring Boot已经创建了应用程序上下文,但是在加载bean定义之前。在这个事件中,Spring Boot应用程序已经完全启动,并且可以接收和处理请求。

2024-01-20 22:22:39 453

原创 springboot中异步失效

如果将异步方法在所属类中调用,则不会开启多线程。比如在controller中定义一个@Async的异步方法,在当前controller其他位置调用该异步方法,会发现并没有新开一个线程用于处理异步方法,而是和调用者共同使用一个线程。

2024-01-16 11:49:09 431 1

原创 中文名、文件传输使用 utf8与base64

在调用第三方接口时,常需要使用utf8对中文名进行编码,使用base64对文件字节数组进行编码,从而将文件、字段属性放在一个JSON中进行传递。

2023-12-20 10:14:24 356 1

原创 idea常用debug功能简笔

11.远程调试 在run/debug configuration中,增加一个remote,然后在远程计算机中使用相关命令运行,本地以debug运行,此时idea会监听远程计算机的帧栈变化,反馈到本地。10.当前行强制退出 terminal 会执行完当前方法后退出,并不是从当前行退出,应该在控制台frames中右击,选择force return。​4.异常断点,可以定位选择异常类型发生的具体行,通过控制台左侧选择view breakpoints设置。右击断点,设置断点触发条件,一般在循环中使用。

2023-12-09 18:07:20 367 1

原创 记录一次Oracle报错--ORA-00923

select *,需要指定具体的表或者视图,所以要给from 后的表或者视图加一个别名,这点和MySQL不一样。报错,ORA-00923 未找到要求的FROM关键字。

2023-12-04 14:22:38 423

原创 C++中文乱码

方法1,Windows系统选择简体中文,系统就会使用gbk,需要把vs Code保存的编码方式设为同cmd.exe一样的gbk,同时设置vsCode的encoding 为gbk。方法2,编译时g++ healthCare.cpp -fexec-charset=gbk -o healthCare.exe 显示指定编译的编码字符集为gbk。今天用c++写了个简单的提示框提示我每45分钟休息一下眼睛,但是中文一直乱码,说明是解编码有问题,搜了一下解决方案。

2023-11-29 15:20:51 408

原创 mybatisXML文件中if标签的test判断条件语句

如果在 test条件中直接用 < 或者 <= 会报错,因为会把<识别为标签开始符号。此时应该用lt表示<,使用lte表示<=

2023-11-13 11:28:45 155 1

原创 springboot事务处理

transanctional 会回滚,且抛出异常,可以在调用中进行try catch。

2023-11-07 15:35:38 37

原创 MySQL tinyint(1)列 查询返回Boolean

https://mp.weixin.qq.com/s?__biz=MzA3OTY0ODI4MA==&mid=2247484030&idx=1&sn=53240fc0f0fdac9e12e744240ade7668&chksm=9fb10109a8c6881fdbb9cc3dffab2e88864eac599e0d126ee3e7653c2a017499a25c1c9e522d&scene=27

2023-11-04 19:19:41 141

原创 拦截器、注解详解

注解配合拦截器注解定义。

2023-10-26 15:51:26 42 4

原创 开发实用工具

2.IDEA lombok 插件 可以省略手动写setter getter等。3.easyCode 根据数据库生成相关的代码,省略了手动敲。1.easy-Everything 快速查找文件。

2023-08-30 11:33:55 26

原创 将list批量插入Redis

第二个的list必须转为Array,不然整个list对象会被当做一个value,而不是一个list元素组成的list类型的value。

2023-08-29 17:52:23 212

原创 版本号命名约定

gitlab 测试提交到正式,是整个镜像搬过去。仅供参考,一般内部达成共识即可,无固定要求。中大功能 新增一个明显的功能模块;大调架构 上线前一般以0开头;末bug修改 修改使用bug。小小改动 已有功能优化​。

2023-07-19 11:30:13 31

原创 数据库设计思路

两个纬度: 数据流、业务流。3.日志表(某刻状态)

2023-07-03 09:37:14 45 1

原创 数据库表设计思路

一般按照两个纬度进行设计:1.数据流2.业务流。

2023-05-25 09:19:39 83

原创 Method breakpoints may dramatically slow down debugging

今天以debug方式启动本地项目时,控制台走到某一步卡着不动;以run方式可以快速启动完成;使用Maven的package插件也可以打包;IDEA提示" Method breakpoints may dramatically slow down debugging ",估计是断点打多了,点击左侧的"mute breakpoints"按钮(红圆点上一道斜线),静音所有断点,项目启动后,取消静音进行调试即可。

2023-04-12 15:43:17 226

原创 使用hashmap判断是否包含某个元素

在日常开发中,经常用到某个字段是否存在的遍历,hashmap将key换算成hash值作为数组的索引,速度更快,今天无聊,故写个文章。综上,在实际应用中,hashmap是检验是否包含字符串的高效方式之一。for循环遍历查询包含某个字符串的平均耗时为 80 单位时间。hashmap查询包含某个字符串的平均耗时为 35 单位时间。

2023-03-16 21:25:22 616

原创 常用的Excel导入循环伪代码

最近做了多文件、多sheet页的Excel导入工作,用伪代码记录一下相关思路,多文件多sheet即通过多文件request获取fileMap对每个文件每个sheet重复操作即可

2023-03-04 00:01:35 219

原创 Java常规业务的数据结构表结构

数据表: 临时表(保存的数据) 数据表(提交、确认的数据) 历史表(保留历史记录)数据实体: vo entity

2023-02-13 10:59:30 113

原创 延迟初始化占位类模式实现单例模式

延迟初始化占位类模式实现单例模式

2023-01-31 17:51:25 97

原创 JavaIO流读写数据速度比较

传统IO、缓冲IO、NIO读写文件速度作比较

2022-12-24 18:26:22 638

原创 服务器ip改变时,前端无法访问后端

项目的前后端代码都部署在一台服务器上,当前服务器ip变更,首先考虑的是修改vue.config.js中的代理ip,观察代理ip是localhost,所以不需要修改,但是启动项目后,页面报错network error ,打开开发者工具,观察产生错误的network点击进入,发现前端发送的request是服务器之前的ip,现在开始思考更改请求配置的BASE_URL,进入config/index.js找到BASE_URL,ctrl B追进,进入了. env.development,更改一下重启服务即可...

2022-06-02 11:06:04 1018

原创 VSCode插件安装包网页端下载

工作的电脑不可以连接互联网,需要为VSCode下载部分插件。1.先登录 VSCode官网: https:// code.visualstudio.com2.再点击Extensions,搜索要用的插件选择历史版本然后下载,3.再把下载的安装包放到工作电脑,打开VSCode进行通过本地安装即可...

2022-05-12 09:16:22 1178 1

原创 同步两个表的信息

表1 工号 用户名表2 工号 域名需要把表2的域名更新到表1的用户名中#要把表二也写上UPDATE 表1 a ,表2 b SET a.用户名=b.域名 WHERE a.工号=b.工号;

2022-04-22 17:15:43 76

原创 趋势面试题

趋势面试这次面试可以学到很多东西,认识到自己还有很多的不足,面试官即兴发挥,不会按照所谓的八股文面试,自己面的很烂,还是得多学习!线程如何创建?如何实现线程的定时任务?springboot如何对大规模的API增加异常处理(全局)?springboot监听器、过滤器、拦截器应用场景?如何对hashmap数据进行排序?...

2021-10-22 12:10:29 136

原创 AOP原理

我们为Spring的某个bean配置了切面,那么Spring在创建这个bean的时候,实际上创建的是这个bean的一个代理对象,我们后续对bean中方法的调用,实际上调用的是代理类重写的代理方法。而Spring的AOP使用了两种动态代理,分别是JDK的动态代理,以及CGLib的动态代理。JDK动态代理(spring优先使用)创建InvocationHandler接口的实现类1.被代理对象必须实现一个接口。代理对象也会实现该接口,并获得被代理对象的引用,从而实现AOP;代理对象只能织入被代理对象实现

2021-10-15 15:15:13 92

转载 using

http://m.biancheng.net/view/7152.htmlhttps://blog.csdn.net/qq_38497266/article/details/99989291 using使用

2021-10-14 19:39:52 58

原创 mysql杂记【牛客刷题学习】

顺序:FROMON JOINWHEREGROUP BYUNIONWITHHAVINGSELECTDISTINCTORDER BYLIMITIFNULLIFNULL( expr1 , expr2 ) expr不为null返回expr1,为null返回expr2笛卡尔积 适合判相等select a.name from tableA a , tableB b; 这个from返回的是笛卡尔积子表子表需要取别名用 is null is not null ..

2021-10-14 19:36:09 93

原创 数组实现顺序结构链表的insert

public class Test{ public Status insert(int i , Object o){ //i是插入位置的索引 //先判断数组是否为空引入空指针、i索引是否合法、插入后会不会越界 if(myList == null || i<0 || i>myList.length ||( myList.MAX_LENGTH ==myList.length) return Status.WRONG; for( int j = myList.len

2021-09-21 03:38:55 111

原创 using使用

http://m.biancheng.net/view/7152.htmlhttps://blog.csdn.net/qq_38497266/article/details/99989291 using使用

2021-09-04 20:25:00 48

原创 mysql无法开启服务端mysqld.service

centOS虚拟机中安装了mysql,今日准备启动做一些测试#开启mysql serversystemctl start mysql.service报错:Job for mysqld.service failed because a timeout was exceeded.连接超时进入日志查看:find / -name mysqld.log #忘了日志在哪可以通过这个命令日志在 /var/log/mysqld.log#查看今天日志信息,看到error信息cat /var/.

2021-09-04 01:16:28 971 1

原创 scala的方法(method) 和 函数(function)

格式为:val func_name [ : param_type => result_type ] = (param_name:param_type …) => function_bodyval myFunc:Int=>String = (c:Int)=>"*"*c//简化模式val myFunc2 = (c:Int)=>"*"*c

2021-08-25 23:48:21 379

原创 scala第一次使用的问题

1.idea创建scala的project发现没有module,error:adding module to project:null关闭项目,并从idea的目录重新导入即可2.无法创建scala的类在 工程目录结构 下的library中加上一个SDK路径,即使global libraries中有SDK也要在这里导入一下3.运行失败 Cannot start compilation: the output path is not specified for module “scalaDemo”

2021-08-24 00:04:44 856

原创 Log4J使用

写在前面:参考黑马程序员视频课、网络博客等1.概念Logger Appender LayoutLogger 日志记录器 控制日志的输出级别和日志是否输出 1.日志八大级别:OFF FATAL ERROR WARN INFO DEBUG TRACE ALL; 2.常用5种如下(按照优先级由高到低): FATAL 致命错误,程序宕机 ERROR 发生错误但是不影响系统运行 WARN 警告 INFO 记录程序的运行过程 DEBUG 类似于IDEA的debug模式,更为细节

2021-08-07 15:53:21 56

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除