用Jersey構建RESTful服務3--JAVA物件轉成JSON輸出
一、 總體說明
XML和JSON 是最為常用的資料交換格式。本例子演示如何將java物件,轉成JSON輸出。
二、流程
1.在上文專案中,
在“com.waylau.rest.resources.UserResource“中增加程式碼,程式碼如下:
@GET @Path("/getUserJson") @Produces(MediaType.APPLICATION_JSON) public User getUserJson() { User user = new User(); user.setAge("27"); user.setUserId("005"); user.setUserName("Fmand"); return user; }
MediaType.APPLICATION_JSON 說明輸出的是JSON格式
期望獲取到json的資料,此時,專案報錯
org.glassfish.jersey.message.internal.MessageBodyProviderNotFoundException: MessageBodyWriter not found for media type=application/json, type=class com.waylau.rest.bean.User, genericType=class com.waylau.rest.bean.User. at org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo(WriterInterceptorExecutor.java:247) at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) at org.glassfish.jersey.filter.LoggingFilter.aroundWriteTo(LoggingFilter.java:293) at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) at org.glassfish.jersey.server.internal.JsonWithPaddingInterceptor.aroundWriteTo(JsonWithPaddingInterceptor.java:103) at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) at org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:88) at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) at org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1154) at org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:571) at org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:378) at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:368) at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:262)
此時,需要獲取json轉換包的支援 。
可以由多種方式實現:MOXy、JSON-P、Jackson、Jettison等,本例為Jackson。
4. 專案中引入jackson-all-1.9.11.jar
5.在“com.waylau.rest”目錄下建立RestApplication.java
package com.waylau.rest; import org.codehaus.jackson.jaxrs.JacksonJsonProvider; import org.glassfish.jersey.filter.LoggingFilter; import org.glassfish.jersey.server.ResourceConfig; /** * 應用 * @author waylau.com * 2014-3-18 */ public class RestApplication extends ResourceConfig { public RestApplication() { //服務類所在的包路徑 packages("com.waylau.rest.resources"); //註冊JSON轉換器 register(JacksonJsonProvider.class); } }
6.修改web.xml,初始化從RestApplicaton進入應用,如下:
<servlet>
<servlet-name>Way REST Service</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.waylau.rest.RestApplication</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Way REST Service</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
7.執行專案,再次訪問http://localhost:8089/RestDemo/rest/users/getUserJson即可輸出JSON文字
相關推薦
用Jersey構建RESTful服務3--JAVA物件轉成JSON輸出
一、 總體說明 XML和JSON 是最為常用的資料交換格式。本例子演示如何將java物件,轉成JSON輸出。 二、流程 1.在上文專案中, 在“com.waylau.rest.resources.UserResource“中增加程式碼,程式碼如下: @GET
用Jersey構建RESTful服務2--JAVA物件轉成XML輸出
一、 總體說明 XML和JSON 是最為常用的資料交換格式。本例子演示如何將java物件,轉成XML輸出。 二、流程 1.在上文的例子中,建立一個包“com.waylau.rest.bean” 2.在該包下建立一個JAVA類"User" package com.
用Jersey構建RESTful服務-JAVA物件轉成XML/Json輸出
1、XML資料型別輸出: 一、 總體說明 XML和JSON 是最為常用的資料交換格式。本例子演示如何將java物件,轉成XML輸出。 二、流程 1.在上文的例子中,建立一個包“com.waylau.rest.bean” 2.在該包下建立一個JAVA類"User"
用Jersey構建RESTful服務7--Jersey+SQLServer+Hibernate4.3+Spring3.2
sqlserver get user ide ren restful mar ron ddc 一、整體說明 本例執行演示了用 Jersey 構建 RESTful 服務中。怎樣集成 Spring3 二、環境 1.上文的項目RestDemo 2.
JS物件和Java物件轉成JSON
一.Json物件與Json字串的轉化 1.jQuery外掛支援的轉換方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以將json字串轉換成json物件 2.瀏覽器支援的轉換方式(Firefox,chrome,oper
注意:java物件轉成json成立的基本條件只需要有get方法!!!
我們一般以為比如一個student物件轉換成json字串,那麼必須要有對應的欄位(屬性),其實不是這樣的。java物件轉換成json字串,若想要獲得key、alue鍵值對,只需要物件中有getXxx(
Simplify-Core -- java物件轉換成Json(Json generator)
先感嘆一波今天正式畢業,拿到了畢業證和學位證,然後部落格也有三個多月沒寫了,最近自己寫了一個工具類的專案,Simplify,旨在簡化重複的JAVA程式碼,基於JDK8,無其它jar包依賴,提供序列化,json,日期等常見操作。json generator部分寫的比較完善了, parse部
Gson基本使用 -- 解析json,jsonArray。將任意java物件轉化為json格式
Gson是一款幫助解析Json,JsonArray和將Java物件轉換為Json格式的框架。一、將json解析為java物件先看效果圖程式碼實現1.在app模組的build.gradle的dependencies中引入Gsonimplementation 'com.g
Android與Java伺服器端資料互動和Java物件轉換成JSON物件
Ticket封裝成一個類 package com.model; public class Ticket { private int ticket_id; private int price; private int user
Java物件 轉化成 json字串 輸出
======ok == com.alibaba.fastjson.JSONObject ====== res : {"bwDictId":2,"list":"127.0.0.1","logUserId":33,"note":"黑名單測試Note","sco
後臺將多個java物件轉化成json陣列傳到前端
1.將多個物件儲存在陣列 public static String toJsonArray(List<Object> list){ if(null == list || list.size() == 0) t
jsp中如何將Java物件轉成js物件?
jsp中如何將Java物件轉成js物件?1、首先我們要明確 jsp頁面Java物件如何和js進行交換。是通過jsp表示式也就<%=%>,它可以寫在jsp頁面的任何地方,當然可以寫在JavaS
Java物件轉換成Json字串
使用gson-2.3.1.jarpackage org.acooly.thrift.demo.client; import java.util.ArrayList; import com.google.gson.Gson; public class json { pub
json字串轉成json物件,以及json物件轉成json字串
json字串是一種能轉成json物件的字串(我自己理解的), 如 var MRWStr = '{name:WangHongxu,sex:man}', 把 MRW轉成json物件只需要 var MRWObj = JSON.parse(MRWStr); 就能得到 {n
Gson把物件轉成json格式的字串
最近在做一個java web service專案,需要用到jason,本人對java不是特別精通,於是開始搜尋一些java平臺的json類庫。 發現了google的gson,因為之前對於protocolbuf有一些瞭解,帶著一些好奇心,我開始使用了gson。
js將物件轉成json格式
/** * 序列化成json字串 * @param obj * @return */ function Serialize(obj){ switch(obj.construc
將class物件轉成json物件並通過ajax傳遞到前端
後臺程式碼: /// <summary> /// 測試用的類 /// </summary> public class Product { public int productId { get;
jersey+maven構建restful服務
url auto ins cal family ring sdn edi 節點 一、新建一個Maven Web項目 a) 新建一個簡單的Maven項目 b) 將簡單的Maven項目轉成Web項目 (若沒出現further configuration
Jersey 實踐:構建RESTful服務及解決跨域問題
最近在準備為我的小程式做個後臺,剛好之前在網上了解了RESTful這種設計風格,覺得很簡單輕量,便準備採用這種設計方式。有很多框架都能支援RESTful的設計,在一番權衡之後,決定選擇jersey框架,因為我的小程式的併發量並不大,而且自己對於spring也還不太熟悉,而je
使用spring mvc或者resteasy構建restful服務
很好 trap 如何 系統 路徑 查找 factor 執行 閱讀 看到最近一個項目裏用resteasy來構建restful接口,有點不明白,不少Spring mvc4.0以後也可以很方面的實現restful服務嗎,為啥還要在Spring MVC的項目裏還引入resteasy