伊伊人成亚洲综合人网7777,亚洲中文无码亚洲人成影院,久久久久亚洲精品天堂久久久久久 http://m.tkk7.com/mrcold/Collect By Finding All The Way ......zh-cnSun, 11 May 2025 06:04:04 GMTSun, 11 May 2025 06:04:04 GMT60《編程珠璣》讀書筆記——代碼實現http://m.tkk7.com/mrcold/archive/2010/09/05/331085.html胖胖泡泡胖胖泡泡Sun, 05 Sep 2010 08:08:00 GMThttp://m.tkk7.com/mrcold/archive/2010/09/05/331085.htmlhttp://m.tkk7.com/mrcold/comments/331085.htmlhttp://m.tkk7.com/mrcold/archive/2010/09/05/331085.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/331085.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/331085.html閱讀全文

胖胖泡泡 2010-09-05 16:08 發表評論
]]>
JFreeCharthttp://m.tkk7.com/mrcold/archive/2010/06/01/322421.html胖胖泡泡胖胖泡泡Tue, 01 Jun 2010 02:37:00 GMThttp://m.tkk7.com/mrcold/archive/2010/06/01/322421.htmlhttp://m.tkk7.com/mrcold/comments/322421.htmlhttp://m.tkk7.com/mrcold/archive/2010/06/01/322421.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/322421.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/322421.html
http://www.jfree.org/jfreechart/

JFreeChart 目前是最好的java圖形解決方案,基本能夠解決目前的圖形方面的需求,主要包括如下幾個方面:
     pie   charts   (2D   and   3D) :餅圖(平面和立體)
     bar   charts   (regular   and   stacked,   with   an   optional   3D   effect) :柱狀圖
     line   and   area   charts :曲線圖
     scatter   plots   and   bubble   charts
     time   series,   high/low/open/close   charts   and   candle   stick   charts :時序圖
     combination   charts :復合圖
     Pareto   charts
     Gantt   charts :甘特圖
     wind   plots,   meter   charts   and   symbol   charts
     wafer   map   charts
     ( 態圖表,餅圖(二維和三維)   ,   柱狀圖   ( 水平,垂直),線圖,點圖,時間變化圖,甘特圖,   股票行情圖,混和圖,   溫度計圖,   刻度圖等常用商用圖表)

胖胖泡泡 2010-06-01 10:37 發表評論
]]>
Struts1.x和2.X的一些區別http://m.tkk7.com/mrcold/archive/2010/06/01/322411.html胖胖泡泡胖胖泡泡Tue, 01 Jun 2010 01:39:00 GMThttp://m.tkk7.com/mrcold/archive/2010/06/01/322411.htmlhttp://m.tkk7.com/mrcold/comments/322411.htmlhttp://m.tkk7.com/mrcold/archive/2010/06/01/322411.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/322411.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/322411.htmlStruts 從1.1都升成2了,要記錄一下,學習起來會方便一些:

1. Struts2 與 Struts1 似乎沒什么血緣關系了,承自于 WebWork,直害 WebWork 不再推出新版本了,原先的 WebWork 使用者只需順其然,即是水道渠成;相反 Struts1 的開發經驗對于 Struts2 卻沒有太大的幫助。

2. Struts1 的核心控制器是 ActionServlet,而 Struts2 的核心控制器是 FilterDispatcher。Struts2 的業務 Action 會在運行時生成 Action 代理。

3. Struts1 的 Action 須繼承抽象 Action 類,侵入了 Servlet API;而 Struts2 的 Action 可以實現 ActionSupport,或者只要一個純凈的 POJO 來充當,完全與 Servlet 絕緣。也因此帶來測試性 Struts2 要比 Struts1 強,可把 Struts TestCase 扔到一旁去了。

4. Struts1 在運行時一個 Action 只會生成一個實例,而 Struts2 中的 Action 會應對每個請求生成新的實例,在線程安全性方面,Struts1 要多些考慮。

5. Struts1 依靠 ActionForm 來接受數據,它也是依賴于 Servlet API ,并非普通的 JavaBean,而 Struts2 可在 Action 屬性中獲取請求的屬性,當然也能封裝在一個獨立的 POJO 中。不過提醒一下,在 Struts1.3 中也可以用 POJO 來接受請求屬性,但使用起來有點煩瑣。

6. Struts2 使用了新的 OGNL 的表達式語言,可以訪問值棧,在對集合和索引屬性的支持上功能更強大。

7. Struts1 的配置文件只需 struts-config.xml;Struts2 的配置文件有 struts.xml 和 struts.properties。struts.properties 中有兩個 struts.devMode = fase 和 struts.configuration.xml.reload = true 很可愛,分別設置當前是開發還是生產模式,以及 struts.xml 改變后是否自動重新加載,免去了改配置手工重啟應用的必須步驟。

