原创 Tomcat執行鏈源碼指引

注:本文只關注於請求執行順序,無初始化過程 高層執行鏈 瀏覽器—>http請求–>DNS服務–>三次握手–>tomcat處理–>四次揮手 DNS服務根據域名尋找ip: 瀏覽器緩存–>系統緩存–>路由器緩存–>ISP DNS緩存–>

原创 Redis綜述

redis 全稱remote dictionary service 不說廢話了,下邊是我翻閱redis資料整理出的大致redis框架及其概述

原创 一個72行java代碼的PRC框架

超級簡單的java實現RPC框架,詳細見代碼 package com.blackeyes.demo.rpc; import java.io.IOException; import java.io.ObjectInputStrea

原创 使用win10自帶虛擬機安裝CentOS詳解

1、安裝Hyper-V Hyper-V是win10自帶的虛擬機產品,相比於商用虛擬機(如VM、VBox)來說十分輕量級;     1)啓用Hyper-V:控制面板--->程序和功能--->啓用或關閉Windows功能--->找到Hyper

原创 java獲取時間天數間隔

寫在前面 java涉及時間比較及差值計算的無非就是Date 、SimpleDateFormat、Calendar三個類,但都沒有包含純粹計算天數差值的方法,要麼就是跟業務不匹配(明面上計算的天數,只考慮日期間隔,忽略具體時間的影響

原创 設計模式及相似模式對比

設計模式階段總結(一)寫在前面六大原則策略模式觀察者模式裝飾模式工廠模式單例模式命令模式適配器模式外觀模式適配器模式、外觀模式、裝飾模式對比 寫在前面 很久沒有這麼大塊的時間去重溫設計模式了,這正好整理一下; 本篇博文包含基礎設計

原创 Tomcat執行鏈(從瀏覽器到Servlet)

注:本文只關注於請求執行順序,無初始化過程 高層執行鏈 瀏覽器—>http請求–>DNS服務–>三次握手–>tomcat處理–>四次揮手 DNS服務根據域名尋找ip: 瀏覽器緩存–>系統緩存–>路由器緩存–>ISP DNS緩存–>

原创 AOP面向切面編程的簡單動態代理實現

AOP(Aspect Oriented Programming)面向切面編程的簡單動態代理實現 注:本次實現的動態代理僅僅依賴於java核心包 面向切面編程是對面向對象編程思想的一種強有力的補充,它可以使得在做程序設計時,編程人員只需要關

原创 Java實現字符串ID自增

我在網上各種搜索都沒找到找到清晰而直接實現字符串用戶id自增的代碼,索性查完資料自己寫一個簡單的。 不多說了,直接上代碼: package cn.CityExp.Test; import java.text.SimpleDateFor

原创 各相似設計模式間的區別(不定期更新)

注:此文適合對設計模式有一定了解的讀者,如有錯誤,還望諸君批評指正 簡單工廠模式、工廠方法模式、抽象工廠模式間的區別: 簡單工廠模式:客戶端只與工廠類和產品接口發生耦合,而工廠類與所有實現產品接口的產品類耦合,工廠類根據客戶端傳入的參數返

原创 eclipse環境下maven web項目熱部署到tomcat

注: 這幾天一直在爲eclipse環境下maven web項目部署到tomcat頭疼,網上的教程都不是很靠譜,不是環境沒說清楚,就是配置位置不給你截圖,踩過了無數的坑並接受了大佬們的指點,我這環境可算是裝好了,未免後來者繼續踩坑,我把

原创 Java實現遞歸讀取文件夾並逐行替換指定字符子串

Java實現 遞歸讀取文件 並替換文件中字符子串 注:適用於修改代碼中大量重複的變量名稱或者字符過濾之類的場景 按道理來講,直接複製我的代碼到兩個.java文件,注意引用關係就能跑 實現代碼: package com.tools; im

原创 原生Ajax實現異步數據傳輸

描述:不用前端js框架(如jQuery、Dojo、ext、proptype等)的原生Ajax,異步實現與後臺的數據傳輸,不依賴任何js包 - 五個步驟 注:所有js代碼均位於某一個js文件中,調用函數只需要引入該文件 - 1.建立XML