2016-07-14 79 views
1

我開始了一個具有web/mobile,android,ios的客戶端的企業應用程序。所以我決定使用Jersey來獲得RESTFull資源並使用Spring IO注入服務。但我被困在主要2個地方。爲複雜對象生成JSON消息

1. To Use DI with Spring. -- If I use jersey 2.7, it can able to produce 
    json. Here I can not use Spring DI. 
    2. Produce response for complex objects.-- If I use Jerse-Spring 1.8, 
     My Objects not converting as json. 
  1. 什麼是產生像內具有收集和具有持久性等級/休眠註釋複雜對象JSON消息的最佳方式。
  2. 什麼是DI的最佳解決方案,是春季DI或EJB 3.0(我不是太瞭解EBJ 3.X的)

我的數據庫設計已經結束,許多DAO的的測試,但要消耗我的服務我面臨一個問題。我最近的帖子是:enter link description here

任何幫助真的很感激。

回答

0

您可以使用帶gson lib的HttpServlet來創建REST服務。請參見下面的簡單的例子

package com.nl.services.ws.sincronizacao; import java.io.IOException; import java.io.PrintWriter; import javax.ejb.EJB; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.google.gson.Gson; @WebServlet(value = "/TestGsonHttp") public class TestGsonHttp extends HttpServlet{ @EJB private yourEjbClass; @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // Your Entity Client c = yourEjbClass.getClientById(1); Gson g = new Gson(); String jsonResult = g.toJson(c); PrintWriter writer = resp.getWriter(); writer.print(jsonResult);; writer.flush(); writer.close(); } }