8. Struts2 Action 的 execute() 無參,返回的是一個字符串,不像 Struts1 Action 的 execute() 有一大串且不說,光是返回 ActionForward,就讓這個 Action 與 Struts1 脫不了干系;還是 Struts2 來得聰明,只返回個中性的 String,反正名字嗎,猛然間這個 Action 也成 POJO 了,復用性增強了,難怪專門有一書,名為《POJO In Action》。

9. Struts1 的視圖只支持 JSP,這也不怪它,只怨出身太早,那時就只有 JSP 一種表現層。相比,Struts2 更有艷福,能貼近于 FreeMarker、Velocity、XSLT、PDF 等視圖技術。

10. Struts2 提供了功能強大復雜的標簽庫,統一化為 "s" 前綴。并順應時代潮流地加入了 AJAX 的支持。還提供了更友好的驗證功能。


胖胖泡泡 2010-06-01 09:39 發表評論
]]>
寫文件的亂碼問題http://m.tkk7.com/mrcold/archive/2010/05/27/322052.html胖胖泡泡胖胖泡泡Thu, 27 May 2010 08:32:00 GMThttp://m.tkk7.com/mrcold/archive/2010/05/27/322052.htmlhttp://m.tkk7.com/mrcold/comments/322052.htmlhttp://m.tkk7.com/mrcold/archive/2010/05/27/322052.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/322052.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/322052.htmlFileOutputStream fileOutputStream = new FileOutputStream(file);    
        Writer writer 
= new OutputStreamWriter(fileOutputStream, "UTF8"); 
        writer.write(content);
        writer.close(); 
統一為UTF8編碼。

胖胖泡泡 2010-05-27 16:32 發表評論
]]>
使用HttpClient對Web Service調用http://m.tkk7.com/mrcold/archive/2010/05/27/322051.html胖胖泡泡胖胖泡泡Thu, 27 May 2010 08:30:00 GMThttp://m.tkk7.com/mrcold/archive/2010/05/27/322051.htmlhttp://m.tkk7.com/mrcold/comments/322051.htmlhttp://m.tkk7.com/mrcold/archive/2010/05/27/322051.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/322051.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/322051.html用到的jar包有:
    commons-codec-1.3.jar
    commons-httpclient-3.0.jar
    commons-logging-1.0.4.jar


具體流程大致這樣:

        
        String soapRequestData 
= "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
        
"<soap12:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap12=\"http://www.w3.org/2003/05/soap-envelope\">" +
          "<soap12:Body>" +
           
" <qqCheckOnline xmlns=\"http://WebXml.com.cn/\">" +
          "    <qqCode>349104641</qqCode>" +
         
"   </qqCheckOnline>" +
        
"  </soap12:Body>" +
        
"</soap12:Envelope>";
        
        System.out.println(soapRequestData);


    
//PostMethod postMethod = new PostMethod("http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl");
    
    PostMethod postMethod 
= new PostMethod("http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl");

   
// 然后把Soap請求數據添加到PostMethod中


    
byte[] b = soapRequestData.getBytes("utf-8");
    InputStream is 
= new ByteArrayInputStream(b,0,b.length);
    RequestEntity re 
= new InputStreamRequestEntity(is,b.length,"application/soap+xml; charset=utf-8");
    postMethod.setRequestEntity(re); 
    
    
//最后生成一個HttpClient對象,并發出postMethod請求

    HttpClient httpClient 
= new HttpClient();
    
int statusCode = httpClient.executeMethod(postMethod);
    String soapResponseData 
=  postMethod.getResponseBodyAsString();
        
        
    System.out.print(soapResponseData);



動態構造調用串的話如下實現:


    
private String tns;
    
private String methodName;
    
private String wsdlLocation;
    
private String soapResponseData;

private int invoke(Map<String, String> patameterMap) throws Exception {
        PostMethod postMethod 
= new PostMethod(wsdlLocation);
        String soapRequestData 
= buildRequestData(patameterMap);

        
byte[] bytes = soapRequestData.getBytes("utf-8");
        InputStream inputStream 
= new ByteArrayInputStream(bytes, 0,
                bytes.length);
        RequestEntity requestEntity 
= new InputStreamRequestEntity(inputStream,
                bytes.length, 
"application/soap+xml; charset=utf-8");
        postMethod.setRequestEntity(requestEntity);

        HttpClient httpClient 
= new HttpClient();
        
int statusCode = httpClient.executeMethod(postMethod);
        soapResponseData 
= postMethod.getResponseBodyAsString();
        
return statusCode;
    }


    
