原创 關於搭建虛擬環境的一系列問題(僅供參考)

看到有同學用Anaconda環境來做實驗,我自己也搭了一個。使用jupyter notebook 確實比在終端直接操作方便。但是很頭疼的一點就是有可能會出現Anaconda自帶的Python跟原來的Python發生衝突,各種百度、Googl

原创 Java反射機制概念(運行狀態中知道類所有的屬性和方法)

在Java中的反射機制是指在運行狀態中,對於任意一個類都能夠知道這個類所有的屬性和方法;並且對於任意一個對象,都能夠調用它的任意一個方法;這種動態獲取信息以及動態調用對象方法的功能稱爲Java語言的反射機制。反射的應用場合:首先說一下編譯時

原创 Java 中 static 關鍵字(改)

1、static方法一般稱作靜態方法,由於靜態方法不依賴於任何對象就可以進行訪問,因此對於靜態方法來說,是沒有this的,因爲它不依附於任何對象,既然都沒有對象,就談不上this了。並且由於這個特性,在靜態方法中不能訪問類的非靜態成員變量和

原创 面試被問到,不會。

面試被問到。不會。晚點來搞。使用Dubbo遇到的問題?同時配置了XML和properties文件,則會使properties中的配置無效。只有XML沒有配置時,properties才生效。Dubbo線程模型?錄音。

原创 HashMap JDK1.7(1.8之前) 和 JDK1.8對比

1、JDK1.7採用了數組+鏈表的數據結構,JDK1.8採用了數組+鏈表/紅黑樹的數據結構2、JDK1.8對HashMap的hash函數做出了優化,JDK 1.8 的 hash 方法 相比於 JDK 1.7 hash 方法更加簡化,但是原理

原创 Arraylist 與 LinkedList 異同

1. 是否保證線程安全: ArrayList 和 LinkedList 都是不同步的,也就是不保證線程安全;2. 底層數據結構: Arraylist 底層使用的是Object數組;LinkedList 底層使用的是雙向鏈表數據結構(JDK1

原创 獲取用鍵盤輸入常用的的兩種方法

方法1:通過 ScannerScanner input = new Scanner(System.in); String s = input.nextLine(); input.close();方法2:通過 BufferedReaderBu

原创 ConcurrentHashMap線程安全的具體實現方式/底層具體實現

JDK1.7首先將數據分爲一段一段的存儲,然後給每一段數據配一把鎖,當一個線程佔用鎖訪問其中一個段數據時,其他段的數據也能被其他線程訪問。ConcurrentHashMap 是由 Segment 數組結構和 HashEntry 數組結構組成

原创 String 和 StringBuffer、StringBuilder 的區別是什麼?String 爲什 麼是不可變的?

可變性String 類中使用 final 關鍵字修飾的字符數組保存字符串, private final char value[] ,所以 String 對象是不可變的。而StringBuilder 與 StringBuffer 都繼承自 A

原创 Java 中 finally 中的代碼一定會被執行嗎?

至少有兩種情況下finally語句是不會被執行的:1、try語句沒有被執行到,如在try語句之前return就返回了,這樣finally語句就不會執行。這也說明了finally語句被執行的必要而非充分條件是:相應的try語句一定被執行到。2

原创 sleep() 與 wait() 的區別

1. sleep()方法是屬於Thread類中的。而wait()方法,則是屬於Object類中的。2. wait()和sleep()都是讓出CPU佔有權,讓其它線程能夠得到運行,不同的地方在於wait()可以通過notify()或者noti

原创 HashSet 和 HashMap 區別

如果你看過 HashSet 源碼的話就應該知道:HashSet 底層就是基於 HashMap 實現的。(HashSet 的源碼非常非常少,因爲除了 clone() 方法、writeObject()方法、readObject()方法是 Has

原创 數據的分區分表

分庫分表有垂直切分和水平切分兩種。垂直切分(按照功能模塊)將表按照功能模塊、關係密切程度劃分出來,部署到不同的庫上。例如,我們會建立定義數據庫workDB、商品數據庫payDB、用戶數據庫userDB、日誌數據庫logDB等,分別用於存儲項

原创 Spring MVC 原理

Spring的模型-視圖-控制器(MVC)框架是圍繞一個DispatcherServlet來設計的,這個Servlet會把請求分發給各個處理器,並支持可配置的處理器映射、視圖渲染、本地化、時區與主題渲染等,甚至還能支持文件上傳。MVC工作流

原创 數據庫三範式

第一範式(1st NF -列都是不可再分)第一範式的目標是確保每列的原子性:如果每列都是不可再分的最小數據單元(也稱爲最小的原子單元),則滿足第一範式(1NF)第二範式(2nd NF-每個表只描述一件事情)首先滿足第一範式,並且表中非主鍵列