JAX RS 引數注入

2021-06-22 08:41:04 字數 1269 閱讀 4740

在《jax-rs3:路徑匹配》中,我們已經見過如何使用@pathparam@queryparam@matrixparam分別注入 uri 中的路徑引數、矩陣引數和查詢引數,以及如何程式設計訪問這些引數。本文介紹表單引數、http 頭部引數和 cookie 引數的注入。

http 請求也可以使用提交表單的方式。這時請求方法一般是 post,當然春哥也無法阻止你用 get。在前面我們雖然介紹過處理 post 請求的例子,但那只是利用了 jax-rs 對 jaxb 的支援,並沒有涉及到對具體請求引數的注入。jax-rs 提供了@formparam註解來注入 post 請求的引數,例如:

@post

public response createmovie(@formparam("title") string title)

@post

@consumes(mediatype.multipart_form_data)

public response createmovie(@formparam("title") string title)

注入 http 頭部引數簡單得不能再簡單了:

@get

@path("***")

@produces(mediatype.text_plain)

public string ***(@headerparam("user-agent") string useragent)

如果有很多頭部引數,為了避免臃腫的引數列表,可以注入乙個頭部物件,然後程式設計訪問頭部引數:

@get

@path("***")

@produces(mediatype.text_plain)

public string ***(@context httpheaders headers)

注入 cookie 引數同樣的簡單:

@get

@path("***")

@produces(mediatype.text_plain)

public string ***(@cookieparam("username") string username)

如果希望程式設計訪問,則可以像程式設計訪問那樣注入乙個httpheaders物件,然後通過它的getcookies()方法來獲取所有的 cookie。

JAX RS入門 十一 HATEOAS

一 atom links restful使用atom syndication format來實現hateoas。atom links 也是一種xml元素結構,例如 xml customers strong link rel next href strong customer id 123 name ...

SpringMVC 引數注入

寫乙個web service,總是400.說是request有問題,server不識別。然而檢查了很多次都沒問題。最終問題指向spring對引數的解析和注入。乙個controller中可以自定義引數,只要引數和request的引數匹配就會自動注入。針對自定義pojo,顯然是spring幫忙給new了...

注入引數詳解

在spring配置檔案中,可以將int,string等字面值注入bean中,還可以將list,map等型別注入,以及其他定義的bean。字面值 字面值指的是可用字串表示的值,預設情況下基本資料型別,string等型別都可以採用字面值注入的方式。spring容器在內部為字面值提供了編輯器,可以將字串表...