<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    kitten

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      11 隨筆 :: 0 文章 :: 0 評(píng)論 :: 0 Trackbacks

    2014年1月2日 #

    Web 應(yīng)用在接受表單提交的數(shù)據(jù)后都需要對(duì)其進(jìn)行合法性檢查,如果表單數(shù)據(jù)不合法,請(qǐng)求將被駁回。類似的,當(dāng)我們?cè)诰帉戭惖姆椒〞r(shí),也常常需要對(duì)方法入?yún)⑦M(jìn)行合法性檢查,如果入?yún)⒉环弦螅椒▽⑼ㄟ^拋出異常的方式拒絕后續(xù)處理。舉一個(gè)例子:有一個(gè)根據(jù)文件名獲取輸入流的方法:InputStream getData(String file),為了使方法能夠成功執(zhí)行,必須保證 file 入?yún)⒉荒転?null 或空白字符,否則根本無須進(jìn)行后繼的處理。這時(shí)方法的編寫者通常會(huì)在方法體的最前面編寫一段對(duì)入?yún)⑦M(jìn)行檢測(cè)的代碼,如下所示:

    public InputStream getData(String file) {     if (file == null || file.length() == 0|| file.replaceAll("\\s", "").length() == 0) {         throw new IllegalArgumentException("file入?yún)⒉皇怯行У奈募刂?);     } … }

    類似以上檢測(cè)方法入?yún)⒌拇a是非常常見,但是在每個(gè)方法中都使用手工編寫檢測(cè)邏輯的方式并不是一個(gè)好主意。閱讀 Spring 源碼,您會(huì)發(fā)現(xiàn) Spring 采用一個(gè) org.springframework.util.Assert 通用類完成這一任務(wù)。

    Assert 翻譯為中文為“斷言”,使用過 JUnit 的讀者都熟知這個(gè)概念,它斷定某一個(gè)實(shí)際的運(yùn)行值和預(yù)期想一樣,否則就拋出異常。Spring 對(duì)方法入?yún)⒌臋z測(cè)借用了這個(gè)概念,其提供的 Assert 類擁有眾多按規(guī)則對(duì)方法入?yún)⑦M(jìn)行斷言的方法,可以滿足大部分方法入?yún)z測(cè)的要求。這些斷言方法在入?yún)⒉粷M足要求時(shí)就會(huì)拋出 IllegalArgumentException。

     轉(zhuǎn)自:http://www.ibm.com/developerworks/cn/java/j-lo-spring-utils2/
    posted @ 2014-08-25 10:53 云③+_+輸 閱讀(212) | 評(píng)論 (0)編輯 收藏

    1.用戶標(biāo)識(shí):
        $ 表示普通用戶
        #表示超級(jí)用戶

    2.注釋、命令分隔符
        #表示注釋
        ~代表用戶home路徑
        bash中每個(gè)命令或命令序列使用分號(hào)或換行來分隔
        如: $ cmd1;cmd2 
                  <=> 
      $cmd1
      $cmd2

    3.shell腳本運(yùn)行
        shell腳本通常以#!起始 如:#!/bin/bash 
        腳本有2種運(yùn)行方式:
        1>.作為sh的命令行參數(shù)(此時(shí)shebang行無用)
          如:$ sh script.sh #當(dāng)前目錄下或路徑
        2>.作為具有可執(zhí)行權(quán)限的文件(需要a.可執(zhí)行權(quán)限  b.利用shebang行)
          如:a. chmod a+x script.sh
               b. ./script.sh  # ./表當(dāng)前目錄
    4.終端打印
        1>.echo 默認(rèn)在調(diào)用后添加換行符
         打印文本可用雙引號(hào)、單引號(hào)、不帶引號(hào)
         不帶引號(hào)echo時(shí),無法在顯示文本用(有空格時(shí),空格被作為命令界定符)
         單引號(hào)時(shí),bash不會(huì)對(duì)文本中變量($var)求值
        2>.格式化字符串printf
         printf "%-5s %-10s %-4.2f\n" 1 tom 80.3456
        3>. echo轉(zhuǎn)義換行符
          使用-n  如:echo "hello"
          使用轉(zhuǎn)義序列 如:echo -e "hello 1\t"
    posted @ 2014-04-11 00:01 云③+_+輸 閱讀(179) | 評(píng)論 (0)編輯 收藏

         摘要: struts2.X配置文件默認(rèn)存放路徑在/WEB-INF/classes目錄下,即將struts.xml放在src的目錄下。但是為了方便管理,開發(fā)人員把struts.xml放到其他位置,處理方法如下。首先要明白struts2加載配置文件都是從自己的jar包和/WEB-INF/classes兩個(gè)默認(rèn)的位置加載的。若修改struts2.x配置文件的存放位置,在web.xml配置過慮器時(shí),具體配置如下:...  閱讀全文
    posted @ 2014-04-08 20:45 云③+_+輸 閱讀(7317) | 評(píng)論 (0)編輯 收藏

    Struts2.0.11.1/2 + Tiles 2.0.4(是Struts2.0.11的一部分)

    Struts2.0.11.2比Struts2.0.11.1修改了一些安全性問題。

    配置根據(jù)網(wǎng)上的例子Tiles的時(shí)候,出現(xiàn)兩個(gè)比較頭疼的問題,終于弄明白錯(cuò)在什么地方了。

    1. org.apache.tiles.taglib.UseAttributeTag$Tei 找不到的問題。

    10:12:31,343 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception 
    java.lang.ClassNotFoundException: org.apache.tiles.taglib.UseAttributeTag$Tei

    這個(gè)是因?yàn)樵趌ayout.jsp里面的taglib說明行里面:

    原來使用的是/WEB-INF/tiles.tld。跟當(dāng)前版本不對(duì)應(yīng)。 從tiles-jsp-2.0.4.jar中解壓出tiles-jsp.tld。放到合適的位置,在聲明的時(shí)候?qū)憣?duì)就可以了。

    另外: WEB-INF/lib 添加jar:  tiles-api-2.0.6.jar tiles-core-2.0.6.jar tiles-jsp-2.0.6.jar 

    2. Attribute 'header' not found.

    10:36:05,734 ERROR [RenderTagSupport] Error during rendering 
    javax.servlet.jsp.JspException: Error executing tag: Attribute 'header' not found.

    這個(gè)問題出在struts.xml中定義的

    本文來自:http://www.xuebuyuan.com/675702.html

              org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG 
            
            /WEB-INF/tiles.xml 
         

    這個(gè)tiles.xml中的DOCTYPE 說明字段是這樣的:

           "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" 
           "http://jakarta.apache.org/struts/dtds/tiles-config.dtd">

    這樣是錯(cuò)誤的,應(yīng)該寫成

           "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN" 
          "http://tiles.apache.org/dtds/tiles-config_2_0.dtd">

    來自:
    http://www.xuebuyuan.com/675702.html

    posted @ 2014-04-08 20:24 云③+_+輸 閱讀(894) | 評(píng)論 (0)編輯 收藏

    在struts2.3.16.1下,web.xml中使用

    <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.FilterDispatcher </filter-class>

    會(huì)出現(xiàn)
    ***********************************************************************
    *                               WARNING!!!                            *
    *                                                                     *
    * >>> FilterDispatcher <<< is deprecated! Please use the new filters! *
    *                                                                     *
    *           This can be a source of unpredictable problems!           *
    *                                                                     *
    *              Please refer to the docs for more details!             *
    *            http://struts.apache.org/2.x/docs/webxml.html            *
    *                                                                     *
    ***********************************************************************

    原因在于:


    Class FilterDispatcher Deprecated. Since Struts2.3.16.1, use StrutsPrepareAndExecuteFilter instead or StrutsPrepareFilterand StrutsExecuteFilter if needing using the ActionContextCleanUp filter in addition to this one..即,從Struts 2.1.3起已被標(biāo)注為過時(shí)的,改用StrutsPrepareAndExecuteFilter

    解決方法,將web.xml上述代碼改為:

    復(fù)制代碼


    <
    filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> </filter>
    來自:http://www.cnblogs.com/babybluevino/
    posted @ 2014-04-08 20:23 云③+_+輸 閱讀(542) | 評(píng)論 (0)編輯 收藏

    1.javascript程序使用unicode字符集編寫的
    2.javascript區(qū)分大小寫,但是HTML并不區(qū)分大小寫(xhtml區(qū)分大小寫)
    3.javascript注釋使用//  或 /*  */
    4. 直接量(literal) 即程序中直接使用的數(shù)據(jù)值
        如 12 //數(shù)字
        'hello world' //字符串
    5. javascript標(biāo)識(shí)符必須以字母、下劃線或美元開始
    posted @ 2014-01-21 21:57 云③+_+輸 閱讀(121) | 評(píng)論 (0)編輯 收藏

    安裝流程設(shè)計(jì)器
    一、eclipse安裝插件2種方法
            1、將相關(guān)jar復(fù)制到eclipse的plugins目錄
            2、link方式(推薦)
            選擇2安裝,在eclipse下新建links目錄,目錄下新建jbpm-designer3.1.3sp2.link文本文件
            在文件中輸入path=d:/designer
            注:path所指插件要放在一個(gè)名為eclipse的目錄下,如:designer/eclise/plugins+links+features目錄。
            重啟即可 或 eclipse -clean
    二、檢測(cè)
        安裝成功,則在window-preferences下 看到j(luò)boss jbpm選項(xiàng),
        然后再runtime location可指定jbpm套件所在位置(jbpm-jpdl-suite-3.2.3\jbpm-jpdl-3.2.3)
    posted @ 2014-01-02 10:12 云③+_+輸| 編輯 收藏

    主站蜘蛛池模板: 在线看片无码永久免费视频| gogo全球高清大胆亚洲| 亚洲日韩AV一区二区三区中文 | 免费国产a理论片| 亚洲精品V欧洲精品V日韩精品| 7x7x7x免费在线观看| 国产精品手机在线亚洲| 亚洲国产精品高清久久久| 四虎国产精品免费久久| 国产精品hd免费观看| 中中文字幕亚洲无线码| 曰韩亚洲av人人夜夜澡人人爽| 59pao成国产成视频永久免费 | 色播精品免费小视频| 日日摸夜夜添夜夜免费视频| 亚洲人成电影在线观看青青| 亚洲天堂在线视频| 西西大胆无码视频免费| 免费无码H肉动漫在线观看麻豆| 亚洲一区二区三区在线观看网站| 亚洲一区二区女搞男| 免费鲁丝片一级在线观看| 外国成人网在线观看免费视频| 男男gay做爽爽的视频免费| 亚洲精品国产成人| 亚洲色欲一区二区三区在线观看| 免费精品一区二区三区在线观看| 亚洲免费视频网站| 精品一区二区三区免费视频 | 久久综合给合久久国产免费| 免费福利在线观看| 亚洲欧美中文日韩视频| 亚洲国产视频网站| 亚洲成在人天堂一区二区| 国产成人精品曰本亚洲79ren| 四虎www免费人成| 国产精品爱啪在线线免费观看| 中文无码成人免费视频在线观看| 国产亚洲Av综合人人澡精品| 亚洲综合色丁香婷婷六月图片| 亚洲欧洲日产国码二区首页|