榪欎袱澶╁涔燫EST鍙婂叾java瀹炵幇妗嗘灦Restlet.
鍏瘋薄鐘舵佷紶杈擄紙Representational state transfer錛?z>REST錛夋槸璁捐鍩轟簬鍛藉悕璧勬簮鑰岄潪娑堟伅鐨勬澗鑰﹀悎搴旂敤紼嬪簭鐨勪竴縐嶉鏍箋傛瀯寤? RESTful 搴旂敤紼嬪簭鐨勬渶鍥伴毦鐨勯儴鍒嗗湪浜庣‘瀹氳鍏紑鍝簺璧勬簮.涓漢璁や負瀹冭窡DDD鑱旂郴鐨勫緢绱у瘑錛岀壒鍒槸REST涓殑“璧勬簮”錛屾垜涓漢鐞嗚В瀹冨氨鏄粠棰嗗煙妯″瀷涓殑妯″瀷鑰屾潵鐨勩?br />鎴戜滑鍏堟潵鐪嬩竴涓媟estlet core api鍚э細
Overview of a Restlet architecture
Here is a diagram illustrating how the API composes components, connectors, virtual host and applications. Applications are in turncomposed of resources.

鐢ㄧ櫧璇存潵璁插氨鏄細Application閫氳繃Router 灝嗘煇涓猆RI涓嶳esource緇戝畾鍦ㄤ竴瀹氾紝鑰屼竴涓猚omponet鍙兘鍚湁澶氫釜Application,
榪樻湁Representation 榪欎釜綾誨叾瀹炰篃寰堥噸瑕併?/z>Representation entity錛?/span>Restlet涓叏閮ㄧ殑鎺ュ彈鍜岃繑鍥炲璞¢兘Representation綾葷殑瀛愮被銆?/span>
濡傚湪WEB APP涓粡甯擱渶瑕佷粠涓涓狥ORM涓嬁鍒板叾Representation(getWebRepresentation()
)鎴栫粍瑁呮垚涓涓?/font>Representation
Form(Representation webForm)
,浠ヤ究瀹㈡埛绔笌鏈嶅姟鍣ㄨ繘琛屼氦浜掋傛垜浠煡閬揜EST鏄互璧勬簮涓轟腑蹇冪殑錛屼竴涓猆RI灝變唬琛ㄤ簡瀵硅繖涓祫婧愮殑CURD鎿嶄綔銆侤Path榪欎釜娉ㄨВ鎻愭槑浜?/z>
鍝釜鎿嶄綔鏄敱璇ヨ祫婧愮殑閭d釜鏂規硶鏉ュ疄鐜扮殑濡?
@POST
@Path("add")
public String addStudent(Representation entity) {
}
...
@DELETE
@Path("delete/{id}")
public String deleteStudent(@PathParam("id") int id) {
int status = ResourceHelper.deleteStudent(id);
return String.valueOf(status);
}
representation package overriew:
Restlet 瀵硅〃鐜板眰鐨勬妧鏈敮鎸佷篃灝辨槸閫氭潵representation榪欎釜綾繪潵瀹炵幇鐨勶紝representation
Restlet騫舵病鏈変綘Setvlet API閭f牱鏈夎嚜宸茬殑JSP浣滆〃鐜扮殑鎶鏈紝瀹冩槸閫氳繃灝嗚繖涓夌妯℃澘鎶鏈暣鍚堣搗鏉ヨ屽凡濡?/z> : XSLT, FreeMarker and Apache Velocity
The org.restlet.representation package contains common representation data elements. Here is a hierarchy diagram with the core Representation classes:
Overview Representation package

褰撶劧restlve鍙槸鎻愪緵浜嗕竴涓叆鍙o紝紕板埌瑕佸鏁版嵁搴撹繘琛?z>CURD鎿嶄綔鏃訛紝鍩哄叿浣撳疄鐜拌繕鏄敱JDBC絳夋妧鏈潵瀹炵幇.

]]>