收藏 / 列表

老污的貓 - Java 爬樓梯

題目 假設你正在爬樓梯。需要 n 階你才能到達樓頂。 每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢? 原題地址 解題 每一步只能走1階或2階,因此每一步可拆分為2個分支,f(n)=f(n-1)+f(n-2) 遞歸 public static int climbStairs(int n) { if (n == 1) { return

算法 , JAVA

大廠碼農老A - CR被批“寫得像坨屎”,我三句話讓他當場閉嘴

這坨屎山,我接了 大家好,我是老A。 我想很多程序員有過這種經歷,新接手一個項目,打開工程一看,妥妥的一大坨🤦,內心OS:好嘛,又要“屎山雕花”了。。。 我這兩年在做電商業務,所以業務上經常會搞大促,3天一小促,5天一大促,作為技術早就習慣了這種研發節奏(倒排)。今年6月是我們業務年中的一次大型大促,所以5月份的需求爆炸多,基本都是倒排,業務天天拿着大喇叭在我們屁股後喊📢:這個需求不做就

segmentfault , springboot , JAVA , 程序員 , 後端

悲傷的鴨蛋 - 會話技術、過濾器、攔截器

登錄校驗:判斷用户是否登錄,從而決定是否讓其執行相關操作。(已登錄則可執行,未登錄則不可,必須登錄後才能執行) 具體操作步驟: 1、記錄用户已經成功登錄的標記(會話技術)會話:指的就是瀏覽器與服務器之間的一次連接。在一次會話當中,是可以包含多次請求和響應的(瀏覽器不能關閉、服務器不能斷開)會話跟蹤:服務器識別多次請求是否來自於同一瀏覽器,以實現在同一次會話的多次請求間共享數據。此技術一

filter , JAVA , token , Jwt

打盹的猴子 - Java 設計模式:裝飾者模式(Decorator Pattern)

一、模式定義 裝飾者模式屬於結構型設計模式,允許通過動態包裝對象的方式為對象添加新功能,提供比繼承更靈活的擴展方式。該模式通過組合替代繼承,遵循開閉原則(對擴展開放,對修改關閉)。 二、核心角色 Component(組件接口) 定義被裝飾對象的公共接口 ConcreteComponent(具體組件) 實現基礎功能的具體類 Dec

裝飾者模式 , 設計模式 , JAVA

牛肉燒烤屋 - TCP 真的存在“粘包”問題嗎?

引言 許多開發者都曾面對過這樣一個的問題:明明分別調用兩次send()發送了"Hello"和"World",接收方卻可能在一個recv()調用中讀到完整的"HelloWorld";或是發送了一個完整的 JSON 對象,接收端卻需要多次讀取才能拼湊出完整數據。這種現象被中文技術社區廣泛稱為“TCP 粘包” 然而,若我們深入 TCP 協議的設計本質,會發現一個令人困惑的矛盾——RFC 文檔中從未定義過

tcp , 計算機網絡 , 後端

seazhan - 【Java多線程】斷點續傳 如何使用Java多線程下載網絡文件

如何使用Java多線程下載網絡文件,並實現斷點續傳 在現代網絡應用中,多線程下載是一種常見的技術,它可以顯著提高下載速度並提供更好的用户體驗。本篇文章將介紹如何使用Java實現多線程下載,並結合項目中的代碼作為示例進行講解。 1. 多線程下載的基本原理 多線程下載的基本思想是將一個文件分成多個部分,每個部分由一個線程獨立下載,最後將這些部分合併成完整的文件。這樣可以充分利用帶寬和計算資源,提高下載

多線程 , JAVA

王中陽講編程 - 該開始寫簡歷了

年後是找工作的熱潮,很多朋友已經開始準備簡歷了,那麼簡歷應該怎麼寫呢? 在此,我想分享一下個人見解。 我建議大家儘早開始撰寫簡歷。因為在這一過程中會對過往工作經歷和所學知識進行一個歸納總結,能讓我們迅速發現自己對哪些知識點還不太瞭解。 先花幾個小時完成一版初稿,不必一開始就力求完美,關鍵在於後續的優化。完成初稿後,根據簡歷的內容,制定複習計劃。在準備面試期間,持續完善簡歷。 初稿中的項目經歷可能缺

簡歷 , 後端

Awbeci - Javascript-瞭解Cookie

前言 最近使用next.js來開發前端網站,在登錄環節發現cookie的存儲和跨域存在問題,一直沒弄懂cookie的原理,看了網上好多大佬的文章,大有收穫分享給大家。 Cookie介紹 HTTP cookie(Web cookie,瀏覽器 cookie)是服務器發送到用户 Web 瀏覽器的一小段數據。瀏覽器可能會存儲 cookie 並將其與稍後的請求一起發送回同一服務器。通常,HTTP cooki

cookies , cookie

lindsay_bubble - Leetcode 85_maximal_rectangle_最大矩形

一、棧 承接Leetcode 84,柱狀圖算最大矩形面積,把該題入參改為柱狀圖高度即可 PS:這版本手搓int[]做棧和直接用ArrayDeque做棧,結果僅差2ms;但題84相差近15ms。 public int maximalRectangle(char[][] matrix) { if (matrix.length == 0) {

leetcode , , JAVA

wasdquiop - centos7 安裝 jdk

卸載舊版本 新環境虛擬機有自己自帶的openjdk,在安裝jdk前需要先把虛擬機的卸掉,防止多個jdk衝突 查看已安裝jdk rpm -qa | grep jdk rpm -qa | grep java 如果存在,挨個刪除已有版本: yum -y remove jdk版本 上傳 安裝包 鏈接: https://pan.baidu.com/s/1cOV10HZAZQPtRU1XyXG1tw

JDK , centos7 , Linux , JAVA , 程序員

witt - SseEmitter返回data被雙引號包裹的問題排查

一、背景 最近做接口的性能改造,大概背景如下: 舊: 1.前端每秒輪詢後端接口,接口返回數據狀態,前端用狀態做判斷,變更頁面交互。 2.前端固定調用後端接口,接口阻塞100秒,等待後端隨時返回結果,100秒到達後無結果,直接失敗。 新: 改為ServerSentEvent以text-event-stream固定時間窗口由後端返回處理進度。 二、簡單對比 1.後端服務壓力大。

spring , servlet , spring-mvc , JAVA , sse

Java陳序員 - 微軟開源!Office 文檔輕鬆轉 Markdown!

大家好,我是 Java陳序員。 今天,給大家介紹一款微軟開源的文檔轉 Markdown 工具。 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。 項目介紹 MarkItDown —— 微軟開源的 Python 工具,能夠將多種常見的文件格式(如 PDF、PowerPoint、Word、Excel、圖像、音頻和 HTML 等)轉換為 Mark

github , Docker , Markdown , Python

jacheut - 談談HashMap的一些問題

hashMap在多線程環境下的表現 在jdk1.7中多線程put時可能會導致get無限循環,具體表現為CPU使用率100%; 該方法實現的機制就是將每個鏈表轉化到新鏈表,並且鏈表中的位置發生反轉,而這在多線程情況下是很容易造成鏈表迴路,從而發生 get() 死循環。所以只要保證建新鏈時還是按照原來的順序的話就不會產生循環(JDK 8 的改進)。即在jdk1.7是採用的頭插法,在jdk1.8使

hashmap , JAVA

碼猿技術專欄 - SpringBoot可以同時處理多少請求?

大家好,我是不才陳某~ 我們都知道,SpringBoot默認的內嵌容器是Tomcat,也就是我們的程序實際上是運行在Tomcat裏的。所以與其説SpringBoot可以處理多少請求,倒不如説Tomcat可以處理多少請求。 關注公眾號:碼猿技術專欄,回覆關鍵詞:1111 獲取阿里內部性能調優手冊 關於Tomcat的默認配置,都在spring-configuration-metadata.json文件

spring , 微服務 , spring-mvc , springboot

福 - Spring FrameWork從入門到NB - 依賴注入DI

依賴注入DI指的是Spring IoC容器對對象的依賴對象的處理過程,對象的依賴對象,説起來比較拗口,其實指的就是:如果一個對象A的某一屬性為對象B,則對象B就是對象A的依賴對象,對象A創建的過程中也要創建對象B並注入到對象A,之後對象A才能正常工作。 Spring IoC可通過如下三種方式注入依賴對象: 構造器參數 工廠方法參數 Setter方法 Spring DI因此也分為兩種:基於

spring , 依賴注入 , JAVA

點墨 - DevEco Studio創建Java項目,gradle報sync failed:connection reset錯誤

使用DevEco Studio 3.1.1版本,創建Java應用,程序報錯,無法運行。 原因: DevEco Studio新建的Java應用默認的gradle配置指向的是https://repo.huaweicloud.com,而你的網絡因為各種原因(比如公司網絡),無法訪問,所以會報錯。 解決方法 1.設置代理 打開File Settings Appearance Behavio

studio創建新項目台 , sync , JAVA , gradle , harmonyos

尼古拉斯舞王 - 內連接與隱式內連接:SQL連接的本質解析

學習目標: 學習 在SQL查詢中,數據表的連接操作是我們日常開發中最常用的功能之一。今天我們來深入探討兩種實現內連接的方式:顯式內連接和隱式內連接,看看它們之間的區別以及如何選擇。 什麼是內連接? 首先,讓我們明確內連接的核心概念:內連接只返回兩個表中連接條件匹配的行。如果某行在其中一個表中沒有匹配項,那麼這行數據就不會出現在結果集中。 顯式內連接(EXPLICIT

顯式 , 內連接 , 後端開發 , JAVA , SQL

清醒的人最荒唐 - ImportBeanDefinitionRegistrar與BeanDefinitionRegistryPostProcessor的區別

概述 如果想實現自定義註冊bean到spring容器中,常見的做法有兩種 @Import+ImportBeanDefinitionRegistrar BeanDefinitionRegistryPostProcessor BeanDefinitionRegistryPostProcessor與ImportBeanDefinitionRe

spring , 自定義 , 後端開發 , JAVA , ide

湯太鹹 - JAVA基礎知識String以及文件目錄讀取

String基礎 String s = "Hello World!"; s.chars().mapToObj(letter - (char)letter) .map(Character::toUpperCase) .forEach(System.out::print); //輸出 HELLO WORLD! StringBuffer是同

JAVA , string

華為雲開發者聯盟 - 最強雲硬盤來了,讓AI模型迭代從1周縮短到1天

摘要:華為雲擎天架構+ Flash-Native存儲引擎+低時延CurreNET,數據存儲和處理還有啥擔心的? 雖然我們已經進入大數據時代,但多數企業數據利用率只有10%,數據的價值沒有得到充分釋放。面對海量數據爆炸式的增長和發掘數據內在價值的巨大需求,擁有彈性伸縮、無限擴展能力的雲存儲正發展成為時代的智能數據底座。 另一方面,隨着人工智能(AI)、VR/AR、5G、自動駕駛等技術的發展,應

ssd , Flash , 華為雲 , 雲存儲 , 數據存儲

mob64ca13fe62db - 【Python】永久使用國內pip鏡像源

Python pip使用簡介和國內鏡像下載 什麼是pip pip 是 Python 的官方包管理工具,用於安裝和管理第三方庫(也稱為“包”或“模塊”)。自 Python 3.4 起,pip 默認隨 Python解釋器安裝,通過命令行使用 pip 命令進行包的安裝、卸載、升級等操作。 通過 pip --version 檢查pip是否安裝。 pip

鏡像源 , 後端開發 , 包名 , Python

huan1993 - ForkJoinPool在生產環境中使用遇到的一個問題

1、背景 在我們的項目中有這麼一個場景,需要消費kafka中的消息,並生成對應的工單數據。早些時候程序運行的好好的,但是有一天,我們升級了容器的配置,結果導致部分消息無法消費。而消費者的代碼是使用CompletableFuture.runAsync(() - {while (true){ ..... }}) 來實現的。 即: 需要消費Kafka topic的個數: 7個,每個線程消費一個

線程池 , threadpoolexecutor , JAVA , 後端

阿里雲開發者 - 學習HTML DOM筆記

HTML DOM 簡介 HTML DOM 定義了訪問和操作 HTML 文檔的標準。 什麼是 DOM? DOM 是 W3C(萬維網聯盟)的標準。 DOM 定義了訪問 HTML 和 XML 文檔的標準: "W3C 文檔對象模型 (DOM) 是中立於平台和語言的接口,它允許程序和腳本動態地訪問和更新文檔的內容、結構和樣式。" W3C DOM 標準被分為 3 個不同的部分: • 核心 D

dom , xml , HTML

cyl173 - 【後端面經-Java】HashMap詳解

1. HashMap的家族定位 接口java.util.Map有四個常用的實現類,如圖是它們之間的類繼承關係。 下面我將一一介紹其性能特點。 HashMap: 最常用的Map實現類,通過使用Hash表結構,提高查找速度; 使用鍵值對作為存儲節點,只允許一個key值為null,允許多個value值為null; 線程不安全,對於線程安全有要求的程序,可以考慮使

hashmap , 面試 , 源碼分析 , JAVA , 後端