1. Просто поместите пары ключей вручную в jsonObject, а затем поместите в объект jsonarray
Список <статья> al = articLemng.find (f); System.out.println (al.size ()); Httpservletresponse hsr = servletactionContext.getResponse (); if (null == al) {return; } для (статья A: al) {system.out.println (a.getid ()+a.getdescription ()+a.gettitle ()); } Jsonarray json = new jsonarray (); для (статья A: al) {jsonObject jo = new jsonObject (); jo.put ("id", a.getid ()); jo.put ("title", a.gettitle ()); jo.put ("desc", a.getdescription ()); json.put (jo); } try {System.out.println (json.toString ()); hsr.setcharacterencoding ("UTF-8"); hsr.getWriter (). написать (json.tostring ()); } catch (ioException e) {e.printstackTrace (); }Приведенный выше код jsonarray - это введенный пакет org.json.jsonarray
Статический метод jsonarray в рамках пакета net.sf.json: FromObject (список) Это способ быстро преобразовать JSON в Интернете, но для целостных операций, связанных с распущенными каскадными операциями, этот метод сообщит об ошибке. Если конфигурация каскада в файле отображения удаляется, все будет хорошо.
Кроме того, требование для списка состоит в том, что элементы в нем - это строки или объекты, в противном случае JSON не узнает, какие данные вы хотите.
<много-один name = "cmsent" colun = "comment_tid" not null = "false" cascade = "delete">
Тем не менее, каскадные операции все еще должны существовать в конце концов, в противном случае данные будут избыточными и избыточными в будущем.
Решение: jsonarray submsgs = jsonarray.fromobject (Object, config);
Jsonconfig config = new jsonconfig (); config.setjsonpropertyfilter (new Propertyfilter () {public boolean Apply (Object arg0, string arg1, object arg2) {if (arg1.equals ("article") || arg1.equals ("fans")) {return true;} else {return false;}}}); Описание: предоставляет функцию фильтрации. Если встречается связанный объект, он будет автоматически отфильтровать и не выполнит связанный объект. Здесь я публикую код для настройки отображения отношений в Hibernate, чтобы помочь понять:
<!-- Configure the relationship between topics and groups --> <many-to-one name="article" column="article_id"/> <!-- Configure the relationship between topic posts and posts replied --> <set name="subMessages" table="sub_message" inverse="true" cascade="all" lazy="false" order-by="date asc"> <key column="theme_id" /> <one-to-many /> </set>
Суммировать:
1. Jsonarray submsgs = jsonarray.fromobject (Sumsessages, config); где конфигурация необязательно. Когда возникает вышеупомянутая ситуация, вы можете настроить параметры конфигурации. Если выше нет такого требования, вы можете напрямую использовать метод FromObject (OBJ). Что он преобразует, так это стандартные данные формата объекта JSON, следующим образом:
{["attr", "content", ...}, ...]}
2. jsonObject jtmsg = jsonObject.fromObject (Themessage, config); Это специально используется для анализа стандартного POJO или объекта MAP. Само собой разумеется, формат объекта Pojo - это форма карты, подобная этой {"str", "str"}.
---------------------------------------------------------- 分割 ------------------------------------------------------------------------------------------------
Для Jsonarray и Json я раньше рвал! ! !
фасоль
Пакет com.nubb.bean; импорт java.io.serializable; публичное класс лиц реализует сериализуемые {частный статический окончательный длинный сериал ряд = 1L; Приватное название строки; частный int возраст; частный строковый адрес; public String getName () {return name; } public void setName (string name) {this.name = name; } public int getage () {return Age; } public void setage (int age) {this.age = age; } public String getAddress () {return Adder; } public void setAddress (строковый адрес) {this.address = address; }} Jsonutil
Пакет com.nubb.test; импорт java.io.ioexception; импорт java.nio.file.files; импорт java.nio.file.path; импорт java.nio.file.standardopenoption; import java.util.arraylist; import.util.list; importmaliba.avly.json; com.nubb.bean.person; public class jsoneserializer {частная статическая конечная строка default_charset_name = "utf-8"; public static <t> string serialize (t object) {return json.tojsonstring (object); } public static <t> t deserialize (String String, Class <t> clz) {return json.parseobject (String, clz); } public static <t> t нагрузка (путь пути, класс <t> clz) бросает ioException {return deserialize (new String (files.readallbytes (path), default_charset_name), clz); } public static <t> void save (path Path, t объект) бросает ioException {if (files.notexists (path.getParent ())) {files.createdirectories (path.getParent ()); } Файлы. } public static void main (String [] args) {Person Person1 = new Person (); Person1.setAddress ("адрес"); Person1.setage (11); Person1.setName ("amao"); Человек 2 = новый человек (); Person2.setAddress («адрес»); Person2.setage (11); person2.setname ("amao"); Список <Derson> lp = new ArrayList <derss> (); LP.Add (Person1); LP.Add (Person2); System.out.println (serialize (lp)); }}Выход:
Кода -копия выглядит следующим образом:
[{«Адрес»: «Адрес», «Возраст»: 11, «Имя»: «Амао»}, {«Адрес»: «Адрес», «Возраст»: 11, «Имя»: «Амао»}]
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.