收藏 / 列表

Enaium - Gradle極簡入門

首發於Enaium的個人博客 什麼是 Gradle Gradle是一個基於Apache Ant和Apache Maven概念的項目自動化構建工具。它使用一種基於Groovy的特定領域語言(DSL)來聲明項目設置,而不是傳統的XML。Gradle構建腳本是用Groovy編寫的,也可以使用Kotlin編寫,兩者都是基於JVM的語言。 安裝 Gradle 在開始之前,想必大家已經學會了Java或者Ko

構建工具 , Kotlin , JAVA , gradle

JavaGuide - 面試官:為什麼忘記密碼要重置而不是告訴你原密碼?

這是一個挺有意思的面試題,挺簡單的,不知道大家平時在重置密碼的時候有沒有想過這個問題。回答這個問題其實就一句話:因為服務端也不知道你的原密碼是什麼。如果知道的話,那就是嚴重的安全風險問題了。 我們這裏來簡單分析一下。 做過開發的應該都知道,服務端在保存密碼到數據庫的時候,絕對不能直接明文存儲。如果明文存儲的話,風險太大,且不説數據庫的數據有被盜的風險,如果被服務端的相關人員特別是有數據庫權限的惡

加密算法 , hash , JAVA , go , 後端

wayn - 終於有篇文章把後管權限系統設計講清楚了

在常用的後台管理系統中,通常都會有權限系統設計,以用於給對應人員分配不同權限,控制其對後管系統中的某些菜單、按鈕以及列表數據的可見性。 本文將用 waynboot-mall 項目舉例,給大家介紹常見後管系統的權限控制該如何設計。大綱如下, 權限模型 要理解權限控制,我們需要先了解什麼是權限模型。 權限模型是指用於描述用户、角色和權限之間關係的一種抽象模型。不同的權限模型有不同的優缺點,適用於不

權限控制 , 權限 , JAVA

wangfang呀 - Vue 響應式原理:你以為的“頁面自己動”,其實幕後全是黑科技!

哈嘍,各位小夥伴,歡迎來到我是wangfang呀的博客!我是我是wangfang呀,雖然還在編程的“菜鳥”階段,但我已經迫不及待地想和大家分享我一路上踩過的坑和學到的小技巧。如果你也曾為bug頭疼,那麼你來對地方了!今天的內容希望能夠給大家帶來一些靈感和幫助。 前言   第一次寫 Vue 時,很多人都會驚歎:“咦,data 裏一改值,頁面就自己刷新了!”。

數組 , Vue , 後端開發 , JAVA , 響應式

鹽焗代碼蝦 - 支付寶AES如何加密

繼之前給大家介紹了 V3 加密解密的方法之後,今天給大家介紹下支付寶的 AES 加密。 注意: 以下説明均在使用支付寶 SDK 集成的基礎上,未使用支付寶 SDK 的小夥伴要使用的話老老實實從 AES 加密原理開始研究吧。 什麼是AES密鑰 AES 是一種高級加密標準(英語:Advanced Encryption Standard,縮寫:AES),是目前對稱密鑰加密中比較通用的一種加密方式,該加

支付寶 , 加密解密 , aes

宇文成都 - 使用C#將Markdown轉換為Word或PDF:高效文檔轉換的利器

在現代軟件開發和內容創作中,我們經常需要在不同的文檔格式之間進行轉換。Markdown以其簡潔、易讀寫和版本控制友好的特性,越來越受到開發者的青睞。然而,當需要生成正式報告、進行專業排版或跨平台共享時,傳統的Word文檔和不可編輯的PDF文件仍然是不可或缺的選擇。這種Markdown的流行與Word/PDF的商務需求之間的轉換鴻溝,常常成為開發者面臨的痛點。 幸運的是,通過C#編程,我們可以自動化

word , pdf , c# , Markdown

MannaYang - Android系統Launcher啓動流程

本文基於android13-release源碼閲讀整理 系統源碼地址:init.h - Android Code Search 前言 以往我們開發Android應用都在系統桌面點擊打開,但桌面Launcher進程是如何加載並展示應用窗口未能深入瞭解,由此去窺探Android系統整體啓動流程以加深對Android開發體系的理解 1.Android系統啓動核心流程 當開機鍵按下時Boot Rom激

源碼學習 , Android , JAVA , jdk13

崽崽233 - Java(day234):Java 中如何使用 JPA 和 Hibernate 進行數據持久化

