Clase utilizada: net.sf.json.jsonobject
Cuando se usa JSON, además de importar el paquete JSON-LIB-2.2-JDK15.JAR descargado en el sitio web de JSON, debe haber varias otras dependencias: Commons-Beanutils.Jar, Commons-Httpclient.jar, Commons-Lang.jar, Ezmorph.jar, Morph-1.0.1.Jar
Aquí está el código de ejemplo:
// Json Conversion jsonObject jsonObj = jsonObject.FromObject (jSonstrBody); map <string, class> classMap = new HashMap <String, class> (); classMap.put ("Resultados", Weather_Baidu_City.Class); classMap.put ("índice", WeatherBean_Baidu_City_City.Class.class); classMap.put ("Weather_Data", WeatherBean_Baidu_City_WeatherData.class); // Convertir JSON a WeatherBean_Baidu WeatherBean_Baidu Weather = (WeatherBean_Baidu) jsonObject.Tobean (jsonobj, weatherbean_baidu.class, classMap); System.out.println (Weather.getResults ());Varios códigos de clase Java utilizados:
paquete com.lenovo.conference.entity.vo; import java.io.Serializable; import java.util.list;/** * bean Bean * * @author shanhy * */ @supresswarnings ("serial") clase pública weatherbean_baidu implementa serializable {error de cadena privada; // número de error en el estado privado; LIST <Weatherbean_baidu_city> resultados; // Conjunto de pronóstico meteorológico de la ciudad (porque varias ciudades se pueden consultar a la vez) public WeatherBean_Baidu () {super ();} public String getError () {Error de retorno;} public Void setError (String Error) {this.error = Error;} public String String getStatus () {return status;} status void setError) {this.Status = status;} public String getDate () {return date;} public void setDate (string date) {this.date = date;} public List <seatherBean_Baidu_city> getResults () {return resultados;} public void setResSes (list <WeatherBean_Baidu_City> Resultados) {this.RRessRes; paquete com.lenovo.conference.entity.vo; import java.io.Serializable; import java.util.list;/** * WeatherBean * * @author shanhy * */ @supressWarnings ("serial") clase pública WeatherBean_Baidu_City implementa serializable {private string Current City; // City String private StriCh PM25; Lista <WeatherBean_Baidu_City_index> index; // Exponent Set Private List <WeatherBean_Baidu_City_WeatherData> Weather_Data; // Colección de clima de varios días PublicBean_Baidu_city () {Super ();} public String getCurrentCity () {return CurrentCity;} PublicCity PublicCity (String Current CurrentCity (String Current Current CurrentCity. {this.currentCity = currentCity;}public String getPm25() {return pm25;}public void setPm25(String pm25) {this.pm25 = pm25;}public List<WeatherBean_Baidu_City_Index> getIndex() {return index;}public void setIndex(List<WeatherBean_Baidu_City_Index> index) {this.Index = index;} Lista pública <WeatherBean_Baidu_City_WeatherData> getWeather_Data () {return weather_data;} public void setweather_data (list <Weather_Baidu_City_WeatherData> Weather_data) {this.weather_data = Weather_data;}}} paquete com.lenovo.conference.entity.vo; import java.io.Serializable;/** * Bean de clima * * @author shanhy * */ @supresswarnings ("serial") clase pública weatherbean_baidu_city_weatherdata implementa serializable {fecha de cadena privada de la cadena privada; Private String Wind; // Dirección de viento Temperatura de cadena privada; // Temperatura public WeatherBean_Baidu_City_WeatherData () {super ();} public String getDate () {return date;} public void setDate (string date) {this.date = date;} public string getdaypictureUrl () {return daypictureRl;} public v setdaypictureurl (string string getdaypicteureUrl () {this.dayPictureUrl = dayPictureUrl;} public String getNightPictureUrl () {return NightPictureUrl;} public void setnightPictureUrl (String NightPictureUrl) {this.nightPictureUrl = NightPictureUrl;} public String GetWeather () {return Weather;} public void setweather (string (string (string Weather) String getwind () {return Wind;} public void setwind (string wind) {this.wind = wind;} public String getTemperature () {Temperatura de retorno;} public void setTemperature (temperatura de cadena) {this.temperature = temperatura;}} paquete com.lenovo.conference.entity.vo; import java.io.Serializable;/** * WeatherBean * * @author shanhy * */ @supressWarnings ("serial") clase pública WeatherBean_Baidu_City_Index implementa serializable {Título de cadena privada de cadena privada; public WeatherBean_Baidu_City_Index () {super ();} public String gettitle () {return title;} public void settitle (string title) {this.title = title;} public string getzs () {return ZS;} public void setzS (String ZS) settipt (string tip) {this.tip = tip;} public String getDes () {return des;} public void setDes (String des) {this.des = des;}}En el ejemplo, analice la cadena JSON correspondiente
{"Error": 0, "Estado": "éxito", "fecha": "2015-01-15", "Resultados": [{"CurrentCity": "nanjing", "pm25": "83", "index": [{"título": "ropa", "ZS": "Coholer", "tipt": "tope index", "des": "es referido a revertido a to to to to to to to to to to to to to to to to to to to to to to to to to to to to to to to to to to to to Las personas deben usar abrigos, abrigos de lana y suéteres ". "}, {" Título ":" Viajar "," ZS ":" Suministro "," Tipt ":" Turismo "," Tipt ":" Índice de turismo "," DES ":" El clima es mejor, la temperatura es ligeramente más baja, y se sentirá un poco genial, pero también es un buen clima para viajar, pero no se pierde la oportunidad! que "," tipt ":" fría Índice "," des ":" Todas las condiciones climáticas son adecuadas, no hay un proceso de enfriamiento obvio, y la probabilidad de un frío es baja. Si insiste en el ejercicio al aire libre, elija el ejercicio correcto y manténgase caliente. "}, {" Título ":" Intensidad UV "," ZS ":" Wintest "," Tip ":" Índice de intensidad UV "," Des ":" Índice de intensidad UV ganador "," DES ":" Por qué no es necesario el clima de radiación UV. Si está al aire libre durante mucho tiempo, se recomienda aplicar productos para el cuidado de la piel con protector solar con SPF entre 8 y 12. "}]," Weather_Data ": [{" Dat e ":" Jueves 15 de enero (tiempo real: 6 ℃), "DayPictureUrl": "http://api.map.baidu.com/images/weather/day/yin.png", "nightPictureUrl": "http://api.map.baidu.com/images/weather/night/duoyun.png", "Weather": "Cloud to Cloudy", "North" North "North" North "North", "noran brisa "," temperatura ":" 8 ~ 4℃"},{"date":"Friday","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/duoyun.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"cloud to Sunny "," Viento ":" Nivel del viento del noroeste 3-4 "," Temperatura ":" 12 ~ 0℃"},{"date":"Saturday","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/duoyun.png","weather":"Sunny to nublado "," viento ":" nivel del viento del noreste 3-4 "," temperatura ":" 8 ~ 0 ℃ "}, {" fecha ":" domingo "," daypictureUrl ":" http://api.map.baidu.com/images/weather/day/qing.png "," Nightp ICTUREURL ":" http://api.map.baidu.com/images/weather/night/qing.png "," clima ":" xing "," viento ":" occidental Breeze "," Temperatura ":" 10 ~ -1 ℃ "}]}, {" CurrentCity ":" Xuzhou "," PM25 ":" 154 "," índice ": [{" Título ":" ropa "," ZS ":" más fresco "," Consejo ":" Index de ropa "," Des ": se recomienda usar gruesas coats, Sweagues y otros ropa. Las personas viejas y débiles deben usar abrigos, abrigos de lana y suéteres de lana. "}, {" título ":" lavado de autos "," zs ":" más adecuado "," consejo ":" índice de lavado de autos "," des ":" más adecuado para lavar autos, no habrá lluvia o menos energía eólica en el futuro. Se puede mantener un automóvil recién fregado durante al menos un día. "}, {" título ":" viajar "," zs ":" complementario "," consejo ":" índice de turismo "," des ":" el clima es mejor, pero no afectará su estado de ánimo cuando viaje. La temperatura es adecuada y la brisa está acompañada de, lo que la hace adecuada para viajar. "}, {" título ":" frío "," zs ":" fácil "," consejo ":" es más probable que ocurra el clima frío, así que agregue la ropa apropiadamente. Amigos con constituciones débiles deben prestar especial atención a la protección. "}, {" título ":" ejercicio "," zs ":" no adecuado "," consejo ":" índice deportivo "," des ":" el clima es mejor, pero teniendo en cuenta el clima frío, se recomienda que realice varios deportes interiores. Si hace ejercicio al aire libre, preste atención a mantener el calor y la preparación para las actividades. "}, {" Título ":" Intensidad UV "," ZS ":" Wintest "," Tip ":" Índice de intensidad UV "," Des ":" Es un clima débil de radiación UV y no se requiere una protección especial. Si está al aire libre durante mucho tiempo, se recomienda aplicar productos para el cuidado de la piel con protector solar con SPF entre 8-12. "}]," weather_data ": [{" fecha ":" Jueves 15 de enero (tiempo real: 6℃)","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/duoyun.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/duoyun.png","weather":"cloudy","wind":"South brisa "," temperatura ":" 10 ~ 3 ℃ "}, {" fecha ":" viernes "," daypictureUrl ":" http://api.map.baidu.com/images/weather/day/duoyun.png "," nightp ICTUREURL ":" http://api.map.baidu.com/images/weather/night/duoyun.png "," clima ":" nublado "," viento ":" norte Nivel de viento 3-4 "," Temperatura ":" 11 ~ -4 ℃ "}, {" fecha ":" sábado "," daypictureUrl ":" http://api.map.baidu.com/images/weather/day/duoyun.png "," nigh tpictureUrl ":" http://api.map.baidu.com/images/weather/night/duoyun.png "," clima ":" nublado "," viento ":" este brisa del viento "," temperatura ":" 6 ~ -4 ℃ "}, {" fecha ":" domingo "," daypictureUrl ":" http://api.map.baidu.com/images/weather/day/duoyun.png "," Nightpi ctureurl ":" http://api.map.baidu.com/images/weather/night/duoyun.png "," clima ":" nublado "," viento ":" westerly Nivel de viento 3-4 "," Temperatura ":" 11 ~ -1 ℃ "}]}]}]}El método anterior para convertir las cadenas JSON en objetos en Java (incluidas las colecciones de listas de múltiples capas) es todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.