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

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

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

    神奇好望角 The Magical Cape of Good Hope

    庸人不必自擾,智者何需千慮?
    posts - 26, comments - 50, trackbacks - 0, articles - 11
      BlogJava :: 首頁 ::  :: 聯系 :: 聚合  :: 管理

    前面介紹了各種請求參數的注入,這些參數在 HTTP 請求中都是以純文本的方式存在的。在處理參數的時候,往往需要把這些文本參數轉換為 Java 對象。JAX-RS 提供了一些內置的規則里自動完成這種轉換。

    轉換規則一覽

    JAX-RS 提供了四條自動類型轉換規則,下面我們逐條考察。

    原始類型

    這個早就見識過了,無需多說。舉例回顧一下:

    @GET
    @Path("{id}")
    public Movie getXxx(@PathParam("id") int id) {/*...*/}
        

    提供接受單個 String 參數的構造器的類型

    這個也不難理解,JAX-RS 會自動調用該構造器創建一個對象:

    public class Style {
        public Style(String name) {/* ... */}
        // ...
    }
    
    @GET
    @Path("{name}")
    public Movie getXxx(@PathParam("name") Style style) {
        // JAX-RS 已自動調用 xxx = new Style(name)
        // ...
    }
        

    提供靜態工廠方法 valueOf(String) 的類型

    也好理解。特別需要注意的是,所有的枚舉類型都在此列,因為編譯器會自動給枚舉類型加上一個這樣的工廠方法。例如:

    public enum Style {/*...*/}
    
    @GET
    @Path("{name}")
    public Movie getXxx(@PathParam("name") Style style) {
        // JAX-RS 已自動調用 style = Style.valueOf(name)
        // ...
    }
        

    類型參數滿足前兩個條件的 List<T>Set<T>SortedSet<T>

    這條規則適用于多值參數,例如查詢參數:

    @GET
    @Path("xxx")
    public Movie getXxx(@QueryParam("style") Set<Style> styles) {
        // JAX-RS 已自動轉換每個 Style 對象并組裝到 Set 中
        // ...
    }
        

    轉換失敗的處理

    如果轉換失敗,JAX-RS 會根據情況自動拋出一個包裝了初始異常,但是帶不同 HTTP 錯誤碼的 WebApplicationException:對矩陣參數(@MatrixParam)、查詢參數 (@QueryParam)或路徑參數(@PathParam)來說為 HTTP 404 找不到,而對頭部參數(@HeaderParam)或 Cookie 參數(@CookieParam)為 HTTP 400 錯誤請求


    評論

    # re: JAX-RS 從傻逼到牛叉 7:注入參數的自動類型轉換  回復  更多評論   

    2012-01-13 14:00 by danyili
    請教一下博主,怎么在jax-rs上加上安全認證?

    # re: JAX-RS 從傻逼到牛叉 7:注入參數的自動類型轉換  回復  更多評論   

    2012-01-13 15:45 by 蜀山兆孨龘
    @danyili

    JAX-RS 可以和容器管理的安全認證無縫集成,只需要編輯 web.xml 的相關配置,例如 security-constraint,然后在 JAX-RS 類中用 @RolesAllowed 指定允許訪問的角色就可以了。HTTPS 也是完全支持的。

    建議你先了解下 Java EE 安全方面的功能。
    主站蜘蛛池模板: 一个人免费观看日本www视频| 免费人成在线观看播放a| 玖玖在线免费视频| 国产成人麻豆亚洲综合无码精品| 羞羞网站在线免费观看| 日韩亚洲国产综合久久久| 一级毛片不卡免费看老司机| 亚洲无线码一区二区三区| 国产一级a毛一级a看免费视频 | 亚洲真人日本在线| 特级做a爰片毛片免费看| 久久久久久久亚洲精品| 久艹视频在线免费观看| 亚洲一二成人精品区| 日韩免费一区二区三区在线| 亚洲中文字幕久久无码| 免费va人成视频网站全| 一级毛片a女人刺激视频免费| 国产精品亚洲成在人线| 1000部拍拍拍18勿入免费视频下载 | 三级网站在线免费观看| 亚洲视频在线观看网站| 国产精品成人免费一区二区| 亚洲av成人一区二区三区观看在线 | 亚洲乱妇熟女爽到高潮的片| 免费午夜爽爽爽WWW视频十八禁 | 欧洲精品免费一区二区三区| 一区二区三区在线免费观看视频| 亚洲精品无码国产| 无码av免费毛片一区二区| 国产精品亚洲av色欲三区| 亚洲精品国产精品乱码不卡√| 中文字幕免费在线| 亚洲高清国产拍精品熟女| 亚洲深深色噜噜狠狠爱网站| 成人免费的性色视频| 无人视频免费观看免费视频| 亚洲精品乱码久久久久久下载 | 日本免费中文字幕在线看| 精品国产麻豆免费人成网站| 亚洲中文字幕乱码一区|