Time of Update: 2017-01-18
使用Java語言編寫應用程式最大的優點在於“一次編譯,處處運行”,然而這並不是說所有的Java程式都具有跨平台的特性,事實上,相當一部分的Java程式是不能在別的作業系統上正確啟動並執行,那麼如何才能編寫一個真正的跨平台的Java程式呢?下面是在編寫跨平台的Java程式是需要注意的一些事情: 1.編寫Java跨平台應用程式時,你可以選擇JDK1.0,1.1,1.2或支援它們的GUI開發工具如:Jbuilder,Visual Age for Java
Time of Update: 2017-01-18
在平時工作中,難免會遇到把 XML 作為資料存放區格式。面對目前種類繁多的解決方案,哪個最適合我們呢?在這篇文章中,我對這四種主流方案做一個不完全評測,僅僅針對遍曆 XML 這塊來測試,因為遍曆 XML 是工作中使用最多的(至少我認為)。 預 備 測試環境: AMD 毒龍1.4G OC 1.5G、256M DDR333、Windows2000 Server SP4、Sun JDK 1.4.1+Eclipse 2.1+Resin 2.1.8,在 Debug 模式下測試。
Time of Update: 2017-01-18
一、引子 我們去科技市場為自己的機器添加點奢侈的配件,很多DIYer都喜歡去找代理商,因為在代理商那裡拿到的東西不僅品質有保證,而且價格和售後服務上都會好很多。客戶通過代理商得到了自己想要的東西,而且還享受到了代理商額外的服務;而生產廠商通過代理商將自己的產品推廣出去,而且可以將一些銷售服務的任務交給代理商來完成(當然代理商要和廠商來共同分擔風險,分配利潤),這樣自己就可以花更多的心思在產品的設計和生產上了。
Time of Update: 2017-01-18
目前整個開發社區對AOP(Aspect Oriented Programing)推崇備至,也湧現出大量支援AOP的優秀Framework,--Spring, JAC, Jboss AOP 等等。AOP似乎一時之間成了潮流。Java初學者不禁要發出感慨,OOP還沒有學通呢,又來AOP。本文不是要在理論上具體闡述何為AOP, 為何要進行AOP . 要詳細瞭解學習AOP可以到它老家http://aosd.net去瞧瞧。這裡只是意圖通過一個簡單的例子向初學者展示一下如何來進行AOP. 為了簡單起見,
Time of Update: 2017-01-18
運行時多態性是物件導向程式設計代碼重用的一個最強大機制,動態性的概念也可以被說成“一個介面,多個方法”。Java實現運行時多態性的基礎是動態方法調度,它是一種在運行時而不是在編譯期調用重載方法的機制,下面就繼承和介面實現兩方面談談java運行時多態性的實現。 一、通過繼承中超類對象引用變數引用子類對象來實現 舉例說明: //定義超類superA class superA { int i = 100; void fun() {
Time of Update: 2017-01-18
寫Java程式時經常碰到要讀如txt或寫入txt檔案的情況,但是由於要定義好多變數,經常記不住,每次都要查,特此整理一下,簡單易用,方便好懂!package edu.thu.keyword.test;import java.io.File;import java.io.InputStreamReader;import java.io.BufferedReader;import java.io.BufferedWriter;import
Time of Update: 2017-01-18
在Java 5.0之前啟動一個任務是通過調用Thread類的start()方法來實現的,任務的提於交和執行是同時進行的,如果你想對任務的執行進行調度或是控制 同時執行的線程數量就需要額外編寫代碼來完成。5.0裡提供了一個新的任務執行架構使你可以輕鬆地調度和控制任務的執行,並且可以建立一個類似資料庫連接 池的線程池來執行任務。這個架構主要有三個介面和其相應的具體類組成。這三個介面是Executor,
Time of Update: 2017-01-18
構造http headerprivate static final String URL = "url";private static final String APP_KEY = "key";private static final String SECRET_KEY = "secret";/** * 構造Basic Auth認證頭資訊 * * @return */ private String getHeader() { String auth = APP_KEY
Time of Update: 2017-01-18
一)Hibernate意義 在一個真正的OOAD中,我們的設計首先是做UML建摸,最終將一個系統涉及所有對象(這個東西不是東西那麼簡單)用類圖來體現一個完整的設計,我們最後可能得到這幾種類:控制商務邏輯的類,儲存業務資料的類module(bean類),輔助類或者更多(具體問題具體分析,但是將業務所需資料歸結為一個類module更適合分層)。到資料庫低層實現的時候,
Time of Update: 2017-01-18
簡單介紹一下Java關於xml的API,這樣大家看到了縮寫就知道是幹什麼的了。水平有限,多多包涵。 1、JAXP(Java API for XML Parsing) 2、JAXB(Java API for XML Binding) 3、JAXM(Java API for XML Messaging) 4、JAX-RPC(Java API for XML-RPC) 1、JAXP定義了在Java中使用DOM, SAX,
Time of Update: 2017-01-18
Tomcat 啟動出現資訊如下:資訊: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path:XXXX出現原因分析:Tomcat建議使用apache的apr,來更好的運行Tomcat;apache的apr 的介紹APR(Apache portable Run-time
Time of Update: 2017-01-18
前端時間小忙了一陣,微信公眾號的開發,從零開始看文檔,踩了不少坑,也算是熬過來了,最近考慮做一些總結,方便以後再開發的時候回顧,也給正在做相關項目的同學做個參考。其實做過一遍之後會發現也不難,大致思路:使用者訊息和開發人員需要的事件推送都會通過微信方伺服器發起一個請求,轉寄到你在公眾平台配置的伺服器url地址,微信方將帶上signature,timestamp,nonce,echostr四個參數,我們自己伺服器通過拼接公眾平台配置的token,以及傳上來的timestamp,nonce進行SHA
Time of Update: 2017-01-18
有許多java初學者對於MyBatis攔截器Inteceptor不是很瞭解,在這裡我來為各位整理下篇關於java中MyBatis攔截器Inteceptor詳解,本文主要分析MyBatis的外掛程式機制,實際就是Java動態代理實現的責任鏈模式實現。根據官方文檔。Mybatis只允許攔截以下方法,這個決定寫攔截器註解簽名參數。 代碼如下 Executor (update, query, flushStatements, commit, rollback,
Time of Update: 2017-01-18
對於一個帳號在同一時間只能一個人登入,可以通過下面的方法實現:1 .在使用者登入時,把使用者添加到一個ArrayList中2 .再次登入時查看ArrayList中有沒有該使用者,如果ArrayList中已經存在該使用者,則阻止其登入3 .當使用者退出時,需要從該ArrayList中刪除該使用者,這又分為三種情況① 使用登出按鈕正常退出② 點擊瀏覽器關閉按鈕或者用Alt+F4退出,可以用JavaScript捕捉該頁面關閉事件,執行一段Java方法刪除ArrayList中的使用者③
Time of Update: 2017-01-18
在http請求中,有Header和Body之分,讀取header使用request.getHeader("...");讀取Body使用request.getReader(),但getReader擷取的是BufferedReader,需要把它轉換成字串,下面是轉換的方法。public class TestController { @RequestMapping("/a") protected void doPost(HttpServletRequest request,
Time of Update: 2017-01-18
(1)對於public修飾符,它具有最大的存取權限,可以訪問任何一個在CLASSPATH下的類、介面、異常等。它往往用於對外的情況,也就是對象或類對外的一種介面的形式。(2)對於protected修飾符,它主要的作用就是用來保護子類的。它的含義在於子類可以用它修飾的成員,其他的不可以,它相當於傳遞給子類的一種繼承的東西。(3)對於default來說,有點的時候也成為friendly(友員),它是針對本包訪問而設計的,任何處於本包下的類、介面、異常等,都可以相互訪問,即使是父類沒有用protect
Time of Update: 2017-01-18
如下所示:public static String getConfig(String key) { Properties pros = new Properties(); String value = ""; try { pros.load(new InputStreamReader(Object.class.getResourceAsStream("/properties.properties"), "UTF-8")); value = pros.get(
Time of Update: 2017-01-18
1.關於java.lang.string.splitxxx.split()方法可以將一個字串分割為子字串,然後將結果作為字串數組返回。2.字串轉字元數組String str =" aa.png,a2.png,a3.png";String[] arrayStr =new String[]{};arrayStr = str.split(",");3.字元數組轉listList list = java.util.Arrays.asList(arrayStr);4.list轉化為字元數組String[]
Time of Update: 2017-01-18
用法一:常量在JDK1.5之前,我們定義常量都是:publicstaticfianl....。現在好了,有了枚舉,可以把相關的常量分組到一個枚舉類型裡,而且枚舉提供了比常量更多的方法。Java代碼public enum Color {RED, GREEN, BLANK, YELLOW}用法二:switchJDK1.6之前的switch語句只支援int,char,enum類型,使用枚舉,能讓我們的代碼可讀性更強。Java代碼enum Signal {GREEN, YELLOW,
Time of Update: 2017-01-18
這次提到的Java反射涉及的代碼比較多。因為工作中經常用到反射,對代碼做了很多抽象以及過濾器。雖然代碼量很多,但是簡單易用,過濾外掛程式也易修改。下面介紹下工作中哪些地方比較容易用到反射。比如外掛程式或者過濾器,如果抽象的子類比較少,配置成XML等結構也是可以達到同樣的效果。如果希望靈活一些,添加了外掛程式或者過濾器代碼子類後希望可以直接使用。可能反射會比較好點,通過掃描所有class或者jar檔案,得到所有繼承的子類。如果每次調用都掃描所有的檔案會比較影響效能。所以在實現裡面加入反射緩衝,對所