Пример Struts 2 и JSON
В примере Struts 2 вы узнаете, как преобразовать объект в формат JSON с помощью библиотеки «struts2-json-plugin.jar
».
1. Получить библиотеку зависимостей
Получите библиотекуstruts2-json-plugin.jar.
pom.xml
org.apache.struts struts2-core 2.1.8 org.apache.struts struts2-json-plugin 2.1.8
2. Действие (JSON)
Это класс Action, который будет преобразован в формат JSON.
package com.example.common.action; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import com.opensymphony.xwork2.Action; public class JSONDataAction{ private String string1 = "A"; private String[] stringarray1 = {"A1","B1"}; private int number1 = 123456789; private int[] numberarray1 = {1,2,3,4,5,6,7,8,9}; private Listlists = new ArrayList (); private Map maps = new HashMap (); //no getter method, will not include in the JSON private String string2 = "B"; public JSONDataAction(){ lists.add("list1"); lists.add("list2"); lists.add("list3"); lists.add("list4"); lists.add("list5"); maps.put("key1", "value1"); maps.put("key2", "value2"); maps.put("key3", "value3"); maps.put("key4", "value4"); maps.put("key5", "value5"); } public String execute() { return Action.SUCCESS; } public String getString1() { return string1; } public void setString1(String string1) { this.string1 = string1; } public String[] getStringarray1() { return stringarray1; } public void setStringarray1(String[] stringarray1) { this.stringarray1 = stringarray1; } public int getNumber1() { return number1; } public void setNumber1(int number1) { this.number1 = number1; } public int[] getNumberarray1() { return numberarray1; } public void setNumberarray1(int[] numberarray1) { this.numberarray1 = numberarray1; } public List getLists() { return lists; } public void setLists(List lists) { this.lists = lists; } public Map getMaps() { return maps; } public void setMaps(Map maps) { this.maps = maps; } }
3. struts.xml
Чтобы вывести данные JSON, вам необходимо объявить пакет, расширяющий «json-default», и тип результата как «json».
4. Demo
Получите доступ к URL-адресу действия,JSONDataAction’s properties будет преобразован в формат JSON.
http://localhost:8080/Struts2Example/getJSONResult.action
Формат JSON…
{ "lists":["list1","list2","list3","list4","list5"], "maps": { "key4":"value4","key3":"value3","key5":"value5","key2":"value2","key1":"value1" }, "number1":123456789, "numberarray1":[1,2,3,4,5,6,7,8,9], "string1":"A", "stringarray1":["A1","B1"] }
Надеюсь, этот супер простой пример может дать вам общее представление о том, как плагин JSON работал со Struts 2. Тем не менее, многие полезные настройки все еще не описаны, поэтому обязательно прочтите документациюStruts 2 JSON plugin для получения более подробной информации.
Скачать исходный код
Скачать -Struts2-JSON-Example.zip