控制Swagger访问的动态过滤器实现
控制 Swagger 访问的动态过滤器实现
在现代 Web 应用开发中,为了安全性和便捷性,经常需要在不同的环境下动态控制 API 文档页面的访问。本文将解读一段 Java 代码,展示如何通过一个自定义的过滤器来控制 Swagger 文档的访问权限。
背景
Swagger 是一个流行的 API 文档生成工具,但在生产环境中,通常我们不希望所有用户都能访问这些文档。通过动态配置信息来控制 Swagger 页面的访问,可以帮助提升应用的安全性。
代码实现
以下代码片段展示了如何使用 Java 过滤器来实现这个功能:
import javax.annotation.Resource;
import javax.servlet.Filter;
import javax.serv...
IDEA找不到符号
首选解决办法 直接 “mvn clean install -U” 一键解决
在IntelliJ IDEA中遇到“找不到符号”错误时,通常可通过以下步骤排查和解决:
检查依赖管理
Maven/Gradle项目:执行 mvn clean install 或 gradle build 确保依赖正确下载。
手动刷新依赖:IDEA右侧边栏点击Maven/Gradle图标,选择重新导入项目。
本地仓库清理:删除有问题的依赖目录(如 ~/.m2/repository/ 中的对应包),重新下载。
验证JDK配置
项目JDK:File > Project Structure > Project,确认使用的JDK版本与代码兼容。
模块JDK:在 Project St...
记一次arthas性能分析以及优化
问题反馈
接到实施同事反馈线上某医院的服务导出数据比较久,大数据导出导致服务暂时卡死,影响其他服务正常运行,需要帮忙排查解决,数据量在百万级别。
分析调试工具
IDEA(需要插件arthas idea)
arthas
Postman
Windows PowerShell
分析过程
分析环境准备
idea启动服务并安装插件”arthas ide”,方便快捷使用arthas 命令
官网下载解压arthas,进入目录,右键”此处打开PowerShell”,执行如下启动命令
java -jar .\arthas-boot.jar
选择需要分析的服务序号,比如现在要分析的server服务序号是2
确定需要分析的方法,获...
deepseek搭配cherrystudio搭建本地知识库
老规矩,我们还是先来看看搭建完的知识库效果。
比如,我想让DeepSeek告诉我“吕毅是谁?”。
那么,吕毅到底是谁呢?
其实,我也不知道,他是我从网上下载的一篇网络小说里面的一个男性角色。
那么,为了让大家更加直观地好理解,我们来做个简单的对比。
首先,我们先去官网直接提问看看,这是官方给出的答案。
看来,官方也不知道吕毅是谁(废话)。
然后,在我们搭建完私有化知识库之后,再来提问试试。
OK,看到了吧,这就是知识库的意义所在。
那么……科普时间到了。
一、什么是知识库?
知识库(Knowledge Base)是一个存储和管理知识的系统,通常包含结构化和非结构化的信息,用于帮助用户或系统快速查找和获取相关知识。
你可以把它想象成一个“知识仓库”,里面存放着...
本地部署DeepSeek-R1模型
首先 我们需要了解一下,什么是 Ollama ?
Ollama 简介
Ollama 是一个快速、轻量且易于使用的开源 AI 代理框架,由 Facebook 开发,可以用来托管和运行各种语言模型(LLM),可以实现在您的硬件设备快速部署各种本地大模型,并且提供了一个简单命令行界面,方便用户快速部署。
既然现在已经了解了 Ollama是干嘛的,那么接下来就是在你的操作系统中安装 Ollama了
安装Ollama
Windows
访问 Ollama官网 下载Windows版本安装即可
Linux 操作系统
在你的终端中执行如下命令
1curl -fsSL https://ollama.com/install.sh | sh
Docker安装
在 Linux操作系统中也...
fancontrol温度控制
Debian 上使用 fancontrol 进行温度控制
安装必要的软件包
sudo apt update
sudo apt install lm-sensors fancontrol
检测硬件传感器
sudo sensors-detect
根据提示回答问题,并加载必要的模块。
配置 fancontrol
sudo pwmconfig
这个脚本会暂停每个风扇几秒钟,以确定哪些风扇可以通过 PWM 控制。根据提示选择合适的传感器和
PWM 控制器。
编辑 fancontrol 配置文件
打开并编辑 /etc/fancontrol 文件,根据需要调整以下参数:
MINTEMP=hwmon0/temp1_input=30
MAXTEMP=hwmon0/temp1_...
zerotier自建Moon中转
什么?网络条件差劲打洞不成功?还有多的服务器?那就来自建 Zerotier 的 Moon 中转吧~
关于 Zerotier
的使用可以参见之前的一篇文章 使用 ZeroTier 进行 Minecraft 多人联机
自建 Moon 中转
有多的服务器的话,可以试试自建 Moon(中转),来解决朋友网络条件差劲死活互联不了的情况
正常情况下,如果无法打洞直接互联的话,流量会通过 ZeroTier 官方提供的 Plant
来传输(延迟会特高,还容易断流,毕竟大陆内外之间各种干扰阻断嘛……
以我服务器的 Debian 为例(其它系统也是差不多的操作)
安装 ZeroTier
<span>curl -s https://install.zerotier.com | su...
Nginx配置Websocket
WebSocket
和HTTP虽然是不同协议,但是两者“握手”方式兼容。通过HTTP升级机制,使用HTTP的Upgrade和Connection协议头的方式可以将连接从HTTP升级为WebSocket。
Websocket 使用 ws 或 wss 的统一资源标志符,类似于 HTTPS,其中 wss 表示在 TLS 之上的
Websocket。如:
ws://example.com/wsapi wss://secure.example.com/
Websocket 使用和 HTTP 相同的 TCP 端口,可以绕过大多数防火墙的限制。默认情况下,Websocket
协议使用 80 端口;运行在 TLS 之上时,默认使用 443 端口。
一个典型的Websocket握手请求如下:
...
共计 77 篇文章,10 页。