博客 / 列表

kexb - Spring Security 集成 CAS 實現統一認證

前言 近期我們實驗室的排課系統需要接入統一身份認證平台,目前業務系統用的是 Spring Security 做登錄鑑權。現在學校要求接入他們的統一認證平台,所以我們需要把 CAS 集成進來。 簡單來説,就是: 用户訪問業務系統的時候,如果還沒登錄,就別讓他直接訪問,而是把他丟到 CAS 的登錄頁面去,讓他先在那裏登錄一下。 CAS CAS(Central Authentication Ser

springsecurity

kexb - MySQL COUNT() 性能:聚簇索引、二級索引與不同寫法的效率對比

在日常開發中,統計一張表中的記錄數是非常常見的需求,而 COUNT 函數就是我們最常用的工具。但 COUNT 的用法有多種,例如: COUNT(*) COUNT(1) COUNT(字段) COUNT(主鍵字段) 平時我也會疑惑:這些寫法到底有什麼區別?哪種性能更好?是不是 COUNT(*) 最慢? 本文就結合 InnoDB 存儲引擎的執行原理,深入分析這些不同寫法的差異,並總結出最佳實

mysql索引

kexb - 解決IDEA 項目目錄不顯示

問題描述 在打開項目的時候遇到一個很神奇的問題,那就是發現項目目錄沒有被加載出來,導致項目無法打開。重啓後不是完全沒有顯示目錄,而是一開始顯示,然後在加載過程中馬上就沒了 從這裏可以看到確實是沒有項目目錄,之前的解決方式就是從新從github從新拉取代碼,之後重新打開就解決,就沒有想那麼多,也就沒太在意這個問題。 bug排查 之前重啓能解決的都是緩存問題,直接清理緩存就解決。 但是這裏還是無

maven , intellij-idea

kexb - Express入門學習記錄

Express 簡介 Express 是一個流行的 Node.js Web 應用程序框架,它提供了一組強大的功能和工具,用於構建 Web 應用程序和 API。它是建立在 Node.js 的 HTTP 模塊之上的,通過簡化常見任務和提供靈活的路由機制,使得構建 Web 應用程序變得更加快速和簡單。 它是web框架,能夠提供後端服務能力,並能以類似JSP模版的形式渲染web頁面。 express

express , node.js , Javascript

kexb - Ubuntu系統上實現開機自動啓動火狐瀏覽器並全屏打開網頁

前言 當前有一個需求,就是我使用Ubuntu系統開機自動執行打開火狐的網頁,之後實現全屏效果,比如打開我們學校的課表網站,電腦開機後自動執行 編寫執行火狐啓動腳本 創建自動啓動的腳本 首先我們要編寫一個腳本,這個腳本會在開機時執行,並打開火狐瀏覽器,可以使用下面命令來創建腳本 創建一個新的腳本文件(並編輯它: sudo nano auto_open_tute_lab_schedule_websi

shell , Ubuntu

kexb - JSON Web Token的理解

什麼是JWT? JWT(JSON Web Token)是一種用於在各方之間安全地傳輸信息的緊湊、自包含的令牌格式。JWT是一種基於JSON的標準,定義了一種簡潔的方式來表示請求方和提供方之間的驗證信息。它通常用於Web應用的身份驗證和授權。 基於Session的認證流程 web服務離不開用户認證。一般流程是下面這樣。 Session存在的問題 多台服務器共享問題:如果系統部署在多台服務器上

Jwt

kexb - HDFS 單節點安裝

HDFS 單節點安裝指南 (Debian/Linux) 環境準備 sudo apt update sudo apt install -y ssh openjdk-11-jdk 防火牆配置 sudo ufw allow 9870/tcp # NameNode sudo ufw allow 9864/tcp # DataNode sudo ufw allow 9000/tcp # RPC 1.創

hadoop

kexb - Java 代理模型學習

前言 最近在寫項目的時候,又寫到很久沒寫的 AOP 切面實現一個需求,又想到上次同學面試的時候被問到了 Spring AOP 的實現原理是什麼,以前就知道是用了代理模式,但是也沒有進行過多的去研究,剛好碰到了也就研究一下代理模式。 什麼是代理模式 代理模式就是通過一個代理對象來間接訪問目標對象,這樣可以在不改變目標對象的情況下,為它添加一些額外的功能或行為。簡單來説,代理就是“替身”,它在幕後幫目

cglib , JDK

kexb - 基於高斯面積公式計算多邊形面積和圖像透視變換切片實現

前言 當前有一個需求,在之前進行對進行發票設別標註的時候遇到的痛點,那就是需要用户下載指定環境,而且有很多小毛病,無疑是增加了工作量。在這個基礎上,就決定自己在web進行圖像標註,由web端進行畫框進行標圖進行保存四個座標,根據之後再根據四個座標進行圖像切片。基於此就有了這個文章,本文將介紹如何使用高斯面積公式(也稱為Shoelace公式)計算多邊形的有向面積,並結合圖像處理技術對圖像進行旋轉裁剪

python3.x , opencv

kexb - github action配置第一個CI 和實現釘釘推送

背景 最近新開了一個新項目,本次項目老師要求我們部署在github上的,之前的項目都是部署在gitlab上,已經有一套寫好的ci/cd的配置方式,基本就是新項目一來就套着使用,而本次是部署在github上,也需要為項目配置ci/cd,算是重新學習一套新的東西。本篇文章主要內容是配置ci(持續集成)過程中遇到的問題和體會。 一、什麼是(CI)持續集成 持續集成 (CI) 是一種需要頻繁提交代碼到共享

ci , action

kexb - Spring Boot AOP - 面向切面編程

什麼是AOP 在Spring Boot AOP中,非核心業務功能被定義為切面,核心和非核心功能都開發完成之後,再將兩者編織在一起,這就是AOP。 舉個例子,假設你的應用程序需要記錄每次方法調用的開始時間和結束時間。如果你不使用AOP,你可能需要在每個方法的開頭和結尾都寫一段代碼來記錄時間。但是,這樣的做法既繁瑣又容易遺漏。 使用AOP,你可以創建一個"時間記錄"的切面,告訴系統在每個方法執行

aop