Jersey RESTful Web服務

Jersey是一個RESTFUL請求服務JAVA框架,與常規的JAVA編程使用的struts框架相似,它主要用於處理業務邏輯層。與Struts相似,它一樣能夠和hibernate,spring框架整合。
因爲Struts2+hibernate+spring整合在市場的佔有率過高,因此不多一部分人去關注Jersey。因此網上有關於Jersey的介紹不多。可是它確實是一個很是不錯的框架。對於請求式服務,對於GET,DELETE請求,你甚至只須要給出一個URI便可完成操做。
舉個簡單的例子:若是你想得到服務器數據庫中的全部數據;那麼你能夠在瀏覽器或者利用Ajax的GET方法,將路徑設置好;例如:localhost:8080/Student (項目名稱)/studentinfo (項目服務整體前綴)/student( 處理student對象的簽註)/getStudentInfo( 最後前綴)。這樣就能夠獲取全部學生信息。你能夠選擇GET獲取的數據的返回類型:JSON,XML,TEXT_HTML(String)..獲取以後,你能夠經過JS將這些數據塞到html或者jsp頁面上。
下面是詳解:
web.xml的設置:
<!--定義Jersey的攔截器 -->
  <servlet>
  <servlet-name>JerseyServlet</servlet-name>
  <servlet-class>
  com.sun.jersey.spi.spring.container.servlet.SpringServlet
  </servlet-class>
  <init-param>
  <param-name>com.sun.jersey.config.property.packages</param-name>
  <!--服務類所在的文件夾 -->
  <param-value>com.mirrors.action</param-value><!-- 之因此我定義爲com.mirrors.action就是說明此包中類的做用相似於struts中action層類的做用--!>
  </init-param>
  </servlet>
  <servlet-mapping>
  <servlet-name>JerseyServlet</servlet-name>
  <url-pattern>/new/*</url-pattern> <!--項目服務整體前綴 -->
  </servlet-mapping>
  <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
StudentAction.java一些代碼:
@Component
  @Path("/student") //處理student對象的簽註
  public class StudentAction
  {
  private StudentDao studentdao;
  public void setStudentdaoStudentDao studentdao)
  {
  this.studentdao =studentdao;
  }
  @GET //獲取方式
  @Path("getStudentInfo")// 最後前綴
@Produces({ MediaType.APPLICATION_JSON }) //返回類型爲一個Student對象的JSON數組
  public List<Student> getTrade()
{
  return studentdao.getStudent();
  }
}
這樣一個GET方式的處理就結束了,接下來就是前臺提取方式,你能夠經過JS控制JSON數組在頁面的呈現方式。
Jersey共計有4中處理方式,即:@GET,@POST,@DELETE,@PUT。
相關文章
相關標籤/搜索