package com.loyom.mp.handle; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class ImageHandle { public BufferedImage marge(S
在做很多高并發應用的時候,單線程的瓶頸已經滿足不了我們的需求,此時使用多線程來提高處理速度已經是比較常規的方案了。在使用多線程的時候,我們可以使用線程池來管理我們的線程,至于使用線程池的優點就不多說了。 對于多線程的線程安全處理,這個也非常重要,有些同學還是要多補補課。 Java線程池說起來也簡單,簡單說下繼承關系: ThreadPoolExecutor extends AbstractExecu
CountDownLatch類是一個同步計數器,構造時傳入int參數,該參數就是計數器的初始值,每調用一次countDown()方法,計數器減1,計數器大于0 時,await()方法會阻塞程序繼續執行 CountDownLatch如其所寫,是一個倒計數的鎖存器,當計數減至0時觸發特定的事件。利用這種特性,可以讓主線程等待子線程的結束。下面以一個模擬運動員比賽的例子加以說明。 import java
Java實現Grep grep.java import java.io.*; public class grep{ public static void main(String [] args) throws IOException{ if(args.length<1){ System.out.println("zu wenige Parameter"); throw new IllegalArg
這種形式的new語句聲明一個新的匿名類,它對一個給定的類進行擴展,或者實現一個給定的接口。它還創建那個類的一個新實例,并把它作為語句的結果而返回。要擴展的類和要實現的接口是new語句的操作數,后跟匿名類的主體。 如果匿名類對另一個類進行擴展,它的主體可以訪問類的成員、覆蓋它的方法等等,這和其他任何標準的類都是一樣的。如果匿名類實現了一個接口,它的主體必須實現接口的方法。
Java的內存管理就是對象的分配和釋放問題。(兩部分) 分配 :內存的分配是由程序完成的,程序員需要通過關鍵字new 為每個對象申請內存空間 (基本類型除外),所有的對象都在堆 (Heap)中分配空間。 釋放 :對象的釋放是由垃圾回收機制決定和執行的,這樣做確實簡化了程序員的工作。但同時,它也加重了JVM的工作。因為,GC為了能夠正確釋放對象,GC必須監控每一個對象的運行狀態,包括對象的申請、引用、被引用、賦值等,GC都需要進行監控。
學了幾天flex,想把flex與java進行交互,在網上找了一些資料,弄了一天多時間終于搞定了。Flex與java交互有三種方法,我較為習慣先建web程序再加入flex。我的開發環境室MyEclipse6.0.1(含Flex插件)+Tomcat+Blazeds+joto(這里只是用來測試,感覺這個有點過時了,可以使用LCDS)。Blazeds與joto在附件中。
某些數據交換,我們需要通過ftp來完成。sun.net.ftp.FtpClient可以幫助我們進行一些簡單的ftp客戶端功能:下載、上傳文件。但如遇到創建目錄之類的就無能為力了,我們只好利用第三方源碼,比如com.enterprisedt.net.ftp.FTPClient
Java Excel是一開放源碼項目,通過它Java開發人員可以讀取Excel文件的內容、創建新的Excel文件、更新已經存在的Excel文件。使用該API非Windows操作系統也可以通過純Java應用來處理Excel數據表。因為是使用Java編寫的,所以我們在Web應用中可以通過JSP、Servlet來調用API實現對Excel數據表的訪問。
今天作了一個JNI的實例,現將方法列出,以便以后的學習使用: 首先創建Java項目,項目名隨意,包名、類名隨意,本實例中用的為dllTest包和CallDll.java類.
自2013年6月Java EE 7發布以 來,Java開發團隊在這段時間內一直在規劃和搜集下一個大版本Java EE 8帶來的新功能。 近日,Java EE 8中的JSR366部分已經通過JCP投票通過,正如大家所期待的Java EE 8包括HTTP2和HTML5支持、CDI/Bean托管的支持、云服務等,值得關注的特性如下:
Oracle業務智能企業版最令人感興趣的特性之一是OracleBIPresentationServer提供的SOAP接口。該接口提供了一些Web服務方法,可使用OracleJDeveloper10g等工具從業務流程和應用程序中調用它們。Oracle業務智能企業增強版10.1.3.3中的SOAP接口提供以下服務:XmlViewService—將報表結果作為XML格式的結果集返回,與MicrosoftXML結果集格式兼容。這是通過SOA公開OBI:EE內容的重要服務,而且還是一個狀態服務,可使用同一會話密鑰對其進行多次調用。SAWSessionService—管理OBI:EE表示服務(以前稱為SAW)Web服務會話。在使用其他服務前,應當調用這一服務,以創建可供其他服務使用的會話密鑰。SecurityService—允許在OBI:EEPresentationServer目錄中讀取和設置訪問控制列表(ACL)。
1.java.lang.nullpointerexception這個異常大家肯定都經常遇到,異常的解釋是"程序遇上了空指針",簡單地說就是調用了未經初始化的對象或者是不存在的對象,這個錯誤經常出現在創建圖片,調用數組這些操作中,比如圖片未經初始化,或者圖片創建時的路徑錯誤等等。對數組操作中出現空指針,很多情況下是一些剛開始學習編程的朋友常犯的錯誤,即把數組的初始化和數組元素的初始化混淆起來了。數組的初始化是對數組分配需要的空間,而初始化后的數組,其中的元素并沒有實例化,依然是空的,所以還需要對每個元素都進行初始化(如果要調用的話)2.java.lang.classnotfoundexception這個異常是很多原本在jb等開發環境中開發的程序員,把jb下的程序包放在wtk下編譯經常出現的問題,異常的解釋是"指定的類不存在",這里主要考慮一下類的名稱和路徑是否正確即可,如果是在jb下做的程序包,一般都是默認加上package的,所以轉到wtk下后要注意把package的路徑加上。3.java.lang.arithmeticexception這個異常的解釋是"數學運算異常",比如程序中出現了除以零這樣的運算就會出這樣的異常,對這種異常,大家就要好好檢查一下自己程序中涉及到數學運算的地方,公式是不是有不妥了。4.java.lang.arrayindexoutofboundsexception這個異常相信很多朋友也經常遇到過,異常的解釋是"數組下標越界",現在程序中大多都有對數組的操作,因此在調用數組的時候一定要認真檢查,看自己調用的下標是不是超出了數組的范圍,一般來說,顯示(即直接用常數當下標)調用不太容易出這樣的錯,但隱式(即用變量表示下標)調用就經常出錯了,還有一種情況,是程序中定義的數組的長度是通過某些特定方法決定的,不是事先聲明的,這個時候,最好先查看一下數組的length,以免出現這個異常。5.java.lang.illegalargumentexception這個異常的解釋是"方法的參數錯誤",很多j2me的類庫中的方法在一些情況下都會引發這樣的錯誤,比如音量調節方法中的音量參數如果寫成負數就會出現這個異常,再比如g.setcolor(intred,intgreen,intblue)這個方法中的三個值,如果有超過255的也會出現這個異常,因此一旦發現這個異常,我們要做的,就是趕緊去檢查一下方法調用中的參數傳遞是不是出現了錯誤。
Java最初是在瀏覽器和客戶端機器中粉墨登場的。當時,很多人質疑它是否適合做服務器端的開發。現在,隨著對Java2平臺企業版(J2EE)第三方支持的增多,Java被廣泛接納為開發企業級服務器端解決方案的首選平臺之一。
按照編譯原理的觀點,程序運行時的內存分配有三種策略,分別是靜態的,棧式的,和堆式的. 靜態存儲分配是指在編譯時就能確定每個數據目標在運行時刻的存儲空間需求,因而在編譯時就可以給他們分配固定的內存空間.這種分配策略要求程序代碼中不允許有可變數據結構(比如可變數組)的存在,也不允許有嵌套或者遞歸的結構出現,因為它們都會導致編譯程序無法計算準確的存儲空間需求.
在Android平臺上,有很多基于SQLite的ORM框架,例如 GreenDAO , OrmLite , SugarORM , LitePal 等等,對于寫習慣了SQL語句的小伙伴們來說,看到SQLite這樣的數據庫肯定是倍感親切了,有了這些框架更是如虎添翼。但是,在我們日常的開發中,數據量并不會特別的大,表的結構也不會特別復雜,用SQL語句有種大(過)材(于)小(繁)用(瑣)的感覺,我們需要做的事情可能僅僅是把用戶生成的數據對象快速的緩存起來。這個時候NoSQL就派上了用場,以Mongodb,Redis為代表的NoSQL都引入了一些相對現代化的方式存儲數據,比如支持Json,Document的概念,流式api,數據變更通知等等,極大程度的降低了我們學習的成本提高了我們的開發效率。而Realm作為一款移動端的NoSQL框架,官方定位就是替代SQLite等關系型數據庫。
重點介紹HashMap。首先介紹一下什么是Map。在數組中我們是通過數組下標來對其內容索引的,而在Map中我們通過對象來對對象進行索引,用來索引的對象叫做key,其對應的對象叫做value。在下文中會有例子具體說明。<br> 再來看看HashMap和TreeMap有什么區別。HashMap通過hashcode對其內容進行快速查找,而TreeMap中所有的元素都保持著某種固定的順序,如果你需要得到一個有序的結果你就應該使用TreeMap(HashMap中元素的排列順序是不固定的)。
最近的機器內存又爆滿了,除了新增機器內存外,還應該好好review一下我們的代碼,有很多代碼編寫過于隨意化,這些不好的習慣或對程序語言的不了解是應該好好打壓打壓了。下面是參考網絡資源總結的一些在Java編程中盡可能要做到的一些地方。
java 抓取網站數據