原创 深入理解java虛擬機-垃圾回收機制(1)

垃圾回收機制(1) java中取消了指針操作,採用java虛擬機自動管理對象。Garbage Collection(GC)也就是所謂的垃圾回收器在java之前就得到了使用,1960年誕生的Lisp是第一門使用內存動態分配和垃圾回收

原创 linux命令行學習筆記(1)

文件目錄處理命令 ls -i (i參數可以顯示文件或者目錄的inode,inode是文件或者目錄用於標識的唯一數字) ln -s 文件名 鏈接文件命(ln -s用來給文件創建一個符號鏈接,也叫軟鏈接;如果不加參數s那麼創建的就是

原创 hive學習小記1

1、變量和屬性 hive中有四個命名空間來存儲變量和屬性。 hivevar -> 用戶自定義變量 hiveconf -> hive相關配置屬性 system -> java程序中的配置屬性 env -> shell環

原创 mac下安裝hadoop與hive

hadoop 3.x安裝 1、ssh免密登陸配置 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys c

原创 排序算法-選擇排序之堆排序

堆是一種除了底層節點外的完全填滿的二叉樹,底層可以不完全,左到右填充。堆在實現優先隊列的時候很有用。堆又分爲大根堆和小根堆。大根堆的父節點的值大於等於兩個子節點的值。小根堆的父節點的值小於等於兩個子節點的值。 堆排序的思想是:每

原创 Linux/Unix系統編程-基本概念

內核 內核是操作系統的核心,是指管理和分配系統資源的核心軟件。 內核的職責 ①進程調度:linux屬於搶佔式多任務操作系統,多個進程可以同時存在於內存當中,但是每次只能有一個進程獲得對cpu的使用權。內核通過一定的進程調度算

原创 排序算法-插入排序之希爾排序

希爾排序是插入排序的一種。 首先我們來了解一個定理:交換相鄰元素的任何排序算法平均時間爲O(N^2)。 所以希爾排序通過比較一定間隔的元素來進行工作,各趟距離隨算法減小,最後比較相鄰元素完成排序。也就是說原來的插入排序是相鄰的

原创 Netty學習-Java網絡編程

阻塞與非阻塞 我們最初接觸到的java網絡編程往往是同步阻塞的IO。 同步阻塞和同步非阻塞的區別在於接收數據的時候。同步阻塞採用接收到一個客戶端的接入請求,開啓一個線程,然後這個線程等待客戶端發送信息,在等待的過程中採用阻塞。這

原创 Spring源碼解析-容器功能擴展

spring中不僅有BeanFactory接口,還提供了一個接口ApplicationContext,用於拓展BeanFactory。 ApplicationContext context = new ClassPathXmlAp

原创 Spring源碼解析-bean的加載

在聊bean加載之前,我們先聊一下FactoryBean的使用。我們一般在spring配置文件時,spring通過反射機制來實例化我們制定的class,可是我們需要在bean中配置大量的信息,那麼FactoryBean就誕生了,我

原创 排序算法-插入排序之直接插入

插入排序的思想是:每一步將元素插入到前面已經排序好數組的對應的位置。 代碼: public class InsertionSort { public static void main(String[] args){

原创 Spring源碼解析-springmvc

springmvc是spring爲web應用程序提供的一個模塊。 Springmvc是基於servlet實現的,通過實現Servlet接口的DispatcherServlet來封裝核心功能,通過請求分派給處理程序。 在分析源碼

原创 Spring源碼解析-AOP

AOP是面向切面編程,能對一些方法進行相同的處理。首先來看一下怎麼用。 ①創建一個需要被攔截的bean public class AopTest { public void test(){ System.

原创 Spring boot—logback日誌構建

spring boot是一款能夠快速搭建應用的框架。它裏面也包含了日誌系統,例如我們在application.properties中加入 logging.file=日誌路徑 logging.level.包名=級別 這樣就能配置簡單

原创 排序算法-交換排序之快速排序

和歸併排序一樣,快速排序也是一種分治的遞歸算法。 快速排序的思想是:選取一個樞紐元,將比樞紐元小的元素放樞紐元前面,把比樞紐元小的元素放後面,然後將前面的集合,後面的集合,重複之前的步驟。 樞紐元的選取是一門學問,我們要將樞紐