自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(793)
  • 资源 (12)
  • 收藏
  • 关注

原创 ############---------写博客的意义---------############

简介 每个人对于博客的用户可能不一样,我这个博客呢主要记录一些我在工作中遇到的一些技术问题,或者是网上查找的一些资料整理。有原创文章,也有转载的,都是记录自己觉得有意义的东西。起因 2014年的一天,开始进行部分EveryNote资料迁移 2011年毕业工作我就在记录自己接触到的知识了,之前我都是将自己的资料和整理的信息记录到EveryNote上,但是...

2014-02-24 10:01:34 2127 1

原创 301 Redirect to Universal Link can‘t open app

只能用户点击才能触发打开app。

2024-09-20 16:12:19 497

转载 iOS 唤起APP之Universal Link(通用链接)

网上看到这篇关于IOS Universal Link的文章,很不错,这里分享一下。iOS 唤起APP之Universal Link(通用链接) - Code.Rookie - 博客园 (通用链接)是Apple在iOS9推出的一种能够方便的通过传统链接来启动APP的功能,可以使用相同的网址打开网址和APP。当你的应用支持(通用链接),当用户点击一个链接是可以跳转到你的网站并获得无缝重定向到对应的APP,且不需要通过浏览器。如果你的应用不支持的话,则会在中打开该链接。 在苹果开发者中可以看到对它的介

2024-09-20 08:04:39 153

转载 HEALTHCHECK 指令详解

为了帮助排障,健康检查命令的输出(包括 stdout 以及 stderr)都会被存储于健康状态里,可以用 docker inspect 来查看。和 CMD, ENTRYPOINT 一样,HEALTHCHECK 只可以出现一次,如果写了多个,只有最后一个生效。假设有个镜像是个最简单的 Web 服务,希望增加健康检查来判断其 Web 服务是否在正常工作,可以用 curl 来帮助判断其。决定了该次健康检查的成功与否:0:成功;# 如果基础镜像有健康检查指令,使用这行可以屏蔽掉其健康检查指令。

2024-09-10 16:10:12 86

转载 AI 编程助手测评:GitHub Copilot vs 豆包 MarsCode

我要测评(或者说介绍)的两款 AI 编程助手,分别是和豆包 MarsCode。是最早出现的 AI 编程助手,也是市场占有率和知名度最高的一个。它是微软出品,底层是 OpenAI,又依托着世界最大的程序员社区,自然是实力非凡。豆包 MarsCode是基于豆包大模型打造的智能开发工具。它的背后是字节跳动,本来是内部工具,据说字节超过70%的工程师都在用,每月贡献百万行量级的代码。6月26日,它正式在北京对外发布,外界可以免费使用,属于新鲜出炉。

2024-09-06 13:47:38 201

转载 Universal Links apple-app-site-association文件 Not Found的问题,需要外网IP访问

这个Universal Links 之前一直能正常访问,ios app发版也没有动过相关配置。为什么就失效了呢?前2个链接是可以正常访问的,即apple-app-site-association的配置是ok的。问题出在最后一个连接上,Not Allowed 可能是我们的服务器不允许app-site-association.cdn-apple.com访问。联想到前几天服务器受到了攻击,所以运维调整了安全策略,有时候在我们的域名下可以安全提示。和运维确认以后,得知运维禁止了所有的国外ip访问。

2024-08-20 08:51:17 240

转载 Quartz 调度框架介绍

Quartz

2024-08-06 17:31:17 206

原创 Nginx中$http_host、$host、$proxy_host的区别

变量是否显示端口值是否存在host浏览器请求的ip,不显示端口否"Host:value"显示值为a:b的时候,只显示ahttp_host浏览器请求的ip和端口号是"Host:value",value存在就显示proxy_host被代理服务的ip和端口号默认80不显示其他端口显示"Host:value"显示配置反向代理时,接口请求报404问题应用描述:前端应用域名为A(ww.a.com), 后端服务域名为B(www.b.com);

2024-08-02 13:43:08 2254

转载 AES解密报错Invalid AES key length: xx bytes与Given final block not properly padded的解决方法

