Struts 2配置 JSON JAVA生成json数据与 json数据解析
2016-04-15 12:08
537 查看
Struts.xml文件配置
<?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>
<package name="ajax" extends="json-default">
<action name="jqlResult" class="lotteryTrendAjaxAction" method="jqlResult">
<!-- 返回类型为json 在json-default中定义 -->
<result type="json"></result>
</action>
</package>
</struts>
在JAVA中构造和解析JSON我用的是org.json,附件为相应的org.json.jar.
下面是两个函数,一个是创建JSON,一个是从文本构造JSON并解析之。
创建json
Java代码
//construct json and output it
public String jsonTest() throws JSONException{
JSONObject json=new JSONObject();
JSONArray jsonMembers = new JSONArray();
JSONObject member1 = new JSONObject();
member1.put("loginname", "zhangfan");
member1.put("password", "userpass");
member1.put("email","10371443@qq.com");
member1.put("sign_date", "2007-06-12");
jsonMembers.put(member1);
JSONObject member2 = new JSONObject();
member2.put("loginname", "zf");
member2.put("password", "userpass");
member2.put("email","8223939@qq.com");
member2.put("sign_date", "2008-07-16");
jsonMembers.put(member2);
json.put("users", jsonMembers);
return json.toString();
}
解析json
Java代码
//construct json from String and resolve it.
public String jsonTest2() throws JSONException{
String jsonString="{\"users\":[{\"loginname\":\"zhangfan\",\"password\":\"userpass\",\"email\":\"10371443@qq.com\"},{\"loginname\":\"zf\",\"password\":\"userpass\",\"email\":\"822393@qq.com\"}]}";
JSONObject json= new JSONObject(jsonString);
JSONArray jsonArray=json.getJSONArray("users");
String loginNames="loginname list:";
for(int i=0;i<jsonArray.length();i++){
JSONObject user=(JSONObject) jsonArray.get(i);
String userName=(String) user.get("loginname");
if(i==jsonArray.length()-1){
loginNames+=userName;
}else{
loginNames+=userName+",";
}
}
return loginNames;
}
JAVA中处理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>
<package name="ajax" extends="json-default">
<action name="jqlResult" class="lotteryTrendAjaxAction" method="jqlResult">
<!-- 返回类型为json 在json-default中定义 -->
<result type="json"></result>
</action>
</package>
</struts>
在JAVA中构造和解析JSON我用的是org.json,附件为相应的org.json.jar.
下面是两个函数,一个是创建JSON,一个是从文本构造JSON并解析之。
创建json
Java代码
//construct json and output it
public String jsonTest() throws JSONException{
JSONObject json=new JSONObject();
JSONArray jsonMembers = new JSONArray();
JSONObject member1 = new JSONObject();
member1.put("loginname", "zhangfan");
member1.put("password", "userpass");
member1.put("email","10371443@qq.com");
member1.put("sign_date", "2007-06-12");
jsonMembers.put(member1);
JSONObject member2 = new JSONObject();
member2.put("loginname", "zf");
member2.put("password", "userpass");
member2.put("email","8223939@qq.com");
member2.put("sign_date", "2008-07-16");
jsonMembers.put(member2);
json.put("users", jsonMembers);
return json.toString();
}
解析json
Java代码
//construct json from String and resolve it.
public String jsonTest2() throws JSONException{
String jsonString="{\"users\":[{\"loginname\":\"zhangfan\",\"password\":\"userpass\",\"email\":\"10371443@qq.com\"},{\"loginname\":\"zf\",\"password\":\"userpass\",\"email\":\"822393@qq.com\"}]}";
JSONObject json= new JSONObject(jsonString);
JSONArray jsonArray=json.getJSONArray("users");
String loginNames="loginname list:";
for(int i=0;i<jsonArray.length();i++){
JSONObject user=(JSONObject) jsonArray.get(i);
String userName=(String) user.get("loginname");
if(i==jsonArray.length()-1){
loginNames+=userName;
}else{
loginNames+=userName+",";
}
}
return loginNames;
}
JAVA中处理JSON还是相当方便的。
相关文章推荐
- eclipse的文件同步插件
- Java中值传递和引用传递实例
- 【Spring实战】—— 9 AOP环绕通知
- Open JDK 建立SSL失败的问题
- 转:如何查看MyEclipse包含的Eclipse的版本号
- java中解决构造函数中成员变量和形参重名的问题
- java实现栈
- spring4.2+spring mvc +spring data+jpa+hibernate的程序构架
- java中静态代码块的用法 static用法详解
- 转:myeclipse和eclipse的区别和联系,以及版本间的对应关系
- springmvc向页面传值时对list去重
- 转: MyEclipse 10.0,9.0,8.0 下添加jadClipse反编译插件
- eclipse常用20个快捷键
- Java并发编程:Lock
- spring aop中的propagation的7种配置的意思
- 基于配置的Spring AOP
- Editplus如何进行JAVA程序编译调试
- java生成图片验证码实例代码
- SpringMVC、MyBatis声明式事务管理+AOP配置
- Java 二分查找