private String buildRequestData(Map<String, String> patameterMap) {
        StringBuffer soapRequestData 
= new StringBuffer();
        soapRequestData.append(
"<?xml version=\"1.0\" encoding=\"utf-8\"?>");
        soapRequestData
                .append(
"<soap12:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap12=\"http://www.w3.org/2003/05/soap-envelope\">");
        soapRequestData.append("<soap12:Body>");
        soapRequestData.append(
"<" + methodName + " xmlns=\"" + tns + "\">");
        Set
<String> nameSet = patameterMap.keySet();
        
for (String name : nameSet) {
            soapRequestData.append(
"<" + name + ">" + patameterMap.get(name)
                    
+ "</" + name + ">");
        }

        soapRequestData.append(
"</" + methodName + ">");
        soapRequestData.append(
"</soap12:Body>");
        soapRequestData.append(
"</soap12:Envelope>");

        
return soapRequestData.toString();
    }


胖胖泡泡 2010-05-27 16:30 發表評論
]]>
關于static的濫用http://m.tkk7.com/mrcold/archive/2010/05/27/322050.html胖胖泡泡胖胖泡泡Thu, 27 May 2010 08:24:00 GMThttp://m.tkk7.com/mrcold/archive/2010/05/27/322050.htmlhttp://m.tkk7.com/mrcold/comments/322050.htmlhttp://m.tkk7.com/mrcold/archive/2010/05/27/322050.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/322050.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/322050.html最近發掘越來越習慣于使用靜態的方法和屬性,也由此犯了許多錯誤。簡直是濫用。

如在一個servlet中,聲明了userId這種靜態屬性。勢必會導致多用戶訪問時操作同一個userId對象,引發并發性問題。

對于這種不同用戶會產生不同值的屬性,千萬不能定義成static。

static只使用于,對與所有用戶來說,值都能夠保持一致的屬性。比如Hibernate Factory中的數據庫連接對象等等。這樣還能夠提高效率,因為static屬性只在類初始化時進行一次初始化。



胖胖泡泡 2010-05-27 16:24 發表評論
]]>
Java中AutoBoxing對-128~127整型的特殊處理http://m.tkk7.com/mrcold/archive/2010/05/27/322046.html胖胖泡泡胖胖泡泡Thu, 27 May 2010 08:19:00 GMThttp://m.tkk7.com/mrcold/archive/2010/05/27/322046.htmlhttp://m.tkk7.com/mrcold/comments/322046.htmlhttp://m.tkk7.com/mrcold/archive/2010/05/27/322046.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/322046.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/322046.htmlpublic static void main(String[] args) {
  Integer a ;
  Integer b ;

  a
=16;
  b
=16;

  System.out.println(a 
== b);
  System.out.println(a.equals(b));
}
輸出true  true

public static void main(String[] args) {
Integer a ;
Integer b ;

a
=128;
b
=128;

System.out.println(a 
== b);
System.out.println(a.equals(b));
}

輸出false true

public static void main(String[] args) {
Integer a 
= new Integer(5);
Integer b 
= new Integer(5);

System.out.println(a 
== b);
System.out.println(a.equals(b));
}
輸出false ture


胖胖泡泡 2010-05-27 16:19 發表評論
]]>
Java的String池http://m.tkk7.com/mrcold/archive/2010/05/27/322023.html胖胖泡泡胖胖泡泡Thu, 27 May 2010 06:00:00 GMThttp://m.tkk7.com/mrcold/archive/2010/05/27/322023.htmlhttp://m.tkk7.com/mrcold/comments/322023.htmlhttp://m.tkk7.com/mrcold/archive/2010/05/27/322023.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/322023.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/322023.htmlpublic class Test {
       
public static void main(String[] args) {
            String s 
= new String();
            
int a = fun(s);
            System.out.println(s);
        }


    
public static int fun(String s)
    
{
        s 
= "aaaa";
        
return 1;
    }

由于JavaString池的特性,即String不可修改,修改即拋棄舊的,重新創建新的。所以上述代碼輸出為空。如果改為StringBuffer等其他類,則輸出為"aaaa"。

胖胖泡泡 2010-05-27 14:00 發表評論
]]>
IBM DW 的Json入門http://m.tkk7.com/mrcold/archive/2009/12/07/304970.html胖胖泡泡胖胖泡泡Mon, 07 Dec 2009 02:37:00 GMThttp://m.tkk7.com/mrcold/archive/2009/12/07/304970.htmlhttp://m.tkk7.com/mrcold/comments/304970.htmlhttp://m.tkk7.com/mrcold/archive/2009/12/07/304970.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/304970.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/304970.html http://www.ibm.com/developerworks/cn/web/wa-lo-json/

