原创 知識圖譜整理之Java基礎ThreadPoolExecutor

ThreadPoolExecutor介紹 ThreadPoolExecutor是一個管理線程的一個類,可以有效的複用和控制線程。之前比較好奇,像這樣的池化技術是如何實現的,今天我們就來一起探究下。本文是在JDK8的源碼下進行閱讀的

原创 知識圖譜整理之Java基礎CyclicBarrier

CyclicBarrier介紹 CyclicBarrier字面意思迴環柵欄,通過它可以實現讓一組線程等待至某個狀態之後再全部同時執行。叫做迴環是因爲當所有等待線程都被釋放以後,CyclicBarrier可以被重用。我們暫且把這個狀

原创 知識圖譜整理之Java基礎CountDownLatch

CountDownLatch介紹 CountDownLatch是什麼呢?我個人的話用的比較少,這次學習這塊的源碼把粗淺的原理搞懂就行,這個在我理解就是用來一個線程等待其他線程的動作都處理完之後觸發,可能這麼說比較難以理解,我們還是

原创 知識圖譜整理之Java基礎ReentrantLock

ReentrantLock介紹 ReentrantLock也是在JUC併發包下的,實現可重入鎖的機制。也是在AQS基礎之上的,在上一篇AQS的講解基礎下,理解這篇會比較的簡單。知識圖譜整理之Java基礎AbstractQueued

原创 HTTP個人總結(五)

今天主要來講HTTP中的緩存。 首先看一張在不同網絡下的傳輸速度: 現在介紹幾個概念: 先說下瞬間擁塞的概念: 是指突發事件使很多人幾乎同時去訪問一個Web文檔時出現瞬間擁塞,由此造成過多流量峯值可能會使網絡和Web服務器造成災難

原创 HTTP個人總結(二)

今天主要總結兩塊內容,HTTP報文和URL資源。 首先總結URL和資源。 URL是什麼? URL就是因特網資源的標準化名稱 URL的語法又是什麼? 大多數的URL語法都建立在下面由9個部分構成的通用格式上: scheme://use

原创 HTTP個人總結(四)

今天主要總結的是Web服務器與代理。 先從Web服務器開始。 Web服務器是如何實現的? Web服務器實現了HTTP和相關的TCP連接處理。負責管理Web服務器提供的資源,以及對Web服務器的配置、控制及擴展方面的管理。 Web服務器邏

原创 JVM虛擬機個人總結(二)

今天來總結一下這個星期所學到的關於JVM的知識。 這星期我看了JVM的內部的概述,先用一張圖來進行展示說明: 下面我會逐個進行概述(只是大概瞭解每個模塊的功能,後面會進行後面的總結會進行詳細的瞭解)。 好,在概述這些模塊之前,首先需要

原创 設計模式之Future模式例子

在我認爲,實例教學比理論教學更加容易理解,並且理論知識網上一大堆,這裏就不重複了,所以記錄下Future模式的一種實現例子,以備以後可以查看。 如果不太懂Future模式時幹什麼的,最好先普及下理論知識再來看更好。 好,現在我們就開始

原创 httpclient發送get請求並接收相應數據

終於開始我的實習生涯了,打算每星期發一篇自己遇到的需求或者總結,希望各位大神批評指正,也喜歡能來幾個志同道合和我一起來學習,走上java大神之路 廢話不多說,最近由於工作原因,開始接觸netty,service已經也好,需要我做一個h

原创 JVM虛擬機個人總結(一)

千里之堤始於足下,想要學好Java,需要大致瞭解JVM是如何運行的! 先說一些廢話,跟正文無關,不想被嘮叨的同學可以直接跳過。不知道大家剛學Java是怎麼過來的,我剛學Java的時候,就是老師教我一步一步的走,最後能跑出一個Hello

原创 數據庫設計時列變行思想

這星期的工作真的搞得我欲仙欲死,數據庫方案不斷被否定,看了一堆數據庫設計思想,最後在同事幫助下了解了列變行思想,接下來變寫下來作爲分享,希望有大神批評指正。 好,那麼具體我是什麼時候需要考慮到用這個呢? 下面是我自己想出來的一個例子:

原创 HTTP個人總結(三)

今天來總結的是關於HTTP的連接管理。 首先來介紹TCP連接是什麼? TCP爲HTTP提供了一條可靠的比特傳輸通道,從TCP連接一端填入的字節會從另一端以原有的順序、正確地傳送出來。 TCP是分流的、由IP分組傳送又是什麼? TCP

原创 for循環中ArrayLis嵌套用ArrayList的一些坑

在寫項目時遇到從數據庫取出一堆關於評論的信息,在Service層中進行數據處理,最終想以List<List<Map<>>>>形式進行解析交互。 先看我正確的代碼,之後在放出遇到的坑, package com.platebbg.produ

原创 JVM虛擬機個人總結(三)

今天來講一下關於類型的生命週期。 首先之前提到過類型的裝載,連接與初始化。接下來詳細的介紹一下各個過程。 Java虛擬機通過裝載、連接和初始化一個Java類型,使該類型可以被正在運行的Java程序使用。其中,裝載就是把二進制形式的Java