大家好,我是不熬夜崽崽!大家如果覺得看了本文有幫助的話,麻煩給不熬夜崽崽點個三連(點贊、收藏、關注)支持一下哈,大家的支持就是我寫作的無限動力。 前言 在現代 Java 應用開發中,數據持久化是核心的功能之一。JPA(Java Persistence API)和 Hibernate 是最常用的 Java 持久化技術。JPA 提供了一個標準的接口,用於在 Java 應

後端開發 , jpa , JAVA , 實體類

呀哈哈kk - 【詳解】Python獲取系統性能信息

Python獲取系統性能信息 在開發和維護應用程序的過程中,瞭解系統的性能狀態是至關重要的。這不僅可以幫助我們優化程序的運行效率,還可以及時發現並解決潛在的問題。Python 作為一種強大的編程語言,提供了多種方式來獲取系統的性能信息。本文將介紹如何使用 psutil 庫來獲取包括CPU、內存、磁盤和網絡在內的系統性能數據。 安裝 psutil psutil(P

sed , 後端開發 , 磁盤分區 , JAVA , 網絡接口

wx690f565d7bc78 - Python寫個 tkinter 計算器

以下是一個使用 Python 和 Tkinter 實現的簡單計算器,支持基本的加減乘除運算: python 運行 import tkinter as tk from tkinter import ttk class Calculator: def __init__(self, root): self.root = root

自適應 , 運算符 , MySQL , 窗口大小 , 數據庫

Zeran - Mysql連接的原理

表結構 t1 CREATE TABLE `t1` ( `m1` int(11) DEFAULT NULL, `n1` char(1) COLLATE utf8mb4_bin DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; INSERT INTO `t1`(`m1`, `n1`) VALUE

mysql索引 , mysql優化 , SQL

用户bPbhIAe - Java 中的這個絕對值有點不絕對啊!

現象 假如有如下代碼定義了一個方法 test(),它入參可以任何一個 int 類型的整數,那麼它輸出結果可能是什麼? public class Test { public static void test(int a) { System.out.println("The result of absolute value compare to zero is:" +

補碼 , 二進制 , 溢出 , 後端

程序員波特 - Java中鎖的解決方案

前言 在上一篇文章中,介紹了什麼是鎖,以及鎖的使用場景,本文繼續給大家繼續做深入的介紹,介紹JAVA為我們提供的不同種類的鎖。 JAVA為我們提供了種類豐富的鎖,每種鎖都有不同的特性,鎖的使用場景也各不相同。由於篇幅有限,在這裏只給大家介紹比較常用的幾種鎖。我會通過鎖的定義,核心代碼剖析,以及使用場景來給大家介紹JAVA中主流的幾種鎖。 樂觀鎖 與 悲觀鎖 樂觀鎖與悲觀鎖應該是每個開發人員最先接觸

lock , , JAVA , synchronized

小碼哥068 - 充電樁小程序開發實戰:從零到一搭建完整系統【源碼+解析+文檔】

一、簡述 SpringBoot 框架,充電樁平台+充電樁系統+充電平台+充電樁+互聯互通協議+雲快充協議1.5+新能源汽車+電動自行車+公交車-四輪車充電+充電源代碼+充電平台源碼+Java源碼+無加密項目 二、介紹 雲快充協議+雲快充1.5協議+雲快充協議開源代碼+雲快充底層協議+雲快充樁直連+樁直連協議+充電樁系統樁直連協議 三、軟件架構 1、提

開源代碼 , 後端開發 , JAVA , 開發者 , 數據獲取

我愛哇哈哈 - 手把手教你用Tpaddleocr開發桌面端PDF識別工具,工作效率提升10倍!

作為一名資深技術開發,我經常遇到這樣的場景:需要從大量的PDF文檔中提取文字內容,但市面上的工具要麼收費昂貴,要麼識別效果差強人意。直到我發現了百度開源的PaddleOCR,結合Tpaddleocr(Python版本的PaddleOCR封裝),我決定自己動手開發一個桌面端PDF識別工具,效果出乎意料的好! 今天就來分享一下我是如何從零開始,開發出這款高效、準確的PDF識別工具的。

yyds乾貨盤點 , 後端開發 , JAVA , paddle , Python

逐夢AI - 基於YOLOv8的牛行為檢測識別項目|完整源碼數據集+PyQt5界面+完整訓練流程+開箱即用!

基於YOLOv8的牛行為檢測識別項目|完整源碼數據集+PyQt5界面+完整訓練流程+開箱即用! 源碼包含:完整YOLOv8訓練代碼+數據集(帶標註)+權重文件+直接可允許檢測的yolo檢測程序+直接部署教程/訓練教程 源碼在文末嗶哩嗶哩視頻簡介處獲取。 本系統通過 PyQt5 圖形界面 提供多種輸入方式,包括: 圖片識別:單張或批量圖片檢測牛的行為狀態。 文件夾識別:批量處理指定文件夾內的圖

機器學習 , 人工智能 , 深度學習

程序猿DD - Jackson 序列化的隱性成本

我們常以為接口的瓶頸在數據庫或業務邏輯,但在高併發、海量請求下,真正吞噬 CPU 的,可能是“把對象變成 JSON”的那一步。當監控把序列化時間單獨拆出來,你會驚訝它能讓賬單失控。這篇《The Hidden Cost of Jackson Serialization》對我啓發很大:默認好用的 Jackson,在某些場景可能成為熱路徑的成本中心。下面順手分享給大家參考,以下內容翻譯整理自 《The

spring , springboot , JAVA

程序員小富 - 令牌桶VS漏桶:誰才是流量控制的“最優解”?

大家好,我是小富~ 面試被問到限流算法,很多面試官會讓直接手寫令牌桶和漏桶的實現。雖然平時用過Redis、Guava等現成的限流工具,但真要手寫還是有點慌。今天就來聊聊這兩種經典限流算法的區別,並用Java手寫實現。 很多的限流工具底層都應用了它們 一、令牌桶 vs 漏桶:核心區別 令牌桶 令牌桶的核心思想:固定容量的桶,以固定速率往桶裏放令牌,請求來了就從桶拿令牌,沒令牌就拒絕。 有點像買票進站

面試 , JAVA , 後端

藍易雲 - 藍易雲:80端口和443端口的概念與區別

下面把“span style="color:red"80/span 端口 vs span style="color:red"443/span 端口”的本質差異、標準用法與落地方案一次講透(含可直接執行的命令與解釋)🔒🚀 一、核心結論(先給答案) span style="color:red"80/span:用於 span style="color:red"HTTP(明文)/span,不加密,

kubernetes , devops , serverless , Docker , apache

認真的紫菜 - 為什麼建議大家加快擁抱Kotlin,説點不一樣的

本文首發於公眾號“AntDream”,歡迎微信搜索“AntDream”或掃描文章底部二維碼關注,和我一起每天進步一點點 Kotlin自2017年起被Google正式宣佈為Android的編程語言之一,隨後在2019年進一步宣佈Kotlin為Android的首選語言,普及速度逐漸加快,越來越多的公司和項目在引入Kotlin。 那Kotlin有哪些特點,為何建議大家要加快擁抱Kotlin的速度呢? 方

Kotlin , swift , 協程 , Android , 程序員

呂秀才 - 深入淺出Java多線程(十三):阻塞隊列

引言 大家好,我是你們的老夥計秀才!今天帶來的是[深入淺出Java多線程]系列的第十一篇內容:AQS(AbstractQueuedSynchronizer)。大家覺得有用請點贊,喜歡請關注!秀才在此謝過大家了!!! 在現代多核CPU環境中,多線程編程已成為提升系統性能和併發處理能力的關鍵手段。然而,當多個線程共享同一資源或訪問臨界區時,如何有效地控制線程間的執行順序以保證數據一致性及避免競態條件

jvm , 多線程 , JAVA , 阻塞隊列 , 隊列

李通 - 使用 deploy 工具部署tio-boot

tio-boot官網 使用 deploy 工具部署 deploy 工具簡介 為了簡化部署流程,提高部署效率,我開發了一款名為 deploy 的工具,用於將 tio-boot 工程快速部署到自有服務器上。該工具分為客户端和服務端,用户需要先在服務器上安裝服務端,才能通過客户端進行部署操作。工具已開源,源碼地址如下: deploy 工具 deploy-server 工具 服務端安裝 關於如何安

deploy , JAVA , cd , ci

字節幺零二四 - 源碼解讀 | Java中ReentrantLock的實現原理

ReentrantLock 依賴關係如下圖所示 非公平鎖實現原理 ReentrantLock 默認採用非公平鎖。 // ReentrantLock public ReentrantLock() { sync = new NonfairSync(); } 加鎖流程 ReentrantLock 的 lock 方法通過同步器的 lock 方法實現。 // ReentrantLock publi

JAVA , 併發 , juc , 併發編程

半夏微光zhang - SpringBoot屬性配置文件使用

配置文件 在 resource 文件夾下面新建 application.properties 配置文件 # application.properties 為統一配置文件 # 內部包含: 固定功能的key,自定義的key # 此處的配置信息,我們都可以在程序中@Value等註解讀取 # 固定的key # 啓動端口號 serv

spring , 配置文件 , 後端開發 , bc , JAVA