最近和其它系统联调接口,用到了Java的AES加解密。由其它系统AES加密,本人的系统获取到加密报文后,AES解密,获取到内容。本来是比较简单的,可是其它系统只提供了秘钥,没有提供解密方法,解密方法需要我们自己写……正常应该是加密方提供解密方法的吧,我觉得……还好最后都解决了,在此记录下。

2024-07-25 18:03:27 520

转载 Nginx HTTPS反向代理,开启SNI,proxy_ssl_server_name 和proxy_ssl_name介绍

Nginx作用反向代理与上游服务器使用HTTPS建连时,默认不启用SNI,使用参数启用;默认不验证上游服务器返回的证书,使用开启上游证书验证后Nginx会使用配置文件中指定的CA验证上游服务器返回证书的合法性,同时也会比对证书中的CommonName信息。

2024-07-24 10:52:21 929

原创 You can‘t specify target table ‘xxx‘ for update in FROM clause

可以作为临时表处理,因此可以通过如下更改 SQL 来执行。在添加或更新数据时不能在同一个表上使用子查询。

2024-07-05 11:27:46 205

转载 mybatis报错:Error querying database. Cause: java.lang.NumberFormatException: For input string: xx

'Y',此时,mybatis认为拿一个字符串(String)和一个字符(char)比较,也会报错。参数格式化异常导致,例如在动态sql拼接中String类型参数和数字比较。2. 改为双引号"2",外层使用单引号。3. 加转义实体字符串引号。

2024-06-14 16:53:38 315

原创 Spring boot 注解Annotation大全【持续更新】

最主要本文将持续更新日常使用的注解,也可以评论中告知其他注解。

2024-05-16 09:15:32 1142 1

转载 Nginx 中 proxy_cookie_path 的用法

昨天调试 nginx 的时候, 转发都配置好了, 结果登录之后又跳到了登录页面, 顿时一脸懵逼;

2024-05-14 16:22:08 743

原创 mybatis 跨库查询 mysql

跨库,表关联的查询,实现起来很简单:selecta.uidfrom只要在表的前边加上库名即可。

2024-05-11 11:00:05 767

原创 后端nginx使用set_real_ip_from获取用户真实IP

假如说你的CDN厂商使用nginx,那么在nginx上将$remote_addr赋值给你指定的头,方法如下:后端PHP代码getRemoteUserIP.phpphpecho $ip;?访问getRemoteUserIP.php,结果如下:120.22.11.11 //取到了真实的用户IP,如果CDN能给定义这个头的话,那这个方法最佳优点:获取到最真实的用户IP地址,用户绝对不可能伪装IP缺点:需要CDN厂商提供。

2024-04-07 13:32:13 2781

原创 nginx多https证书配置精简

其实有很多方式,网上看到一个这个方法,给大家介绍一下。

2024-04-07 10:51:48 4670

原创 Nginx专栏分享

这里给大家分享一个其他博友的专栏,很不错:https://blog.csdn.net/wzj_110/category_9072895.html

2024-03-25 17:03:44 255

原创 安装python web.py Mako

sudo dnf install python3pip3 install --user mako在linux下安装python2.7.x,打开终端:  wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz #下载到当前目录  tar xvfz Python-2.7.3.tgz #解压  cd Python-2.7.3 #进入目录   ./configure  make #编译  su #转为root用户  make install #安装

2024-02-29 10:11:12 942

原创 Mybatis 批量插入数据 SQL

上面代码中在 SQL 语句的最外层使用了 for 循环,好处是将 List 类型的集合传递来写入数据时可以有的是新增有的是修改,例如3行数据,第一三行由于主键字段对应属性 sid 被设置为 NULL ,会向数据库中新增行,第二行数据设置了 sid ,并且该值在数据库中有对应行,那么会修改数据库中的该行上的数据。通过在 java 中测试,发现上面的语句新增一行成功后会返回1,修改成功后会返回2(这里有疑惑,如果清楚原因的麻烦跟帖科普下)。这种写法适合插入数据的项不变,

2024-02-02 11:11:45 2872

原创 mybatis&Mysql分页查询,以及SQL_CALC_FOUND_ROWS与count(*) 性能对比

温故而知新,这里记录一下。

2024-01-11 17:48:18 1417

原创 HandlerMethodArgumentResolver用于统一获取当前登录用户

