Time of Update: 2017-01-19
protected 來談談protected存取權限問題。看下面樣本1:Test.javaclass MyObject {} public class Test { public static void main(String[] args) { MyObject obj = new MyObject(); obj.clone(); // Compile error. }}此時出現上文提到的錯誤:The method clone from the type Object is
Time of Update: 2017-01-19
ObjectMapper類是Jackson庫的主要類。它提供一些功能將轉換成Java對象匹配JSON結構,反之亦然。它使用JsonParser和JsonGenerator的執行個體實現JSON實際的讀/寫。類聲明以下是org.codehaus.jackson.map.ObjectMapper類的聲明:public class ObjectMapper extends ObjectCodec implements Versioned嵌套類 S.N. 類 &
Time of Update: 2017-01-19
先扯再說最近一直在研究某個國產開源的MySQL資料庫中介軟體,拉下其最新版的代碼到eclipse後,啟動起來,然後做各種測試和代碼追蹤;用完想要關閉它時,拉出它的STOP類想要運行時,發現這個類裡赫然唯寫以下幾行代碼,於是我感覺瞬間受到了很多傷害。 public static void main(String[] args) { System.out.println(new Date() + ",server shutdown!");
Time of Update: 2017-01-19
Jackson對象序列化這裡將介紹將Java對象序列化到一個JSON檔案,然後再讀取JSON檔案擷取轉換為對象。在這個例子中,建立了Student類。建立將有學生對象以JSON表示在一個student.json檔案。建立一個名為JacksonTester在Java類檔案在 C:\>Jackson_WORKSPACE.檔案: JacksonTester.javaimport java.io.File;import java.io.IOException;import
Time of Update: 2017-01-19
資料繫結API用於JSON轉換和使用屬性訪問或使用註解POJO(普通Java對象)。以下是它的兩個類型。簡單資料繫結 - 轉換JSON,從Java Maps, Lists, Strings, Numbers, Booleans 和 null 對象。完整資料繫結 - 轉換JSON到任何JAVA類型。我們將在下一章分別綁定。ObjectMapper讀/寫JSON兩種類型的資料繫結。資料繫結是最方便的方式是類似XML的JAXB解析器。簡單的資料繫結簡單的資料繫結是指JSON映射到Java核心資料類型。
Time of Update: 2017-01-19
Jackson第一個程式在進入學習jackson庫的細節之前,讓我們來看看應用程式操作功能。在這個例子中,我們建立一個Student類。將建立一個JSON字串學生的詳細資料,並將其還原序列化到學生的對象,然後將其序列化到JSON字串。建立一個名為JacksonTester在Java類檔案 C:\>Jackson_WORKSPACE.檔案: JacksonTester.javaimport java.io.IOException;import
Time of Update: 2017-01-19
流式API讀取和寫入JSON內容離散事件。 JsonParser讀取資料,而JsonGenerator寫入資料。它是三者中最有效方法,是最低開銷和最快的讀/寫操作。它類似於XML的Stax解析器。在本文中,我們將展示的使用Jackson的流式API
Time of Update: 2017-01-19
一,描寫敘述 在多線程下編程的時候。大家可能會遇到一種需求,就是我想在我開啟的線程都結束時,同一時候擷取每一個線程中返回的資料然後再做統一處理,在這種需求下,Future與Callable的組合就派上了非常大的用場。也有人會說,我能夠使用同步來完畢這個需求啊,普通情況下確實能夠。可是在一種特殊情況下就不行了:
Time of Update: 2017-01-19
Strut2判斷是否是AJAX調用1. AJAX與傳統Form表單實際上,兩者一般都是通過HTTP的POST請求。區別是瀏覽器提交Form表單後,期望伺服器返回一個完整的HTML頁面。而AJAX調用是由XMLHttpRequest對象(不同瀏覽器可能不一樣)發出,瀏覽器期望伺服器返回HTML片段即可,具體是JSON、XML等都沒有要求。返回到瀏覽器後如何使用,也是由JS指令碼自己決定的。 2.
Time of Update: 2017-01-19
下面代碼是利用Java mail包封裝了一個發送郵件的類import java.io.File;import java.util.ArrayList;import java.util.Date;import java.util.List;import java.util.Properties;import javax.activation.DataHandler;import javax.activation.FileDataSource;import
Time of Update: 2017-01-19
Struts2的結構1.為什麼要使用架構?(1)架構自動完成了很多瑣屑的任務對於Struts2來說,它協助我們方便地完成了資料類型轉換、資料驗證、國際化等等Web開發中常見的任務。還有Spring中大量使用的Template模式,都是在讓我們的開發過程更加自動化、智能化。使用架構就是避免重新發明輪子,重新複製這些模板代碼。架構讓我們將精力更多地放在更進階別的問題上,而不是常見工作流程和基礎任務上。(2)使用架構就是優雅地繼承了架構背後的架構架構背後的架構通常定義了一系列的工作流程,我們要做的就是
Time of Update: 2017-01-19
一、事件處理其實,由事件處理這個名字自然就想到MFC中的訊息響應機制,就我的體會,它們應該算是南桔北枳的情形吧,我懷疑Java中的事件處理這個"新瓶"應是裝的MFC中的訊息響應這個"舊酒"。 所謂的"事件"即如鍵盤按鍵、滑鼠點擊等這類由動作或什麼導致某個狀態改變並需要對這個改變作相應響應的這類改變。我們可以將Java中的事件分為按鈕、滑鼠、鍵盤、視窗、其它事件這幾大類。 事件處理模型 1.
Time of Update: 2017-01-19
本文介紹了計算Java對象佔用了多少空間的方法,分享給大家供大家參考,具體內容如下一、對象頭對象的頭部至少有兩個WORD,如果是數組的話,那麼三個WORD,內容如下: 1、對象的HashCode,鎖資訊等 2、到物件類型資料的指標 3、數組的長度(如果是數組的話)二、規則首先,任何對象都是8位元組對齊,屬性按照[long,double]、[int,float]、[char,short]、[byte,boolean]、reference的順序存放,舉個例子:public class
Time of Update: 2017-01-19
Pascal's Triangle Given numRows, generate the first numRows of Pascal's triangle.For example, given numRows = 5, Return[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ]這道題比較簡單, 楊輝三角, 可以用這一列的元素等於它頭頂兩元素的和來求.數學紮實的人會看出, 其實每一列都是數學裡的排列組合, 第4行, 可以用 C30
Time of Update: 2017-01-19
在項目中,我們需要做些類似頭像上傳,圖片裁剪的功能,ok看下面文章!需要外掛程式:jQuery Jcrop 後端代碼:package org.csg.upload; import java.awt.Rectangle;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import
Time of Update: 2017-01-19
wait()和notify()是直接隸屬於Object類,也就是說,所有對象都擁有這一對方法。初看起來這十分 不可思議,但是實際上卻是很自然的,因為這一對方法阻塞時要釋放佔用的鎖,而鎖是任何對象都具有的,調用任意對象的 wait() 方法導致線程阻塞,並且該對象上的鎖被釋放。而調用任意對象的notify()方法則導致因調用該對象的wait() 方法而阻塞的線程中隨機播放的一個解除阻塞(但要等到獲得鎖後才真正可執行)。其次,wait()和notify()可在任何位置調用,但是這一對方法卻必須在
Time of Update: 2017-01-19
又遇到了回呼函數,這次打算寫下來分享一下。所謂回呼函數,或者在物件導向語言裡叫回調方法,簡單點講,就是回頭在某個時間(事件發生)被調用的函數。再詳細點:就是一個函數A,作為參數,傳入了另一個函數B,然後被B在某個時間調用。這裡可以有疑問了,既然是一個函數調用另一個函數,可以在函數體裡面調用啊,為什麼還要把函數作為參數傳到另一個函數裡被調用?何況還有一些語言(比如java)不支援把函數作為參數。對的,確實可以在函數體裡調用另一個函數,功能上好像是沒差別的,但是這裡有一個問題,就是你要調用的
Time of Update: 2017-01-19
要使用JsApi進行微信支付,首先要從微信獲得一個prepay_id,然後通過調用微信的jsapi完成支付,JS API的返回結果get_brand_wcpay_request:ok僅在使用者成功完成支付時返回。由於前端互動複雜,get_brand_wcpay_request:cancel或者get_brand_wcpay_request:fail可以統一處理為使用者遇到錯誤或者主動放棄,不必細化區分。範例程式碼如下:function onBridgeReady(){
Time of Update: 2017-01-19
採用Nagao演算法統計各個子字串的頻次,然後基於這些頻次統計每個字串的詞頻、左右鄰個數、左右熵、互動資訊(內部凝聚度)。名詞解釋: Nagao演算法:一種快速的統計文本裡所有子字串頻次的演算法。詳細演算法可見http://www.doc88.com/p-664123446503.html 詞頻:該字串在文檔中出現的次數。出現次數越多越重要。 左右鄰個數:文檔中該字串的左邊和右邊出現的不同的字的個數。左右鄰越多,說明字串成詞機率越高。
Time of Update: 2017-01-19
概述最近學習python,發現python是支援多繼承的,這讓我想起Java是通過內部類實現的這套機制。這篇文章不是講如何通過內部類實現多繼承,而是總結一下內部類的類型和使用方法。Java內部類分為: 非靜態內部類 靜態內部類 局部內部類 匿名內部類內部類在Android源碼中被大量的使用,先介紹一下這四種內部類的共同點: