Www.helper3.com
热门关键字: php net javascript java
Struts2基础 专题
专题目录
您的位置:java > Struts2基础专题 > Struts2和JSON实例
Struts2和JSON实例
作者:--    发布时间:2019-11-20 10:18:49
在这个struts2例子,将学习如何通过“struts2-json-plugin.jar”库将对象转换为json格式的数据。

1. action (json)

这是一个将被转换成json格式的 action 类。
package com.h3.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 list<string> lists = new arraylist<string>();
	private map<string, string> maps = new hashmap<string, string>();
	
	//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<string> getlists() {
		return lists;
	}

	public void setlists(list<string> lists) {
		this.lists = lists;
	}

	public map<string, string> getmaps() {
		return maps;
	}

	public void setmaps(map<string, string> maps) {
		this.maps = maps;
	}
	
}

3. struts.xml

要输出json数据,需要声明一个包,它扩展“json-default”,会将结果类型转为“json”。
<?xml version="1.0" encoding="utf-8" ?>
<!doctype struts public
"-//apache software foundation//dtd struts configuration 2.0//en"
"http://struts.apache.org/dtds/struts-2.0.dtd">
 
<struts>

   <constant name="struts.devmode" value="true" />
	
   <package name="default" namespace="/" extends="json-default">
      <action name="getjsonresult" 
           class="com.h3.common.action.jsondataaction">
       	   <result type="json" />
      </action>
    </package>
	
</struts>

4. 实例

访问动作url时,jsondataaction属性将被转换成json格式。

http://localhost:8080/struts2json/getjsonresult.action

json 格式 …

{
   "lists":["list-1","list-2","list-3","list-4","list-5"],
   "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插件在struts2是如何工作的有一个总体的思路。不过,还是有很多有用的参数不包括在这里,请务必阅读 struts2 json插件文档 以获取更多详细信息。

下载源代码(struts2json) – http://pan.baidu.com/s/1bnv8l9x


滚动到顶部 滚动到底部
网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
QQ群:570078429
网站备案号:
粤ICP备17073857号