为了将 HTTP 请求参数转换为 Java 对象,我们需要创建一个自定义的实现类。在这个类中,我们需要实现方法和方法。要在 Spring Boot 应用程序中使用自定义的实现类,我们需要将其注册到应用程序上下文中。为此,我们可以创建一个类,并实现接口。在这个类中,我们需要重写方法,并将自定义的实现类添加到参数解析器列表中。3.1 自定义权限拦截器自定义权限拦截器AuthenticationInterceptor,需实现HandlerInterceptor。

2023-12-14 17:28:33 1492

原创 springboot-redis设置定时触发任务详解

从Redis 2.8.0开始,Redis加入了发布/订阅模式以及键空间消息提醒(keyspace notification)功能。键空间消息提醒提供了允许客户端通过订阅指定信道获取Redis数据变化的能力。需要注意的是,键空间消息提醒并非可靠的,它不会对订阅端是否接收到消息进行确认。例如某个订阅的客户端暂时断开连接,在其直到恢复连接期间发生的事件将无法再次获得。

2023-12-14 15:39:40 1561

原创 @FunctionalInterface、Lambda表达式和方法引用

小插曲:Callable和Runnable到底什么区别?这两者也都是JDK预定义的函数接口,两者都不接收参数,主要用于多线程编程。Runnable无返回值,一般用于new一个新线程的时候,在新线程中执行代码。Callable一样一般用于在新线程中执行,只不过执行成功后有返回值,如果执行失败还会抛异常。最后,一起分析:c1引用了一个Lambda表达式;c2引用了一个新的Lambda表达式,表示式的实现代码中调用了c1提供的call()方法,并将call()方法的返回值返回。

2023-12-08 10:37:26 1257

转载 Redis实战之Redisson使用技巧详解

什么是 Redisson?来自于官网上的描述内容如下!Redisson 是一个在 Redis 的基础上实现的 Java 驻内存数据网格客户端(In-Memory Data Grid)。它不仅提供了一系列的 redis 常用数据结构命令服务,还提供了许多分布式服务,例如分布式锁、分布式对象、分布式集合、分布式远程服务、分布式调度任务服务等等。相比于 Jedis、Lettuce 等基于 redis 命令封装的客户端,Redisson 提供的功能更加高端和抽象,逼格高!

2023-12-07 19:13:39 1939 1

原创 WebMvcConfigurer配置详解

WebMvcConfigurer配置类其实是Spring内部的一种配置方式,采用JavaBean的形式来代替传统的xml配置文件形式进行针对框架个性化定制,可以自定义一些Handler,Interceptor,ViewResolver,MessageConverter。基于java-based方式的spring mvc配置,需要创建一个类并实现接口;在Spring Boot 1.5版本都是靠重写的方法来添加自定义拦截器,消息转换器等。

2023-11-14 10:17:42 2022

原创 SpringBoot项目中ModelMapper配置以及使用

项目中对象与对象赋值转换使用的频率非常的高,比如数据库表实体对象(Entity)与业务类对象(Model)之间的赋值传递,或者模型对象(Model)与视图对象(ViewModel)之间的赋值传递。如果我们一个一个字段的赋值,将是非常繁琐并且毫无价值的重复工作,此时虽然我们可以自己通过反射提取个公共的方法来处理,但是更高效的方式是查看是否有第三方已经提供了比较成熟稳定的工具包,避免重复造轮子的工作。

2023-11-13 16:06:32 1002

原创 Spring Data JPA方法名命名规则

简单条件查询:查询某一个实体类或者集合。按照Spring Data的规范的规定,查询方法以find | read | get开头(比如 find、findBy、read、readBy、get、getBy),涉及查询条件时,条件的属性用条件关键字连接,要注意的是:条件属性以首字母大写。框架在进行方法名解析时,会先把方法名多余的前缀截取掉,然后对剩下部分进行解析。

2023-11-13 11:29:29 1781

原创 Redis ACL安全策略详解

在 Redis6 之前的版本,我们只能使用 requirepass 参数给 default 用户配置登录密码,同一个 redis 集群的所有开发都共享 default 用户,难免会出现误操作把别人的 key 删掉或者数据泄露的情况。因此 Redis6 版本推出了 ACL(Access Controller List)访问控制权限的功能,基于此功能,我们可以设置多个用户,并且给每个用户单独设置命令权限和数据权限。

