原创 Java 反射機制包 java.lang.reflect

Java的反射(reflection)機制是指在程序的運行狀態中,可以構造任意一個類的對象,可以瞭解任意一個對象所屬的類,可以瞭解任意一個類的成員變量和方法,可以調用任意一個對象的屬性和方法。這種動態獲取程序信息以及動態調用對象的功能稱爲

原创 Spring 中的 BeanFactory 和 FactoryBean

學習Spring的時候,一開始對於BeanFactory和FactoryBean都會很模糊,甚至覺得這兩個類是有着類似的功能,其實比較簡單的說,BeanFactory是一個工廠類,用於Bean的創建和獲取等。FactoryBean則是一個

原创 JVM 統計信息監控 — jstat

jstat是用於監視虛擬機各種運行狀態信息的命令行工具,它可以顯示本地或者遠程虛擬機進程中中的類裝載,內存,垃圾收集,JIT編輯等運行數據。我們使用jstat -help 可以查看jstat的具體用法,如下所示: Usage: jsta

原创 JVM 簡介與運行時數據區

我也不知道爲什麼還要寫一篇這個文章,畢竟這種文章一搜一大堆,可能只是爲了讓這個欄目儘可能完整吧,也可能是爲了自己加深印象,其實是強迫症發作。其實只要知道jvm運行時數據區劃分就可以略過這篇文章。 在學習Java之初,我們肯定會先下載安裝J

原创 Spring IOC 註解 — @ImportResource,@Import

在Spring IOC 註解 — @Bean,@Scope 和 @Lazy 一篇,我們介紹了使用@Bean註解將一個組件交給Spring IOC容器去管理,除此之外我們還可以通過@ImportResource和@Import往容器中注入B

原创 Spring IOC 容器 @Conditional 和 @Profile

說起@Profile,對於使用Spring的大多數人都很熟悉,它是Spring爲我們提供的可以根據當前環境,動態的激活和切換一系列組件的註解。比如我們有開發環境(dev),測試環境(Test),生產環境(Product),這三個環境分別使

原创 Spring IOC 註解 — @Bean,@Scope 和 @Lazy

Spring可以做很多事情,爲企業級開發提供了豐富的功能,但是這些功能都依賴於它的兩個核心特性:依賴注入(DI)或控制反轉(IOC)和麪向切面編程(AOP)。如果說Spring IOC容器將開發人員從對Bean(實例)的管理的繁重任務中脫

原创 JVM 內存監控之 jmap

jmap命令是一個可以輸出所有內存中對象的工具,甚至可以將VM 中的heap,以二進制輸出成文本。使用 jmap -help 命令可以查看jmap的具體用法,如下所示: Usage: jmap [option] <pid> (to co

原创 JVM 線程監控之 jstack

jdk自帶的jstack命令可以查看當前或者JVM中運行的Java進程ID的線程的運行情況和堆棧跟蹤,並且可以將當前線程情況輸入到文本。使用 jstack -help 命令可以查看jstack的具體用法,如下所示: Usage:

原创 JVM 參數監控之 jinfo

jdk自帶的jinfo命令,可以用來查看正在運行的 java 應用程序的擴展參數,包括Java System屬性和JVM命令行參數;也可以動態的修改正在運行的 JVM 一些參數。當系統崩潰時,jinfo可以從core文件裏面知道崩潰的Ja

原创 JVM 進程監控之 jps

jdk自帶的jps命令可以查看當前JVM中運行的Java進程ID,java程序在啓動以後,會在java.io.tmpdir指定的目錄下,就是臨時文件夾裏,生成一個類似於hsperfdata_User的文件夾,這個文件夾裏(在Linux中爲

原创 Authorization—權限控制流程

本篇是對Shiro體系架構的介紹,本欄目大部分內容來自於Shiro官網。翻譯過程中已經儘量保證用詞的準確性和易懂性,如有不準確或者不確切的地方,請聯繫作者加以修改。本篇內容翻譯自Authorization特徵與Authorization官

原创 Nginx 編譯部署之configure命令

在進行Nginx 簡介和安裝部署一篇,我們瞭解到在編譯源代碼部署Nginx時,我麼可以使用configure命令在編譯時配置一些參數,configure命令定義了系統的各個方面,包括nginx允許用於連接處理的方法,並且創建一個Makef

原创 Nginx 簡介和安裝部署

Nginx (engine x) 是一個高性能的HTTP和反向代理web服務器,同時也提供了IMAP/POP3/SMTP服務。它具有佔用內存少,併發能力強,穩定性高等優點,並且具有豐富的功能集,示例配置文件等特性,使它已經成爲很多企業中使

原创 Fast-Json 詳解 — JSONObject與JSONArray的用法

FastJson:fastjson是阿里巴巴的開源JSON解析庫,它可以解析JSON格式的字符串,支持將Java Bean序列化爲JSON字符串,也可以從JSON字符串反序列化到JavaBean,本篇章只講述Json與對象之間的轉換。至於