Time of Update: 2018-12-04
在網上找到一些朋友的資料,用Java實現了一個MD5加密碼,類比了一個使用者註冊產生密文儲存,使用者登入密文比較的效果。類比實現功能細節:1、使用者註冊,產生一個隨機位元組數組,並加密成16進位的字串,再把使用者的密碼也加密成16進位字串,將二者組合成一個密文,儲存入庫。2、使用者登入,取出庫中的密文,轉成位元組數組,再從位元組數組中取出隨機位元組數組,與使用者登入密碼一起加密成存放雜湊值的位元組數組,再與庫中轉成的位元組數組比較,完成登入。下面貼上代碼,供大家傳閱。/** *
Time of Update: 2018-12-04
網上找了份資料,是別人完成的Java實現多線程下載的功能。Java多線程的好處挺多的,可以充分利用CPU的資源,簡化編程模型,簡化非同步事件的處理,使GUI更有效率,節約成本。下面是實現多線程下載的代碼:package com.zyujie.util;import java.io.InputStream;import java.io.RandomAccessFile;public class DownThread extends Thread {//
Time of Update: 2018-12-04
最近連續幾天都在搞這個(其實是因為搞了幾天都沒搞出來,今天經過大神指點,順利運行了),因為FLEX的上傳檔案要涉及到和伺服器端JAVA的通訊,於是開始看了下JAVA的上傳的東西,本來是想照著書上抄一抄代碼,運行應該沒問題,沒想到出現各種問題,主要還是包的匯入問題以及對Servlet的運行不太明白導致搞的很頭大,不過經過大神排錯,總算搞定了,總結下來,主要有以下幾點需要注意:1.包的匯入,涉及到找,下載這個相應的包,包具體的置放位置2.項目的正確部署3.項目中什麼檔案放在什麼地方,編譯後的CLAS
Time of Update: 2018-12-04
與C++不同,Java有自己的記憶體回收機制,同時,Java沒有了解構函式的概念,轉而提供了一個finalize方法,那麼finalize方法會在什麼時間執行呢? 或許有人以為是在將引用設定為null的時候,現在先看下面的例子: public class Test {public static void main(String[] args) {// TODO Auto-generated method stubDemo d = new
Time of Update: 2018-12-04
閑來無事,拿Java來看一下什麼叫做“君不君,臣不臣,父不父,子不子”,沒有想到的是,下面這段代碼竟然可以編譯通過,只是在執行的時候就死得很慘了:public class Test{SubTest sub = new SubTest();public static void main(String[] args){Test t = new Test();t.sub.p("Hello, World!!");}}class SubTest extends Test{public void p(
Time of Update: 2018-12-04
我們知道,我們通過調用線程的start方法啟動一個線程,那麼,我們可以直接調用run方法來啟動一個線程嗎? 先看下面一段代碼:public class Test {public static void main(String[] args) {// TODO Auto-generated method stubTestThread tt = new TestThread();tt.run();}}class TestThread extends Thread {static int i =
Time of Update: 2018-12-04
package ds; public class HeapSort { public static void main(String[] args) { long n = 10000; int[] arr = { 11, 7, 9, 8, 13, 23, 5, 6, 44, 17, 123, 78, 43, 99, 54, 55, 67, 89, 14, 22, 38, 11, 7, 9, 8, 13, 23, 5, 6, 44, 17, 123, 78, 43, 99, 54, 55, 67,
Time of Update: 2018-12-04
1. java.lang.nullpointerexception 這個異常大家肯定都經常遇到,異常的解釋是"程式遇上了null 指標",簡單地說就是調用了未經初始化的對象或者是不存在的對象,這個錯誤經常出現在建立圖片,調用數組這些操作中,比片未經初始化,或者圖片建立時的路徑錯誤等等。對數組操作中出現null
Time of Update: 2018-12-04
參加了JavaONE大會,得到了Java吉祥物Duke JavaONE大會,是12月13日-12月16日,北京國際會議中心。意外得到了Java的吉祥物Duke,跟大家炫一下,呵呵。。。 請注意,Duke已經被貼上了“ORACLE”的商標,呵呵。。。 這次大會還不錯,ORACLE+Java+MySQL可能只有在Oracle收購了SUN,之後才能看到這種盛況,各路高手雲集,有點像武林大會的架勢。 感觸良多,目前還在消化之中,有時間再和大家分享。。 —————————————————————————
Time of Update: 2018-12-04
不說P話,直接上碼: package com.hzmagix.utils;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.lang.reflect.Constructor;import java.lang.reflect.InvocationTargetException;import
Time of Update: 2018-12-04
有4台測試機器通過是通過路由器上網的,路由器通過撥號方式上網。每隔一段時間,就會重新撥號,在其自動撥號後,IP即發生變化,必須跑到機房查看路由器的公網ip後才能進行遠端連線。 最初打算在路由器後面的機器上執行tracert www.sina.com.cn 命令來找到路由器的ip,然後自動發送郵件給相關人員。 然而在測試機上執行tracert命令不能跟蹤到路由ip,時間緊迫,於是想到一個比較笨的辦法,去訪問一些可以顯示請求機器公網ip的頁面,然後把頁面的內容抓取下來發郵件給大家。
Time of Update: 2018-12-04
本例示範執行個體成員與類成員的差別,示範析構方法的設計和調用.聲明的Person1類包含了執行個體成員變數,類成員變數,執行個體成員方法和類成員方法. public class Person1 { protected String name; //姓名,執行個體成員變數,保護成員 protected int age; //年齡
Time of Update: 2018-12-04
這段時間我們做檔案上傳,因為是用的flex 沒有辦法和java是用BlazeDS 進行流的通訊傳遞資訊,而且一旦檔案很大我們記憶體就必須要足夠大,所以BlazeDS的方式我們必須要放棄的。採用方案flex+serverlet 方式輕鬆進行傳遞。其中遇到編碼問題:1 是用URLEncoding 解決(tomcat的類),2
Time of Update: 2018-12-04
equals 是比較兩個對象的屬性值時候相等: String str1 = "asc" ; // 存放在棧中 String str2 = new String("asc"); str1.equals(str2) //true == 是比較兩個對象的引用時候相等,即兩個引用時候指向同一個對象 string str3 = new String("asc");
Time of Update: 2018-12-04
在java中當我們定義 int i = 0;i = i++;System.out.println(i); 其結果是0; 首先我們來反組譯碼一下對應的class檔案 javap -c Test 0行iconst_0是將字面值0放到入棧放到的operand stack中,1行istore_1是從operand stack出棧將0寫到Local variable Area中2行iload_1是從local variable讀出0的值入棧3行iinc是對local
Time of Update: 2018-12-04
Java代碼編寫的30條建議(轉載) - [轉貼](1) 類名首字母應該大寫。欄位、方法以及對象(控制代碼)的首字母應小寫。對於所有標 識符,其中包含的所有單詞都應緊靠在一起,而且大寫中間單詞的首字母。例如: ThisIsAClassName thisIsMethodOrFieldName 若在定義中出現了常數初始化字元,則大寫static final基本類型標識符中的所有字母 。這樣便可標誌出它們屬於編譯期的常數。 Java包(Package)屬於一種特殊情況:它們全都是小寫字母,即便中間的單
Time of Update: 2018-12-04
第一種:/** * 實現對象的複製 * * @author jianhua.fengjh */@SuppressWarnings("all")public class UCloneUtil { /** * 序列化實現深複製 * * 通過Jdk原生對象序列化流實現深度複製,雖然簡便,但是效能非常之低。 * @TODO 後續要改成遞迴複製方式實現 * * @param src * @return * @throws
Time of Update: 2018-12-04
有兩種方法,一種是對登陸的獲得的變數進行特殊字元判斷一種是在登陸的時候使用PreparedStatement進行查詢,可以有效方式SQL注入 第一種方法SqlString.javapackage com.test.util;public class SqlString { public static boolean sql_inj(String str) { String inj_str = "':and:exec:insert:select:delete:update:count:*
Time of Update: 2018-12-04
單例模式是一種常見的設計模式,在《Java與模式》一書中,閻宏博士對單例模式做了全面的總結。單例模式分三種:懶漢式單例、餓漢式單例、登記式單例三種。單例模式有一下特點:1、單例類只能有一個執行個體。2、單例類必須自己建立自己的唯一執行個體。3、單例類必須給所有其他對象提供這一執行個體。說明:一下的代碼來自閻宏博士的《Java與模式》一書,其中對一些類的寫法做調整(符合Java1.5的習慣),另外還加了測試方法。一、懶漢式單例在類被載入的時候,唯一執行個體已經被建立。這個設計模式在Java中容易
Time of Update: 2018-12-04
JAVA開發人員常用線上文檔文檔名稱 版本J2SE API Docs1.3.1 1.4.2 1.5JDK SDK Docs1.3.1 1.4.2 1.5The J2EE 1.4 Tutorial1.4The JavaTM TutorialJavaTM Tutorial(英文)Struts1.2.4Tomcat5.1Spring1.1中文版Hibernate Hibernate API3.0.4(中文) 3.0.4(英文) 3.0.4(英文)JSF入門(繁體)