2023-11-03 14:57:23 1063

原创 HSTS详解,以及HSTS VS 301 redirect

看到这篇文章,感觉不错,这里转载记录一下:https://juejin.cn/post/6844903865788137479本文主要是通过梳理一下相关概念,理清这两种配置的目的。

2023-10-30 14:54:55 896

原创 ElasticSearch 8.x 安装及集群搭建

Elasticsearch,简称为ES。ES是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据。Elasticsearch是面向文档的一种数据库,这意味着其不再需要行列式的表格字段约束。ES会存储整个构造好的数据或文档,然而不仅仅是储存数据,这使得文档中每个数据可以被标识,进而可以被检索。在ES中,执行index,search,sort或过滤文档等操作都不是传统意义上的行列式的数据。ES从根本上对数据的不同思考方式也正是他能应对复杂数据结构的全文检索的原因之一。

2023-10-17 15:31:19 6458

转载 Shiro的基础知识、回顾URL拦截

本文主要讲解的知识点有以下:权限管理的基础知识模型粗粒度和细粒度的概念回顾URL拦截的实现Shiro的介绍与简单入门只要有用户参与的系统一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。用户认证用户授权shiro是apache的一个开源框架,是一个权限管理的框架,实现 用户认证、用户授权。

2023-10-13 15:59:56 456

原创 Nginx支持SNI证书,已经ssl_server_name的使用

传统的应用场景中,一台服务器对应一个IP地址,一个域名,使用一张包含了域名信息的证书。随着云计算技术的普及,在云中的虚拟机有了一个IP,对应多个域名,使用多张证书的应用场景,SNI技术应运而生。SNI(Server Name Indication),即实现了一个服务器使用多个域名证书的TLS扩展,支持用户配置多个域名证书。

2023-10-07 16:49:40 1221

原创 nginx 代理 https,temporarily disabled while SSL handshaking to upstream 出现 502 的情况

前段时间我们官网要做一个活动页面, 但是活动页面是用另一个活动页域名, activity.example.com, 但是运营人员需要对外展示的落地页是以官网 www 的域名来处理,所以这时候就会需要在官网的 nginx 指向那边进行页面的代理转发:1234但是实测的过程中, 却发现代理转发的时候,报了一个 502 的错误12看了一下,应该是 nginx 在进行代理请求的时候,就报错了, 应该是 ssl 的握手的错误。

2023-10-07 15:00:25 965

原创 SpringBoot, EventListener事件监听的使用

1、事件(event)可以封装和传递监听器中要处理的参数,如对象或字符串,并作为监听器中监听的目标。2、监听器(listener)具体根据事件发生的业务处理模块,这里可以接收处理事件中封装的对象或字符串。3、事件发布者(publisher)事件发生的触发者。

2023-10-07 10:47:34 299

翻译 我在 20 年的软件工程师生涯中学到的事情

有很多原因会推动你,去构建一个比原先设想的更大的系统,人类似乎有一种提供更多功能的欲望。你应该抵制这种欲望,在满足设计目标的前提下,始终努力构建一个更小的系统,这样你最终会得到一个比最初设计更好的系统。(2)水平再高的程序员,也会在自己擅长的领域犯错,如果遇到复杂的问题,就更是如此了。(12)面试最好用于了解某人是谁,以及他们对特定专业领域的兴趣程度,对于试图弄清楚他们是否将成为一个优秀的团队成员,那是徒劳的。数据可能会比你的代码寿命更长,保持数据的有序和清洁,避免脏数据,从长远来看,会得到很好的回报。

2023-09-28 10:49:25 119

原创 Nginx modules build fail:field ‘pkt6’ has incomplete type

所以修改文件include头顺序,

2023-09-22 16:33:05 1528 5

原创 nginx安装lua、jwt模块,通过lua验证jwt实现蓝绿发布样例

lua-nginx-module-0.10.22.tar.gz # 0.10.16 以后都需要 lua-resty-core和lua-resty-lrucache。luajit2-2.1-20220411.tar.gz #luajit官网存在一定的坑,下载openresty的优化版本。将jwttoken.lua放到nignx所在服务器的/usr/local/lua_core/lib/lua/目录下。--1-按员工code蓝绿,2-按部门id蓝绿,3-按ip蓝绿。修改Makefile,指定luajit。

