RESTful的簡單介紹與例項

2021-07-03 14:00:10 字數 1463 閱讀 2465

restful的概念:一種軟體架構風格,設計風格而不是標準,只是提供了一組設計原則和約束條件。它主要用於客戶端和伺服器互動類的軟體。基於這個風格設計的軟體可以更簡潔,更有層次,更易於實現快取等機制。該理念是由roy thomas fielding在他2023年的博士**中提出的。

例項:首先需要匯入所需的jar包:

activation-1.1.1.jar

asm-3.3.1.jar

jackson-core-asl-1.9.2.jar

jackson-jaxrs-1.9.2.jar

jaxb-api-2.2.4.jar

jaxb-impl-2.2.4-1.jar

jersey-bundle-1.12.jar

jersey-client-1.12.jar

jersey-core-1.12.jar

jersey-json-1.12.jar

jersey-server-1.12.jar

jettison-1.1.jar

stax-api-1.0-2.jar

然後需要配置web.xml,用來將所有的 rest 請求傳送到 jersey 容器

jax-rs rest servlet

jax-rs rest servlet

com.sun.jersey.spi.spring.container.servlet.springservlet

com.sun.jersey.config.property.packages

com.web.rest

1其中引數名為com.sun.jersey.config.property.packages所對應的值是com.web.rest,也就是說在包com.web.rest下宣告的所有restful的注釋的資源當客戶端傳送請求時都將被啟用。

例如:com.web.rest包下的類testrest

@path("/testrest")

public class testrest   

}當我們在瀏覽器位址列中輸入:http://localhost:8080/專案名稱/rest/testrest/時,傳送請求後,這個請求會被送到jersey 容器,然後根據http協議中的資訊,進行判斷,呼叫相關的類方法,返回的資料可以以不同的形式響應客戶端。

@path用於指定唯一的資源uri,由於com.sun.jersey.spi.spring.container.servlet.springservlet對映的路徑是/rest/*,當為某乙個類或方法指定@path時,那麼他的真實uri為:http://localhost:8080/專案名稱/rest/testrest

@get:這意味著以下方法可以響應 http get 方法。常見的http響應方式(get、post、put、delete)

@produces:以純文字方式定義響應內容 mime 型別。常見的mime型別(xml,json,html)

rest 以及restful 簡單介紹

rest representational state transfer 直接翻譯 表現層狀態轉移。通俗來講就是 資源在網路中以某種表現形式進行狀態轉移。resource 資源,即資料 前面說過網路的核心 比如 newsfeed,friends等 representational 某種表現形式,比如...

Pytest簡單的例項介紹

引用 針對以上文章的webui自動化,編寫了對應的login api介面自動化 介面的呼叫方法 利用pytest.mark.parametrize裝飾器可以實現測試用例引數化 生成html報告 python m pytest html report add demo.html 生成報告 利用allu...

Python tkinter例項 簡單介紹

usr bin env python3.3 coding utf 8 import tkinter as tk from tkinter import ttk def sample1 hello title 1,最簡單 root tk.tk root.title 你好,這是tkinter世界 roo...