コントローラからAJAX success()コールバックにデータを返そうとしています。このコードは100,000個のオブジェクトに対して完全に機能します。しかし、リストのサイズを100万のオブジェクトに増やすとsuccess()コールバックに行きますが、nullをレスポンスとして返します。何百万というオブジェクトを返す方法を見つけるのを助けてくれますか?バネコントローラから大量のデータを取得するとajaxがnullを返す
A.$.ajax({
url: 'getData',
dataType: 'json',
success: function (response) {
alert(response)
}
@RequestMapping("/getData")
public @ResponseBody
\t void download(HttpServletResponse response) throws IOException, JSONException
\t {
List <Objects> list = getListFromService();
\t \t response.setContentType("application/json"); \t
\t \t PrintWriter out = response.getWriter();
\t \t ObjectMapper mapper = new ObjectMapper();
\t \t String jsonString = mapper.writeValueAsString(list);
\t \t out.print(jsonString);
\t \t out.flush(); \t
\t }
なぜ、何百万ものオブジェクトを一度に返すのはなぜですか?多くのデータをユーザーにどのように提示しますか? – nnnnnn
@nnnnnn私はcsvファイルにそれらをすべてダウンロードしてユーザーに提供したいと思います。私はコントローラのサーバー側でもできることを知っています。ちょうど両方のアプローチを試して、何が最良の方法であるかを考えたかった。しかし、私は思う、私はサーバー側のファイル生成 – HelloWorld
おそらくあなたのサーバーが応答のサイズを制限していると思う - **ブラウザ**の**ツールコンソールとネットワークタブを確認してくださいこれの任意の指示のための –