1. Simplemente coloque los pares de valor clave manualmente en Jsonobject, y luego póngase en el objeto JSONArray
Lista <artículo> al = articlemng.find (f); System.out.println (al.size ()); HttpservletResponse hsr = servletactionContext.getResponse (); if (null == al) {return; } para (Artículo A: AL) {System.out.println (a.getID ()+a.getDescription ()+a.gettitle ()); } JsonArray json = new JsonArray (); para (Artículo A: AL) {jsonObject Jo = new JsonObject (); Jo.put ("id", a.getId ()); Jo.put ("Título", A.Gettitle ()); Jo.put ("Desc", a.getdescription ()); json.put (Jo); } try {System.out.println (json.ToString ()); hsr.setcharacterEncoding ("UTF-8"); hsr.getWriter (). Write (json.ToString ()); } catch (ioException e) {E.PrintStackTrace (); }El código anterior JsonArray es el paquete org.json.jsonarray introducido
El método estático de JSONArray en el paquete net.sf.json: fromobject (lista) Esta es la forma de convertir JSON rápidamente en Internet, pero para los objetos asociados con operaciones en cascada, este método informará un error. Si se elimina la configuración en cascada en el archivo de asignación, estará bien.
Además, el requisito de la lista es que los elementos en ella son cadenas u objetos, de lo contrario, JSON no sabrá qué datos desea.
<Many-To-One name = "cmsent" column = "comment_tid" no-null = "false" cascade = "delete">
Sin embargo, las operaciones en cascada aún tienen que existir después de todo, de lo contrario, los datos serán redundantes y redundantes en el futuro.
La solución es: JSONArray Subsgs = JSonArray.FromObject (objeto, config);
JSONConfig config = new JsonConfig (); config.setJsonPropertyFilter (new PropertyFilter () {public boolean Aplice (Object Arg0, String Arg1, Object arg2) {if (arg1.equals ("artículo") || arg1.equals ("fans")) {return true;} else {return false;}}}); Descripción: Proporciona una función de filtrado. Si se encuentra un objeto asociado, se filtrará automáticamente y no ejecutará el objeto asociado. Aquí publico el código para configurar la asignación de relaciones en Hibernate para ayudar a comprender:
<
Resumir:
1. JSONArray Subsgs = JSonArray.FromObject (Subsesages, config); donde la configuración es opcional. Cuando ocurre la situación anterior, puede configurar los parámetros de configuración. Si no hay tal requisito anterior, puede usar directamente el método Fromobject (OBJ). Lo que convierte es los datos estándar del formato de objeto JSON, como sigue:
{["attr", "contenido", ...}, ...]}
2. JsonObject jtmsg = jsonObject.FromObject (themessage, config); Esto se usa especialmente para analizar POJO estándar, o objeto de mapa. No hace falta decir que el formato del objeto POJO es que la forma de mapa es como esta {"str", "str"}.
---------------------------------------------------------- 分割 ---------------------------------------------------------------------------------------
¡Para Jsonarray y JSON, solía vomitar antes! ! !
frijol
paquete com.nubb.bean; import java.io.Serializable; Public Class Person implementa serializable {private static final long serialversionUid = 1l; nombre de cadena privada; edad privada int; dirección de cadena privada; public String getName () {nombre de retorno; } public void setName (nombre de cadena) {this.name = name; } public int getAge () {return Age; } public void setAge (int Age) {this.age = edad; } public String getAddress () {Dirección de retorno; } public void setAddress (dirección de cadena) {this.address = dirección; }} Jsonutil
paquete com.nubb.test; import java.io.ioException; import java.nio.file.files; import java.nio.file.path; import java.nio.file.standardopenoption; import java.util.arraylist; import java.util.list; import Com.alibaba.fastic.json; com.nubb.bean.person; public class jsonserializer {private static final cadena default_charset_name = "utf-8"; public static <t> String Serialize (T Object) {return json.tojSonstring (objeto); } public static <t> t deserialize (cadena de cadena, clase <t> clz) {return json.parseObject (string, clz); } public static <t> t load (ruta ruta, clase <t> clz) lanza ioexception {return deserialize (new String (files.readallBytes (ruta), default_charset_name), clz); } public static <t> void save (ruta ruta, ob objeto) lanza ioexception {if (files.notexists (path.getParent ())) {files.createDirectororios (path.getParent ()); } Files.Write (Path, Serialize (Object) .getBytes (default_charset_name), StandardOpenOption.Write, StandardOpenOption.Create, StandardOpenOption.truncate_Existing); } public static void main (string [] args) {persona persona1 = nueva persona (); persona1.setaddress ("dirección"); persona1.setaje (11); persona1.setName ("Amao"); Persona persona2 = nueva persona (); persona2.setaddress ("dirección"); persona2.setaje (11); persona2.setName ("Amao"); Lista <Oll> lp = new ArrayList <Oller> (); lp.add (persona1); lp.add (persona2); System.out.println (Serialize (LP)); }}Producción:
La copia del código es la siguiente:
[{"Dirección": "Dirección", "Age": 11, "Nombre": "Amao"}, {"Dirección": "Dirección", "Age": 11, "Nombre": "Amao"}]
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.