用java實現簡單的多線程下載

今天用java寫了一個簡單的HTTP多線程下載程式,主要用了HTTP協議和RandomAccessFile類來實現。很容易再加上斷點續傳功能,這樣就可以實作類別似“小小網路螞蟻”的功能了。public class DownloadNetTest {    private File fileOut;    private URL url;    private long fileLength=0;    //初始化線程數    private int ThreadNum=5;    public

兩個Java甘特圖控制項對比:JGantt 和 AnyGantt

本文轉載自:http://www.evget.com/zh-CN/Info/catalog/18424.htmlJGantt 由擁有30多年甘特圖控制項開發經驗的NETRONIC公司開發,純Java編寫,功能全面、效能穩定、使用方便。AnyGantt 可以高度自訂的甘特圖控制項,他最大的優點是體積小、速度快、效果好,非常適合網路甘特圖程式的開發。JGantt 和 AnyGantt 功能詳細對比功能JGANTTAnyGantt支援B/S模式√√支援開發語言類型JAVAASP.NET、

[轉載]淺談JAVA程式破解

作者:舵手(GalaxyPilot)申明:如轉載請保證文章的完整性以及出處    最近對JAVA程式的破解比較感興趣,拿幾個行業軟體練了一下手,略有心得,拿出來與菜鳥分享!注意只是一點心得,本文並不涉及具體軟體的破解。初學破解,失誤之處在所難免,敬請高手賜教!    直接進入正題,對JAVA的破可從下面幾方面入手:一、反編譯    工具很多,建意用GUI工具,命令列下的JAD很容易因為不能反編譯某一個方法或某一行代碼而終止整個檔案的反編譯,但GUI的工具卻能搞定,雖然反編譯後部分代碼較難看懂,但

Java Web 服務在未來一年內的發展

     2006 年中,Web 服務領域將發生翻天覆地的變化。對於 Java 開發人員而言,這些變化將包括新 Web 服務架構和構建於 Web 服務之上的新功能層的出現。在 Dennis Sosnoski 的“Java Web 服務”系列的第 1 部分,他討論了即將發生的變化,並為讀者構想了基本的概況。  2006 年將是 Web 服務(特別是 Java Web 服務)發展標誌性的一年。新的第三代架構即將撩開面紗,這些架構將為 doc/lit SOAP 提供更好的支援,並能帶來潛在的效能提高。

JAVA堆與棧

棧與堆都是Java用來在Ram中存放資料的地方。與C++不同,Java自動管理棧和堆,程式員不能直接地設定棧或堆。 Java的堆是一個運行時資料區,類的(對象從中分配空間。這些對象通過new、newarray、anewarray和multianewarray等指令建立,它們不需要程式碼來顯式的釋放。堆是由記憶體回收來負責的,堆的優勢是可以動態地分配記憶體大小,生存期也不必事先告訴編譯器,因為它是在運行時動態分配記憶體的,Java的垃圾收集器會自動收走這些不再使用的資料。但缺點是,由於要在運行時動

Java手機遊戲編程之MIDP圖形設計篇

一. MIDLET圖形  1、MIDlet 圖形簡述   移動資訊裝置描述(Mobile Information Device Profile ,MIDP)定義了一套應用編程介面(API),用於運行在MIDP容器中的MIDlet應用程式。這套API本身是建立在有限串連裝置配置(Connected Limited Device Configuration ,CLDC)應用編程介面的基礎上的。MIDP使用者介面應用編程介面類並不是基於Java抽象視窗工具包(Abstract Window

Java基礎:三步學會Java Socket編程

     第一步 充分理解Socket    1.什麼是socket    所謂socket通常也稱作"通訊端",用於描述IP地址和連接埠,是一個通訊鏈的控制代碼。應用程式通常通過"通訊端"向網路發出請求或者應答網路請求。   

Java中的同步方法和原理

Java的記憶體模型中Thread會附有自己的堆棧,寄存器,必要時需要和主存即heap之間同步。 可以使用Synchornized關鍵字和Concurrent包中的Lock可以保證線程互斥和可見度。 互斥性體現在類鎖或者對象鎖上,每個對象自身都包含一個監視器,該監視器是一個每次只能被一個線程所擷取進入的臨界區,可以通過wait和notify來退出和准入臨界區。可以看出這是一個生產者-消費者的模型。而Concurrent包中的Lock為了能夠獲得更好的效能和更好的擴充性,以及不依賴於關鍵字的可讀代

從JVM Instructions看Java

 我們都知道Java程式是運行在JVM裡面的一段一段位元組碼,JVM需要做的就是把這些位元組碼轉換成機器語言,使得Java程式能正確的運行在電腦上,說的更底層一點就是正確分配記憶體,執行CPU計算並且釋放記憶體。所以任何一個程式如果能做到以下幾件事:讀入Java

關於Java多線程的思考

儘管很少有Java開發人員能夠忽略多線程編程,且Java平台類庫支援它,甚至於更少的開發人員能有時間去深入學習線程。相反,我們只是泛泛地學習線程,如果需要的話,會向我們的工具箱中添加新的技巧和技術。通過這種方法你可能會構建且運行好的應用程式,但你還能做得更好。理解Java編譯器和JVM的線程特性,可以協助你編寫更高效,效能更佳的Java代碼。    在5

Java未來發展方向

本文摘自一位美國開發人員的部落格,作者Nirav觀察到Java世界一些有趣的變化,單一的Java開發已經無法滿足當前軟體複雜的需求,越來越多基於JVM的語言開發被應用到軟體項目中,Java平台上的多語言混合編程正成為主流。在09年的JavaOne大會期間,曾報道過Java領域的幾大趨勢,多語言、混合編程的發展便是其中的重點。基於JVM的語言正在開始流行,這為Java平台上多語言混合編程的發展提供了技術基礎;在實際應用中,每種語言都可以針對自己擅長的方面更好的解決問題;日趨複雜的軟體需求也使得混合

Java中如何使用Volatile變數

原文出處:http://www.ibm.com/developerworks/cn/java/j-jtp06197.html簡介: Java 語言套件含兩種內在的同步機制:同步塊(或方法)和 volatile 變數。這兩種機制的提出都是為了實現代碼線程的安全性。其中 Volatile 變數的同步性較差(但有時它更簡單並且開銷更低),而且其使用也更容易出錯。在這期的 Java 理論與實踐 中,Brian Goetz 將介紹幾種正確使用 volatile 變數的模式,並針對其適用性限制提出一些建議。

Java NIO雜談

早期的I/O通訊使用Stream編程實現,流I/O可用於內外部通訊但需要把對象轉換成byte。NIO使用了塊級I/O,其目的是為了讓 Java 程式可以實現高速 I/O 而無需編寫自訂的機器碼。NIO 將最耗時的 I/O 操作(即填充和提取緩衝區)轉移回作業系統,因而可以極大地提高速度。1)

Java對象序列化

  在網上看了很多有關序列化的文章,我自己也寫了兩篇,現在感覺這些文章都沒有很好的把序列化說清楚(包括我自己在內),所以在此我將總結前人以及自己的經驗,用更淺顯易懂的語言來描述該機制,當然,仍然會有不好的地方,希望你看後可以指出,作為一名程式員應該具有不斷探索的精神和強烈的求知慾望!序列化概述:      簡單來說序列化就是一種用來處理物件流程的機制,所謂物件流程也就是將對象的內容進行流化,流的概念這裡不用多說(就是I/O),我們可以對流化後的對象進行讀寫操作,也可將流化後的對象傳輸於網路之間(

在Debian 上安裝Java環境

blackdown 的jdk 總是比sun 慢了一拍,針對debian封裝更新太慢,非官方的java-package的產生的.deb不盡人意,一些常用的命令沒有加入到path,本文主要參考debian java faq1、擷取jdk.從sun的官方網站下載最新的jdk 1.5 update2, http://java.sun.com。注意,要下載解壓版本。# su root切換到 超級使用者(也可以用sudo 來取得超級使用者權限),進入下載目錄# chmod a+x jdk-1_5_0_02-

keytool產生認證 查看認證資訊 ,以及java操作的簡單用例

  首先用keytool產生認證1 產生密鑰D:/>keytool -genkey -alias wenger -keysize 1024 -keypass abcdef -keystore myKeystore -storepass abcdef -dname "CN=chen sr, OU=tanglab, O=lab, L=gz, ST=gd, C=cn"2 匯出密鑰,用認證的形式儲存D:/>keytool -export -alias wenger -file mycert.

Hibernate 映射類型與Java 類型對照

映射類型 java 類 標準 sql 類型integerint or Integer INTEGERlonglong or java.lang.Long BIGINTshort short or java.lang.Short SMALLINTfloat float or java.lang.Float FLOATdouble double or

SSL雙向認證java實現

本文通過類比情境,介紹SSL雙向認證的java實現預設的情況下,我認為讀者已經對SSL原理有一定的瞭解,所以文章中對SSL的原理,不做詳細的介紹。如果有這個需要,那麼通過GOOGLE,可以搜尋到很多這樣的文章。類比情境:Server端和Client端通訊,需要進行授權和身份的驗證,即Client只能接受Server的訊息,Server只能接受Client的訊息。實現技術:JSSE(Java Security Socket

java裡堆和棧

Java的堆是一個運行時資料區,類的(對象從中分配空間。這些對象通過new、newarray、anewarray和multianewarray等 指令建立,它們不需要程式碼來顯式的釋放。堆是由記憶體回收來負責的,堆的優勢是可以動態地分配記憶體大小,生存期也不必事先告訴編譯器,因為它是在運行時 動態分配記憶體的,Java的垃圾收集器會自動收走這些不再使用的資料。但缺點是,由於要在運行時動態分配記憶體,存取速度較慢。

黑馬程式員:java環境變數

 -------android培訓、java培訓、期待與您交流!

總頁數: 4058 1 .... 474 475 476 477 478 .... 4058 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.