原创 Spring中的@Transactional必須要瞭解的概念

pring中的@Transactional基於動態代理的機制,提供了一種透明的事務管理機制,方便快捷解決在開發中碰到的問題。 一般使用是通過如下代碼對方法或接口或類註釋: 1 @Transactional(propag

原创 淺談Java中的hashcode方法

哈希表這個數據結構想必大多數人都不陌生,而且在很多地方都會利用到hash表來提高查找效率。在Java的Object類中有一個方法: 1 public native int hashCode();

原创 十道海量數據處理面試題與十個方法大總結

第一部分、十道海量數據處理面試題   1、海量日誌數據,提取出某日訪問百度次數最多的那個IP。   此題,在我之前的一篇文章算法裏頭有所提到,當時給出的方案是:IP的數目還是有限的,最多2^32個,所以可以考慮使用hash將ip直接

原创 給出兩個單詞,找到它們的最短距離

題目 有一個很大的文本文件,裏面包含許多英文單詞。給出兩個單詞,找到它們的最短距離 (以它們之間隔了多少個單詞計數)。你能在O(1)的時間內返回任意兩個單詞間的最短距離嗎? 你的解法空間複雜度是多少? 解答 先看一個例子,爲

原创 解碼OutOfMemoryError:PermGen Space

垃圾回收是Java開發人員理解得最不徹底的地方之一。他們覺得既然JVM負責垃圾回收,那麼便不必擔心內存的分配跟回收等問題。但是當應用變得複雜的時候,垃圾回收同樣變得複雜起來,而且一旦垃圾回收變得複雜,程序的性能就會受到影響。所以,這篇文

原创 配置Tomcat使用https協議(配置SSL協議)

有的時候我們希望我們的請求使用https如果希望 Tomcat支持 Https,主要的工作是配置 SSL協議,那我們需要做些什麼那具體如下: 一、生成安全證書(個人學習可以使用工具生成,而如果是公司的則另當別論了) 二、配置tomc

原创 設計模式中類的關係

在java以及其他的面向對象設計模式中,類與類之間主要有6種關係,他們分別是:依賴、關聯、聚合、組合、繼承、實現。他們的耦合度依次增強。 1. 依賴(Dependence)  依賴關係的定義爲:對於兩個相對獨立的對象,當一個對象

原创 CentOS 6.5 安裝 Nginx 1.7.8 教程

Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,由俄羅斯的程序設計師Igor Sysoev所開發,其特點是佔有內存少,併發能力強,第一個公開版本0.1.0發佈於2004年10月4日,目前最

原创 30多年程序員生涯經驗總結

1.客戶在接觸到產品之後,纔會真正明白自己的需求。 這是我在我的第一份工作上面學來的。只有當我們給客戶展示產品的時候,他們纔會意識到哪些是必須的。給出一個功能性原型設計遠遠比一張長長的文字表格要好。 2.只要有充足的時間,所有安全防

原创 java對象 深度克隆(不實現Cloneable接口)和淺度克隆

爲什麼需要克隆: 在實際編程過程中,我們常常要遇到這種情況:有一個對象A,在某一時刻A中已經包含了一些有效值,此時可能會需要一個和A完全相同新對象B,並且此後對B任何改動都不會影響到A中的值,也就是說,A與B是兩個獨立的對象,但B的初

原创 Java 多線程同步的五種方法

二、爲什麼要線程同步 因爲當我們有多個線程要同時訪問一個變量或對象時,如果這些線程中既有讀又有寫操作時,就會導致變量值或對象的狀態出現混亂,從而導致程序異常。舉個例子,如果一個銀行賬戶同時被兩個線程操作,一個取100塊,一個存錢100

原创 寫一個函數,計算0到n之間2的個數。

題目 寫一個函數,計算0到n之間2的個數。 解答 最簡單直觀的方法就是對於0到n之間的數,一個個地去統計2在它們上出現的個數, 然後累加起來即可。求2在某個數上出現的次數需要O(logn)的時間,一共有n個數, 所以共需要O

原创 不是技術牛人,如何拿到國內IT巨頭的Offer

不久前,byvoid面阿里星計劃的面試結果截圖泄漏,引起無數IT屌絲的羨慕敬仰。看看這些牛人,NOI金牌,開源社區名人,三年級開始寫Basic...在跪拜之餘我們不禁要想,和這些牛人比,作爲絕大部分技術屌絲的同學們,是否真的與國內IT巨

原创 combobox的輸入內容匹配的源碼分析--修改爲真正的模糊匹配

最近,項目中有個需求就是系統中的所有的單選下拉框由於加載的數據比較多,所以產品設計提議要將所有的下拉框改造成可以實現模糊匹配的形式。之前使用過easyui的combox插件,但是它只支持從第一個字母開始匹配,所以這個還是不能滿足需求,所以

原创 算法-求二進制數中1的個數

任意給定一個32位無符號整數n,求n的二進制表示中1的個數,比如n = 5(0101)時,返回2,n = 15(1111)時,返回4 這也是一道比較經典的題目了,相信不少人面試的時候可能遇到過這道題; 方式一:移位+計數 int BitC