简体   繁体   中英

What is the JSP equivalent to json_encode ( in PHP )?

I am trying to encode a JSP servlet into JSON. What's the equivalent in JSP to json_encode() in PHP ?

JSP/Servlet isn't that high-level as PHP which has practically "anything built-in". In Java you've more freedom to choose from libraries. There are several JSON libraries in Java available which you can implement in your webapp, the popular ones being under each JSON.org , Jackson and Google Gson .

We use here Gson to our satisfaction. It has excellent support for parameterized collections and (nested) Javabeans. It's basically as simple as follows:

String json = new Gson().toJson(anyObject); // anyObject = List<Bean>, Map<K, Bean>, Bean, String, etc..
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(json);

Converting JSON to a fullworthy Javabean is also simple with Gson, see this example .

Gson is pretty cool.

Its almost the same as json_encode . Note that an encoded empty string in json_encode evaluates to "\\"\\""

In Gson it returns ""

http://json.org/的底部有一个处理JSON编码的Java库列表 - 请选择。

json_encode in php is similar to following package in java

dependency:

import com.fasterxml.jackson.databind.ObjectMapper;

code :

Map<Object,Object> dataArray = {some data in map}
ObjectMapper objMapper = new ObjectMapper();
String jsonString = objMapper.writeValueAsString(dataArray);

jsonString is if the final result like son_encode in php, which you can achieve with objectMapper class

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM