Time of Update: 2018-12-05
Listener是Servlet的監聽器,它可以監聽用戶端的請求、服務端的操作等。(通過監聽器,可以自動激發一些操作,比如監聽線上的使用者的數量。當增加一個HttpSession時,就激發sessionCreated(HttpSessionEvent se)方法,這樣就可以給線上人數加1。)Servlet 監聽器用於監聽一些重要事件的發生,監聽器對象在事情發生前、發生後可以做一些必要的處理。目前 Servlet2.4 和 JSP2.0 常用的有7個監聽器介面,分為3類:1.
Time of Update: 2018-12-05
Java中的RMI機制和JVM沙箱安全架構。1.
Time of Update: 2018-12-05
/** * 獲得zip檔案裡的所有檔案,以及檔案大小 * @author Administrator * */public class ZipFile {public ZipFile() throws IOException{java.util.zip.ZipFile zf = new java.util.zip.ZipFile("E:/Java/Project.zip");Enumeration e =
Time of Update: 2018-12-05
邏輯運算子 邏輯運算子 AND(&&)?? OR(||)? NOT(!)? 都會得到一個boolean值,且他們只能用於boolean身上。邏輯運算式中的boolean無法使用類似於c/c++中的數值代替。注意,boolean被用於一個預期會出現string的地方,其值會自動轉換為適當的文本形式,並且假如2個比較的基礎資料型別 (Elementary Data Type)不相同,也是可以比較的~例如10和10.0d,結果也是會返回true的 短路式的核定
Time of Update: 2018-12-05
流程式控制制 java中的流程式控制制語句有 if-else whlie do-whlie for switch-case 但是沒有提供goto,他在java中是保留字,不是關鍵字(以後可能會有哦~) true和false java中不支援用數字表示boolean值,如果你一定要使用,請先以運算式將他轉換為boolean值,例如if(a==0) if-else 這個流程式控制制語句恐怕是我們最常用的了,其中else可有可無可以使用 if(boolean)
Time of Update: 2018-12-05
第4章 初始化和清理 我個人理解初始化和清理的關係就是吃飯和上廁所,正是有了初始化的對象,我們才能使用清理。但是為什麼要清理呢?想象一下一個人光吃不拉,是個什麼情況?:)難道我們的程式也要像吃飯一樣光產生對象,而不去清理使用完畢的對象?任由我們的對象堆積如山,佔用系統資源? 以建構函式確保初始化的進行 什麼建構函式?建構函式就是一種特殊的函數,當對象產生時,他會被系統自動的調用起來,並且這個函數名稱和class名相同。 class ConstructorTest
Time of Update: 2018-12-05
其實我早就有想寫個學習筆記的想法了。今天終於下定決心要寫了,寫的不好的地方,大家給我指正啊!其實也就是個簡化版的TIJ第一章 對象導論 其實這章介紹的是oop的思想,知道什麼是抽象、介面、繼承等等,其實這些我覺得沒有必要專門提出來寫一章,這個我就不介紹了在以後的學習中,這些知識是會在裡面融會貫通的。第二章 萬事萬物皆對象 在java程式中,萬事萬物皆對象,即使是java程式本身,也是一個對象 一、Reference是操縱對象之鑰匙
Time of Update: 2018-12-05
打造第一個java程式 名稱的可視性 名稱問題有些人覺得不是什麼大問題,我開始也覺得那不是個什麼大問題,但是當你有一天寫了很多的類時,你就發現,名稱其實真的很重要,假如你有這麼一個類,他需要調用其他幾個類, 當這幾個被類名相同時,問題就出現了,那麼
Time of Update: 2018-12-05
第三章 控製程序流程 在java的世界中,對象和資料的處理是通過運算子,而選擇和判斷則是靠控制語句來實現的 使用java運算子 運算子的2個用處,1、運算子接受引數,並且產生新值,例如 int a=1+1;2、運算子也可以改變運算元的值 例如 i++; 大多數的運算子都是可以作用與基礎資料型別 (Elementary Data
Time of Update: 2018-12-05
注意要進入 JXL。JAR包import java.io.*; import jxl.*; import jxl.write.*; public class CreatExcel { public static void main(String args[]) { try { //開啟檔案 WritableWorkbook book= Workbook.createWorkbook(new File("bool.xls"));
Time of Update: 2018-12-05
JAVA的跨平台的特性深受java程式員們的喜愛,但正是由於它為了實現跨平台的目的,使得它和本地機器的各種內部聯絡變得很少,大大約束了它的功能,比如與一些硬體裝置通訊,往往要花費很大的精力去設計流程編寫代碼去管理裝置連接埠,而且有一些裝置廠商提供的硬體介面已經經過一定的封裝和處理,不能直接使用java程式通過連接埠和裝置通訊,這種情況下就得考慮使用java程式去調用比較擅長同系統打交道的第三方程式,從1.1版本開始的JDK提供瞭解決這個問題的技術標準:JNI技術. JNI是Java
Time of Update: 2018-12-05
http://nopainnogain.iteye.com/blog/985739 Class.forName(xxx.xx.xx) 返回的是一個類首先你要明白在java裡面任何class都要裝載在虛擬機器上才能運行。這句話就是裝載類用的(和new 不一樣,要分清楚)。 至於什麼時候用,你可以考慮一下這個問題,給你一個字串變數,它代表一個類的包名和類名,你怎麼執行個體化它?只有你提到的這個方法了,不過要再加一點。 Java代碼 A a = (A)Class.forName("pacage.A"
Time of Update: 2018-12-05
public static interface PublicMethod extends Annotation { } public static interface PrivateMethod extends Annotation { }上面是Palm裡面用到的Annotation,特轉載下面一篇文章(http://www.ericdlarson.com/misc/chrome_command_line_
Time of Update: 2018-12-05
Java中throw與throws的不同/////java處理異常方式/////////////////////////////// 在java代碼中如果發生異常的話,jvm會拋出異常對象,導致程式碼中斷,這個時候jvm在做的操作就是:建立異常對象,然後拋出,比如: int i= 1; int j = 0; int res = 0; res = i/j;//除0錯誤 System.out.println(res); 這5句代碼運行到第四句會中斷,因為jvm拋出了異常 ////throw的作用//
Time of Update: 2018-12-05
今天用Middlegen產生hibernate的hbm.xml和java檔案,出現圖形介面後,點擊“generate”的按鈕後,拋出了“java.lang. IncompatibleClassChangeError”的異常,讓人摸不著頭腦,百度找了一下,看來也有“志同道合”者,竟然和我一樣,第一次使用的時候成功產生hbm.xml檔案,再次使用就出錯。 解決方案:在Middlegen依賴的lib包裡有多個velocity-xxx.jar的包,把低版本的刪除就ok。
Time of Update: 2018-12-05
昨晚在做圖片驗證碼的時候,產生驗證碼成功了,但卻拋出了一個異常:java.lang.illegalStateException:getOutputStream() has already been call for this response,呵呵,錯誤的狀態,肯定是在輸出資料流已經關閉的情況還繼續向頁面輸出語句,看了一下產生驗證碼的代碼,果然如此:OutputStream
Time of Update: 2018-12-05
1,集合和泛型在沒有給集合制定類型時,一個集合可以加入任何類型的資料,但是規定了類型之後,則只能放同一種類型的資料2,泛型是jdk1.5的新特性3,去類型化(泛型基本可以說是通過編譯器實現的,在運行階段類型會被擦除)ArrayList<String> lista = new ArrayList<String>();ArrayList<Integer> listb = new
Time of Update: 2018-12-05
import java.io.*;import java.text.*;import java.math.*;//import java.util.*;public class gaojingdutest {public static void main(String[] args){//double 型資料的小數點控制輸出double a=1113.141592653;DecimalFormat formatter1=new
Time of Update: 2018-12-05
package ch10;public class HeapSort {/** * 篩選演算法,即一次堆調整,調整為大頂堆 * 此演算法假設t[s...m]除了t[s]外已經是一個大頂堆 * @param <T> * @param t * @param s * @param m * @return true:成功進行一次篩選,false:篩選出錯 */private static <T extends Comparable> boolean heapAdjust(T[]
Time of Update: 2018-12-05
package ch10;/** * 簡單選擇排序 * @author songjie * */public class SelectSort {public static <T extends Comparable> boolean selectSort(T[] t){if(t==null || t.length <= 1) return true;for(int i = 0; i<t.length-1; i++){int pos = selectMinKey(t,