I have an arraylist like:
List skus = new ArrayList();
and the output is
[{value=4, sequence=1, availableinventory=50, defining=size, skuid=24846457, partnumber=602016000967318},
{value=6, sequence=2, availableinventory=50, defining=size, skuid=24846459, partnumber=602016000967319},
{value=8, sequence=3, availableinventory=50, defining=size, skuid=24846462, partnumber=602016000967320},
{value=10, sequence=4, availableinventory=50, defining=size, skuid=24846468, partnumber=602016000967321},
{value=12, sequence=5, availableinventory=50, defining=size, skuid=24846476, partnumber=602016000967322},
{value=14, sequence=6, availableinventory=50, defining=size, skuid=24846484, partnumber=602016000967323},
{value=16, sequence=7, availableinventory=50, defining=size, skuid=24846492, partnumber=602016000967324}]
But i want to convert the above arraylist to JSON response which is a string builder like below .
StringBuilder jsonUIRespesponse = new StringBuilder();
[{"skuid":"24845337","value":"16","partnumber":"602016000967240","availableinventory":"50","sequence":"7","defining":"size"},
{"skuid":"24845325","value":"6","partnumber":"602016000967235","availableinventory":"50","sequence":"2","defining":"size"},
{"skuid":"24845326","value":"8","partnumber":"602016000967236","availableinventory":"50","sequence":"3","defining":"size"},
{"skuid":"24845327","value":"10","partnumber":"602016000967237","availableinventory":"50","sequence":"4","defining":"size"},
{"skuid":"24845328","value":"12","partnumber":"602016000967238","availableinventory":"50","sequence":"5","defining":"size"},
{"skuid":"24845329","value":"14","partnumber":"602016000967239","availableinventory":"50","sequence":"6","defining":"size"},
{"skuid":"24845324","value":"4","partnumber":"602016000967234","availableinventory":"50","sequence":"1","defining":"size"}]
You can do this very easily with a mapper that converts from Java Objects into JSON constructs. I use Jackson but there are other implementations.
First be sure you have Jackson library in your Java project. If you're using Maven you have to add a dependency. Just to be clear, AFAIK does not exist in JDK a common Json serializer/deserializer, so you must add a library in your project, ie a reference implementation of JSR 353 : Java API for JSON Processing
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.3.3</version>
</dependency>
Then you can convert Java Objects in Json with ObjectMapper
utility class.
import com.fasterxml.jackson.databind.ObjectMapper;
...
ObjectMapper mapper = new ObjectMapper();
String jsonResponse = mapper.writeValueAsString(skus);
or append to a StringBuilder
StringBuilder sb = new StringBuilder();
sb.append(mapper.writeValueAsString(skus));
You can use the Jackson Library.
ObjectMapper OBJECT_MAPPER = new ObjectMapper();
StringWriter stringWriter = new StringWriter();
OBJECT_MAPPER.writeValue(stringWriter, YOUR_LIST);
return stringWriter.toString();
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.