Вы можете циклически просматривать значения itemName
, cartId
и т. Д., Точно так же, как вы проходите по массиву транзакций.
Итак, вместо:
{{itemName}}
Попробуйте что-то вроде:
{{#itemName}}
{{itemName}}
{{/itemName}}
См. документы по усам в разделе, озаглавленном «Непустые списки». .
Подготовить байты для отправки:
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutput out = null;
try {
out = new ObjectOutputStream(bos);
out.writeObject(yourObject);
out.flush();
byte[] yourBytes = bos.toByteArray();
...
} finally {
try {
bos.close();
} catch (IOException ex) {
// ignore close exception
}
}
Создать объект из байтов:
ByteArrayInputStream bis = new ByteArrayInputStream(yourBytes);
ObjectInput in = null;
try {
in = new ObjectInputStream(bis);
Object o = in.readObject();
...
} finally {
try {
if (in != null) {
in.close();
}
} catch (IOException ex) {
// ignore close exception
}
}
Платформа Spring org.springframework.util.SerializationUtils
byte[] data = SerializationUtils.serialize(obj);
Другой интересный метод от com.fasterxml.jackson.databind.ObjectMapper
byte[] data = new ObjectMapper().writeValueAsBytes(JAVA_OBJECT_HERE)
Зависимость Знатока
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>