原创 Servlet學習筆記

一、開發環境:Intellij IDE 14.1.4 二、1、遇到問題:maven的本地倉庫放到默認地址下面C:\Users\weiwei\.m2的話,會佔用C盤很大空間 解決方法:可以在Intellij裏面setting菜單中配置ma

原创 Comparable和Comparator

Comparable: Comparable位於包   java.lang下 自定義的類要在加入list容器中後能夠排序,可以實現Comparable接口 Comparable 是一個對象本身就已經支持自比較所需要實現的接口(如 Str

原创 HashMap和Hashtable

HashMap和Hashtable都具有以下特徵 兩個Key的HashCode一樣的話,比較Key的值(通過Key的equals方法) 不可能存在Key相同的Entry 點贊 收藏 分享 文

原创 Vector與ArrayList區別

在寫java的時候,基本上都喜歡用arraylist,甚至我都不知道有個vector的存在。查了一下發現又是線程安全問題。。。咋個線程安全天天圍着我轉呢。。。多得阿里巴巴,讓我開始認識java的所謂線程安全問題。 the follow

原创 java中的集合和數組

數組Array和集合的區別:   (1)數組是大小固定的,並且同一個數組只能存放類型一樣的數據(基本類型/引用類型)   (2)JAVA集合可以存儲和操作數目不固定的一組數據。 (3)若程序時不知道究竟需要多少對象,需要在空間

原创 java中length,length(),size()區別

1 java中的length屬性是針對數組說的,比如說你聲明瞭一個數組,想知道這個數組的長度則用到了length這個屬性.2 java中的length()方法是針對字符串String說的,如果想看這個字符串的長度則用到length()這個

原创 ftok衝突

最近遇到一個問題,在用戶b下創建共享內存失敗,跟蹤代碼發現shmget的errno爲17(要創建的這個共享內存已經存在了),可是在該用戶下通過ipcs查看確實沒有共享內存啊,後來發現,用戶a下已經創建的共享內存與用戶b要創建的共享內存衝突

原创 Java 異常限制

覆蓋一個方法時,只能產生已在方法的基礎類版本中定義的異常。這是一個重要的限制,因爲它意味着與基 礎類協同工作的代碼也會自動應用於從基礎類衍生的任何對象(當然,這屬於基本的OOP概念),其中包括 異常。 下面這個例子演示了強加在異常

原创 mysql執行腳本無法插入中文

mysql數據庫編碼格式爲: 編輯數據庫腳本時候,將保存格式設置爲utf8。 我用UltraEdit 改的文件編碼格式

原创 concurrenthashmap和hashmap

hashmap: 程序使用一個公共鎖同步每一個方法,並嚴格得限制只能有一個線程同時訪問容器。 concurrenthashmap: 使用一個更加細化的鎖機制,叫分離鎖。這個機制允許更深層次的共享訪問,任意數量的讀線程

原创 ServerSocket 用法詳解

本篇文章觀點和例子來自 《Java網絡編程精解》, 作者爲孫衛琴, 出版社爲電子工業出版社。 在客戶/服務器通信模式中, 服務器端需要創建監聽端口的 ServerSocket, ServerSocket 負責接收客戶連接請求. 本章首

原创 ThreadPoolExecutor的corePoolSize和maximumPoolSize

按照JDK文檔的描述, 如果池中的實際線程數小於corePoolSize,無論是否其中有空閒的線程,都會給新的任務產生新的線程 如果池中的線程數大於corePoolSize 並且小於maximumPoolSize,而又有空閒線程,就給新

原创 java默認構造器constructor

1、如果類中不聲明構造器(不論有參無參)的話,java會默認生成一個無參構造器,可以用getDeclaredConstructor()函數證明這個無參構造器是否存在。 如果類中已經聲明瞭構造器的話,java就不會生成這個默認無參構造器了

原创 Java中帶包的類的編譯與執行

以HelloWorld.java 爲例( 假設該文件的位置是/home/HelloWorld.java): [java] view plaincopy package a.b; public class HelloWorld{

原创 java線程的狀態

NEW 狀態是指線程剛創建, 尚未啓動 RUNNABLE 狀態是線程正在正常運行中, 當然可能會有某種耗時計算/IO等待的操作/CPU時間片切換等, 這個狀態下發生的等待一般是其他系統資源, 而不是鎖, Sleep等 BLOCKED