2023-09-20 16:27:10 443

原创 如何使用反 CSRF 令牌保护您的网站和 Web 应用程序

虽然在许多情况下这在技术上可能是正确的,但通常很难预测访问 API 的所有方式(以及将来可能修改的方式),因此为 REST API 提供 CSRF 保护可能会被视为额外的安全层。使用上述基本的反 CSRF 令牌,您可以在登录时在用户会话 cookie 中设置令牌,然后为每个表单验证相同的令牌。为了平衡安全性和可用性,您可以为您使用的每个表单生成单独的令牌。但现在假设您的站点使用简单的基于令牌的 CSRF 缓解措施,并且您的 Web 服务器在登录后立即发送到浏览器的会话 cookie 中设置令牌。

2023-09-15 09:54:48 1161

转载 TLS1.3比TLS1.2更安全在哪里

目前普遍采用的方案都是TLS1.2,据了解,由于技术和成本的限制,目前还没有采用TLS1.3协议,不知在未来的信息安全技术选择上是否会有所改变。从图中可以看到,SSL/TSL层的加入,建立了一个安全连接(对传输的数据提供加密保护,可防止被中间人嗅探到可见的明文;通过对数据完整性的校验,防止传输数据被中间人修改)和一个可信的连接(对连接双方的实体提供身份认证)。图2:TLS1.2的握手图解。该协议由两部分组成: TLS记录协议(TLS Record)和 TLS握手协议(TLS Handshake)。

2023-09-11 15:07:40 718

Linux服务器架设指南——第1章

主要讲解网络硬件知识,是《Linux服务器架设指南》书的第一章

2010-05-24

c+c++程序员面试宝典.CHM

该书详细介绍了程序员面试时所需注意的事项,供大家参考学习。

2010-04-25

Linux 下sendmail邮件系统的详细配置

该文件说明了Linux下sendmail邮件系统的详细配置,为Linux初学者来说,提供了简洁的sendmail配置教程

2010-04-25

Linux 用 C实现的邮件发送程序

改程序用c语言在linux环境下编写,成功发送邮件。

2010-04-25

linux 定时发送邮件 应用sendmail技术

由于自己记性太差,很难记住朋友的生日,所以突发奇想,写了个简单的shell程序,主要目的就是为了能在固定的节日(如:圣诞、元旦等,可以指定)和朋友生日的时候自动给朋友发送祝福信件,同时密送给自己,程序虽然简单,达到了自己需要的效果。 特地共享出来和大家一起分享,修改mail_check.sh程序的变量,最好每天8点执行,显得比较真实,其它的配置文件在conf目录下。

2010-04-25

C 语言编写一个网络蜘蛛(网络爬虫)

该文档详细介绍了网络蜘蛛(网络爬虫),并附带c语言开发的爬虫代码,对爬虫初学者很有用。

2010-04-25

中文分词算法介绍、分类详解

该文档详细介绍了中文分词的原理及相应的技术。文档讲解了最大匹配法(Forward Maximum Matching method, FMM法)、正向最大匹配法(由左到右的方向)、逆向最大匹配法(由右到左的方向)、最少切分(使每一句中切出的词数最小)。

2010-04-25

中文编码基础知识介绍

该书详细介绍了GB2312、GBK、BIG5、GB18030、UTF_8字符集等编码,为编码初学者提供了详细信息。

2010-04-25

中文编码规范详细介绍

该文档详细介绍了GB2312、Unicode、UTF-8、UTF-16等编码,对初步想编码的程序呀很有帮助。

2010-04-25

spider网络爬虫源代码

这是一个spider网络爬虫源代码,用c++完成的,主要是为搜索引擎研究者提供很好的材料,为初学者提供代码。大家可以互相学习学习。

2009-01-15

Cluence搜索引擎源码

这个是c版的luence。了解搜索引擎的人都知道luence是一个很好开源搜索引擎,他开始主要是java版的,但现在为大家提供一个c版的luence ,希望对大家有用,大家互相学习学习。

2009-01-15

空空如也

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

TA关注的人

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