2016-11-02 10 views
0

JSON形式のページのデータを取得します。たとえば、表形式でデータを表示するにはどうすればいいですか? JSPでJSPでJSONを解析する方法

@RestController 
@RequestMapping("/use_profile") 
public class ProfileController { 

    @Autowired 
    ProfileService profileService; 
    @RequestMapping(value = "/my",method = RequestMethod.GET, produces = "application/json") 
    @ResponseBody 
    public Object getProfile(Principal principal){ 
     try { 
      final String name = principal.getName(); 
      Profile profile = profileService.getProfileByUserLogin(name); 
      return profile; 
     } 
    catch (Exception e){ 
     return "Error get Profile: " + e.getMessage(); 
    } 

} 

> <script type="text/javascript"> 
>  var service = '/use_profile'; 
>  var RestGet = function (id) { 
>   $.ajax({ 
>    type: 'GET', 
>    url: service + "/" + id, 
>    dataType: 'json', 
>    async: false, 
>    success: function (result) { 
>     $('#result').html(JSON.stringify(result)); 
> 
>    }, 
>    error: function (jqXHR, textStatus, errorThrown) { 
>     $('#response').html(JSON.stringify(jqXHR)); 
>    } 
>   }); 
>  }; 
>  RestGet('my'); </script> 

><div class="panel-body" id="result"> 

結果:

{ "ID":4、 "ログイン": "ユーザー"、 "名前"、「イワン"、" surname ":" Ivanov "、" city ":" Spb "、" interest ":" many "、" avatar ":null、aboutMe:null}

どのようにJSPでこのデータを解析できますか?たとえば、表形式で表示する

+0

を試してみてください。 jspの機能を使用することはできません。 jsp(javaサーバーページ)はサーバー側で実行されます。クライアント側ではない – muneebShabbir

+0

サーバーからデータを取得し、ページを再ロードせずに適切な形式で表示する方法 – apayvl

+0

JSPを使用してテーブルを作成したくない場合は、jqueryを使用して、REST呼び出しの成功時にテーブル内に動的行を作成できます。 JSONレスポンスを繰り返し、行を1つずつ構築してください – muneebShabbir

答えて

0

JSTLの<c:import>タグを使用してAPIエンドポイントにコールを送信し、その応答を変数に含めることができます。以下はその例です。

<c:import var="myData" url="/use_profile/my"/> 
<c:out value="${myData}"/> 

次に、$ {myData}を使用してテーブルを作成します。

+0

write すべてがうまくいけば。しかし、たとえば、 - エラー500 – apayvl

0

あなたはJSPが確定され、この段階では、JavaScriptのメソッドからそれを呼び出している

$('#result').html(JSON.parse(result)); 
関連する問題