掌握 Ajax,第 10 部分: 使用 JSON 進行數據傳輸
http://www.ibm.com/developerworks/cn/web/wa-ajaxintro10/

掌握 Ajax,第 11 部分: 服務器端的 JSON
http://www.ibm.com/developerworks/cn/web/wa-ajaxintro11.html

胖胖泡泡 2009-12-07 10:37 發表評論
]]>
Json基本知識http://m.tkk7.com/mrcold/archive/2009/12/07/304966.html胖胖泡泡胖胖泡泡Mon, 07 Dec 2009 02:26:00 GMThttp://m.tkk7.com/mrcold/archive/2009/12/07/304966.htmlhttp://m.tkk7.com/mrcold/comments/304966.htmlhttp://m.tkk7.com/mrcold/archive/2009/12/07/304966.html#Feedback0http://m.tkk7.com/mrcold/comments/commentRss/304966.htmlhttp://m.tkk7.com/mrcold/services/trackbacks/304966.htmlJSON 是 javascript 的一個子集,所以,在javascript 中使用JSON是非常簡單的。
   
   
js 代碼
 
  1. var myJSONObject = {"bindings": [  
  2.         {"ircEvent""PRIVMSG""method""newURI""regex""^http://.*"},  
  3.         {"ircEvent""PRIVMSG""method""deleteURI""regex""^delete.*"},  
  4.         {"ircEvent""PRIVMSG""method""randomURI""regex""^random.*"}  
  5.     ]  
  6. };  

在上面的例子中,我們創建了只包含一個成員 "bindings" 的一個對象,bindings 則包含了一個由3個對象組成的數組。這3個對象都包含3個成員:"ircEvent", "method""regex"。

在javascript 中, 成員可以通過“點號”來獲取。
比如:
js 代碼
  1. myJSONObject.bindings[0].method  

通過eval() 函數可以將JSON字符串轉化為對象。
js 代碼
  1. var myObject = eval('(' + myJSONtext + ')');  

eval 函數非常快,但是它可以編譯任何 javascirpt 代碼,這樣的話就可能產生安全的問題。eval 的使用是基于傳入的代碼參數是可靠的假設的,有一些情況下,可能客戶端是不可信任的。

如果基于安全的考慮的話,最好是使用一個
JSON 解析器。 一個 JSON 解析器將只接受 JSON 文本。所以是更安全的。
js 代碼
 
  1. var myObject = JSON.parse(myJSONtext, filter);  

可選的 filter 參數將遍歷每一個value key 值對, 并進行相關的處理。如:

js 代碼
  1. myData = JSON.parse(text, function (key, value) {       
    1. return key.indexOf('date') >= 0 ? new Date(value) : value;    }); 

stringifier 函數的作用跟 parse 相反, 用來將一個js對象轉換為 JSON 文本。
js 代碼
  1. var myJSONText = JSON.stringifier(myObject);  


胖胖泡泡 2009-12-07 10:26 發表評論
]]>
主站蜘蛛池模板: 水蜜桃视频在线观看免费播放高清 | 国产aⅴ无码专区亚洲av麻豆| 亚洲日韩乱码中文字幕| 成人午夜免费福利视频| 91亚洲国产成人久久精品 | 成人A片产无码免费视频在线观看| 亚洲中文字幕无码久久精品1| 成在线人视频免费视频| 国产亚洲人成无码网在线观看| 丝瓜app免费下载网址进入ios | 亚洲日本久久一区二区va| 欧美a级成人网站免费| 亚洲日韩精品无码专区| 国产婷婷高清在线观看免费| sss在线观看免费高清| 亚洲av中文无码乱人伦在线咪咕| 无码人妻久久一区二区三区免费 | 在线看片免费人成视频福利| 久久亚洲私人国产精品| 在线看片免费不卡人成视频| 色偷偷亚洲第一综合网| 亚洲午夜国产精品无码| 91福利免费视频| 亚洲中文无码亚洲人成影院| 亚洲av无码不卡私人影院| 免费观看久久精彩视频| 亚洲av无码国产综合专区| 四虎永久免费影院在线| 嫩草成人永久免费观看| 亚洲日本久久久午夜精品| 国产av无码专区亚洲国产精品| 一级成人a毛片免费播放| 亚洲狠狠色丁香婷婷综合| 中文字幕第13亚洲另类| 丁香花免费高清视频完整版| 国产亚洲情侣久久精品| 亚洲综合精品香蕉久久网97| 日日夜夜精品免费视频| 人妻无码久久一区二区三区免费 | 91在线视频免费看| 成年大片免费高清在线看黄|