《你不知道的 JAVA》💘 什麼是好的 Web Api 設計 (第一章)
工程思維落地 《你不知道的 JAVA 》系列博客的工程理念與設計模式,已落地成一款 全新設計的 Java 腳手架 ,可與博客配套使用。 Web Api 的重要性 設計 api 端點是後端開發經常接觸的工作,但你是否從來沒有想過好的 web api 應該是什麼樣子? Api 端點的設計就像名片一樣——專業的名片可以在客户面前建立信任感;糟糕的名片會讓你的產品在被使用前就給客户留下負面印象。一旦客户
昵稱 Chuck1sn
貢獻者69
粉絲0
工程思維落地 《你不知道的 JAVA 》系列博客的工程理念與設計模式,已落地成一款 全新設計的 Java 腳手架 ,可與博客配套使用。 Web Api 的重要性 設計 api 端點是後端開發經常接觸的工作,但你是否從來沒有想過好的 web api 應該是什麼樣子? Api 端點的設計就像名片一樣——專業的名片可以在客户面前建立信任感;糟糕的名片會讓你的產品在被使用前就給客户留下負面印象。一旦客户
昵稱 Chuck1sn
前言 我們數據庫中有一條用户信息的數據,需要給到第三方,那麼在發送這條數據的時候,我們不能直接把用户的姓名、電話號、身份證號等一些信息發給第三方,不能暴露用户的個人信息,這個時候就需要用到數據加密進行傳輸。 什麼是AES AES(Advanced Encryption Standard,高級加密標準)是一種用於保護電子數據的對稱加密算法。在 HTTPS 協議中使用的 TLS(傳輸層安全協議)就使用
昵稱 zZ_jie
前言 最近為一個公眾號h5商城接入了微信支付功能,查找資料過程中踩了很多坑,以此文章記錄一下和大家分享 前期準備 公眾號認證 微信支付功能需要開通企業號並進行資質認證,費用一年300,且需企業營業執照等信息,對公賬户打款驗證 登錄微信公眾平台https://mp.weixin.qq.com/,創建服務號 如果已有服務號掃碼登錄後點擊公眾號頭像選擇認證詳情菜單 商户開通 點擊公眾號左側微信支付菜單
昵稱 code2roc
當我們需要實現全文搜索功能的時候,往往會使用到搜索引擎,比較常用的是Elasticsearch。但是Elasticsearch的硬件配置要求比較高,不同版本間的API兼容性也比較差。今天給大家分享一款輕量級搜索引擎Meilisearch,搜索速度非常快,能實現即時搜索,希望對大家有所幫助! 簡介 Meilisearch是一款輕量級搜索引擎,它支持RESTful風格的搜索API,目前在Github上
昵稱 macrozheng
在我的mall電商實戰項目中,有使用過Elasticsearch實現商品搜索功能。其實商品搜索也可以使用Meilisearch來實現,實現起來還是非常方便的,今天就來帶大家實現一下! 前置知識 學習本文需要對Meilisearch有所瞭解,還沒有了解過它的小夥伴可以參考下這篇教程: 《超越Elasticsearch!號稱下一代搜索引擎,性能炸裂!》 下面是使用Meilisearch實現商品搜索的效
昵稱 macrozheng
1. 簡介 Nacos是阿里巴巴2018年7月份開源的項目,全稱為Naming Configuration Service, 專注於服務發現和配置管理領域 其中,動態配置消除了配置變更時重新部署應用和服務的需要,讓配置管理變得更加高效和敏捷。 Nacos提供了一個簡潔易用的UI,管理所有的服務和應用的配置, 還提供包括配置版本跟蹤、 一鍵回滾配置的配置管理特性,幫助其更安全地在生
昵稱 捕風
前言 之前閲讀《Spring微服務實戰》這本書時,裏面提供了微服務如何存儲用户的信息,但是最近升級到了Java17以及SpringCloud2022.0.0之後,異步編程是官方推薦的主流寫法,而之前的寫法是同步的,所以在存儲和解析用户信息時導致獲致不到用户信息情況,下面我們來解決這個問題。 操作 我們先看看之前的寫法: UserContext.java @Component public clas
昵稱 Awbeci
大學畢業後,終於找到了一份Java後端的工作,這幾天在看公司之前的代碼;主要是因為公司需要重構一個老項目,這才讓我有機會看到之前的大部分代碼;作為一個應屆生,項目經歷屬實寒酸,以下是我這兩天閲讀源碼,瞭解業務的一套流程,僅僅是自己摸索出來的(僅供參考);好在項目的前端後端都在本地跑起來了,調試起來非常方便; 第一步,秉持着業務優先的原則,瞭解這個項目的業務背景是十分必要的,最好可以拿自己的話梳
昵稱 10x
最近把mall-swarm項目升級支持了最新版Spring Cloud+Spring Boot 3+JDK17,今天就來介紹下mall-swarm項目做了哪些升級,包括依賴的升級、框架的用法升級以及運行部署的改動,希望對大家有所幫助! mall-swarm項目簡介 這裏還是簡單介紹下mall-swarm項目吧,mall-swarm項目(11k+star)是一套微服務商城系統,採用了Spring C
昵稱 macrozheng
Nacos作為一款非常流行的微服務註冊中心,我們在構建微服務項目時往往會使用到它。最近發現一款輕量級的Nacos項目r-nacos,佔用內存極低,性能也很強大,分享給大家。本文就以我的mall-swarm微服務電商實戰項目為例,來聊聊它在項目中的使用。 r-nacos簡介 r-nacos是一款使用rust實現的nacos服務,對比阿里的nacos來説,可以提供相同的註冊中心和配置中心功能。同時它佔
昵稱 macrozheng
不知道大家有沒有這樣的經歷:入職了一家新公司,接觸的項目是微服務項目,而自己之前接觸的都是單體項目,不知道如何下手項目,心裏會比較慌。今天就以我的mall-swarm微服務電商實戰項目為例,來聊聊如何快速上手微服務項目。 mall-swarm項目簡介 這裏先簡單介紹下mall-swarm項目,mall-swarm項目(11k+star)是一套微服務商城系統,採用了2024最新微服技術棧,涵蓋Spr
昵稱 macrozheng
提到網關係統,大家第一個想到的肯定是Gateway或Zuul這些Spring Cloud給我們提供的組件,不過這些網關使用時都需要寫代碼。今天給大家分享一款可視化的網關係統Apache ShenYu,無需寫代碼即可使用,設計優秀,功能強大! ShenYu簡介 Apache ShenYu是一款異步的、高性能的、跨語言的、響應式的API網關,目前在Github上已有8.5k+Star。 它具有如下特性
昵稱 macrozheng
作為一名程序員,大家應該都關注了很多技術大佬,其中不乏文章格式看起來很舒服的。今天給大家分享一款好用的開源筆記應用WeChat Markdown Editor,能將Markdown寫的文檔即時渲染為微信文章,希望對大家有所幫助! 簡介 WeChat Markdown Editor(簡稱md)是一款高度簡潔的微信Markdown編輯器,能將Markdown文檔自動即時渲染為微信文章,目前在Gi
昵稱 macrozheng
在當今分佈式系統的背景下,如何優雅地實現系統之間的消息傳遞是每個開發者都關心的話題。而Spring Integration,作為Spring家族的一員,正是為了解決這個難題而生。 在這篇文章中,我們將踏上穿越消息之路,深入探討Spring Integration的魅力。 關注公眾號:碼猿技術專欄,回覆關鍵詞:1111 獲取阿里內部Java性能調優手冊! Spring Integration基礎概念
昵稱 碼猿技術專欄
各位 Java 老鐵,Spring 全家桶用起來是不是像穿秋褲一樣舒服?Maven、Gradle 把依賴管得比老媽還貼心,IntelliJ IDEA 更是讓你寫代碼如德芙般絲滑。可雲原生這陣妖風一吹,Go 語言這小夥子憑着堪比劉翔的併發性能、李小龍般的輕巧身手,愣是成了碼農圈的"新晉頂流"! Javaer 初入 Go 圈,那感覺就像北方人第一次進廣式早茶店——餐具不會用、點心叫不出名!今天就帶大家
昵稱 gvison
在互聯網應用中,大文件上傳是一個常見而棘手的挑戰。傳統的單文件上傳方式在面對大文件時經常面臨超時、內存溢出等問題。本文將深入探討如何利用Spring Boot實現高效的分塊上傳方案,解決大文件傳輸痛點。 一、為什麼需要文件分塊上傳? 當文件上傳超過100MB時,傳統上傳方式存在三大痛點: 網絡傳輸不穩定: 單次請求時間長,容易中斷 服務器資源耗盡: 大文件一次性加載導致內存溢出 上傳失敗代
昵稱 碼猿技術專欄
項目使用spring boot cloud2.6版本,接入nacos配置中心,上線後發現一直大量日誌輸出,如下: 2025-08-01 01:27:11.846 [34m[INFO ][0;39m [32m[com.alibaba.nacos.client.Worker.longPolling.fixed-mse-aaa-nacos-ans.mse.aliyuncs.com_8848-public
昵稱 snower
簡介 文章背景:當前國內Spring Cloud 微服務框架各個組件,使用已經比較普遍,但是市面上的技術文檔比較零碎,有的文章很深入的講一個問題,卻沒有形成體系,對初學者不太友好,更有很多是複製粘貼,浪費閲讀精力,為了縮短尋找文檔或者書籍的時間,決定整理出一系列成體系文章,並定時檢查官方更新,維持文章相關技術的時效性。 項目實例:用一個微服務商城作為基礎,結合對應的技術去實現。 目錄 Pa
昵稱 比特全棧
Release Notes 1、【升級】多個項目依賴升級至較新穩定版本,涉及netty、gson、springboot、mybatis等; 2、【優化】Hessian啓用NonSerializable攔截,安全性提升。 3、【優化】服務註冊環境標識字段長度調整,上限調整為50; 4、【優化】代碼重構; 5、【合併】合併 PR-55,解決OpenTelemetry集成問題; 6、【合併
昵稱 xuxueli
為何 Mjga 與眾不同? Mjga 是一款全新設計的,基於雲原生理念的打造的現代 Java Web 腳手架,它具備以下特點: 容器化的應用 可裝卸的組件 有口皆碑的單元測試 自定義元信息 全新的生產力工具 🥝 選擇模板 🍅 組件選配 🍹 自定義元信息 產品特性 容器化與雲原生 通過 docker-compose.yml 管理應用程序的整個生命週期與配置。 通過
昵稱 Chuck1sn
jsp獲取spring容器 % ServletContext sc = this.getServletConfig().getServletContext(); ApplicationContext ac2 = WebApplicationContextUtils.getWebApplicationContext(sc); RedisService redisService=(Redis
昵稱 張澤
Release Notes 1、【升級】項目升級 SpringBoot3 + JDK17; 2、【升級】升級多項依賴至較新版本,如xxl-sso、jakarta、spring等,適配JDK17; 3、【重構】登錄認證重構,集成XXL-SSO提供登錄認證能力,可擴展支持單點登錄、分佈式認證...等多場景登錄訴求; 4、【重構】權限認證重構,支持註解式/API方式快速鑑權,便捷集成系統RBA
昵稱 xuxueli
如果你是企業經營者,在為企業降本增效而發愁; 如果你是企業的開發、運維或架構同學,在日常工作中被開發效率、交付問題等困擾……歡迎來了解 Koupleless(原 SOFAServerless)! 現在,Koupleless 重磅發佈了1.0 版本!那麼,Koupleless 是什麼?又將如何為你解決以上問題?除了以上這幾種情境,Koupleless 還有哪些能力呢?歡迎你來社區探索發現。
昵稱 lvjing2
前言 本篇文章的代碼示例已放到 github 上,Git地址為:advance(記錄每一個學習過程),大家把代碼下載下來之後,全局搜索一些關鍵代碼,即可找到該文章的源碼。 大家覺得有用的話,麻煩點個star👍再走唄! 使用場景 當我們在使用SpringBoot進行開發的時候,可能會遇到一些執行異步任務的場景,如果每次執行這些異步任務都去新建一個異步線程來執行的話,那代碼就太冗餘了。幸好Sp
昵稱 呆小魚LQ