`

Struts2与Gson开发

 
阅读更多
struts2.xml配置信息:
action name="getGsonAction" class="com.test.action.json.GetGsonAction"></action>

Action对象:
package com.test.action.json;

import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;

import com.google.gson.Gson;
import com.opensymphony.xwork2.ActionSupport;

public class GetGsonAction extends ActionSupport
{
@Override
public String execute() throws Exception
{
List<People> list = new ArrayList<People>();

// Info of first user
People people1 = new People();

Address address1 = new Address();
address1.setHomeAddress("beijing");
address1.setCompanyAddress("shanghai");

people1.setId(1);
people1.setName("zhangsan");
people1.setAddress(address1);

People people11 = new People();
people11.setId(5);
people11.setName("zhangsan's friend1");

People people12 = new People();
people12.setId(6);
people12.setName("zhangsan's friend2");

List<People> list1 = new ArrayList<People>();
list1.add(people11);
list1.add(people12);

people1.setFrield(list1);

//Info of second user
People people2 = new People();

Address address2 = new Address();
address2.setHomeAddress("liaoning");
address2.setCompanyAddress("fujian");

people2.setId(2);
people2.setName("lisi");
people2.setAddress(address2);

People people21 = new People();
people21.setId(10);
people21.setName("lisi's friend1");

People people22 = new People();
people22.setId(11);
people22.setName("lisi's friend2");

List<People> list2 = new ArrayList<People>();
list2.add(people21);
list2.add(people22);

people2.setFrield(list2);

// put all the users into result list
list.add(people1);
list.add(people2);

Gson gson = new Gson();

String result = gson.toJson(list);

HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/json; charset=utf-8");
response.setHeader("Cache-Control", "no-cache"); //取消浏览器缓存

PrintWriter out = response.getWriter();
out.print(result);

out.flush();
out.close();

return null;
}
}


Address对象:
package com.test.action.json;

public class Address {

private String homeAddress;
private String companyAddress;
public String getHomeAddress() {
return homeAddress;
}
public void setHomeAddress(String homeAddress) {
this.homeAddress = homeAddress;
}
public String getCompanyAddress() {
return companyAddress;
}
public void setCompanyAddress(String companyAddress) {
this.companyAddress = companyAddress;
}
}

People对象:
package com.test.action.json;

import java.util.List;

public class People {

private int id;
private String name;
private Address address;
private List<People> frield;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
public List<People> getFrield() {
return frield;
}
public void setFrield(List<People> frield) {
this.frield = frield;
}


}
分享到:
评论

相关推荐

    struts2~json~gson~jquery~ajax简单应用

    ### Struts2、JSON、Gson、jQuery与Ajax简单应用详解 #### 一、概述 在Web开发领域,Struts2、JSON、Gson、jQuery和Ajax是几个非常重要的技术,它们各自扮演着不同的角色,但又能够很好地协同工作来构建高效、交互...

    Struts2搭建简易javaWeb后台

    Struts2是一个强大的Java Web开发框架,用于构建和维护可扩展、优雅且易于维护的Web应用程序。本教程将介绍如何使用Struts2搭建一个简单的JavaWeb后台,包括创建一个名为"login"的Action,该Action能够处理用户请求...

    Android+struts2+JSON方式的手机开发

    在Android应用开发中,结合Struts2框架和JSON(JavaScript Object Notation)技术可以实现高效的数据交互。这个项目可能是为了创建一个使用Android客户端通过HTTP请求与服务器进行数据交换的示例。Struts2是一个强大...

    struts2所需的包和Struts2_json所需包

    而Struts2与JSON的集成则进一步增强了其功能,使得数据交换更为简洁,特别是在AJAX和移动应用中。 在标题和描述中提到的"struts2所需的包和Struts2_json所需包",主要是指为了实现Struts2框架与JSON数据交互所需要...

    AJAX和struts2传递JSON数组

    而Struts2是一个基于MVC(Model-View-Controller)架构的Java Web框架,它极大地简化了Java应用程序的开发。在本场景中,我们将探讨如何使用AJAX来传递JSON数组,并在Struts2的Action中接收和处理这些数据。 首先,...

    Struts2+Json+Android简单实现

    Struts2、JSON和Android是三个在Web应用开发中至关重要的技术。本示例将详细介绍如何结合这三者实现一个简单的交互。 首先,Struts2是一个基于MVC(Model-View-Controller)架构的Java Web框架,它简化了创建动态、...

    struts2与json插件(2)

    在Struts2中,JSON(JavaScript Object Notation)插件是用于处理JSON数据交换的重要组件,这使得Struts2能够与前端的AJAX或者JavaScript进行高效的数据交互。JSON是一种轻量级的数据交换格式,易于人阅读和编写,...

    struts dom4j json gson xml 拦截器 类型转换

    Struts、DOM4J、JSON、Gson与XML都是在IT行业中常见的技术,尤其是在Web开发领域。这些技术分别扮演着不同的角色,共同构建了高效、灵活的Web应用程序。以下是关于这些技术的详细解释: 1. **Struts**: Struts是...

    Android开发HTTP传输数据到Struts2生成Json数据案例

    Struts2是一个流行的Java Web开发框架,它提供了强大的MVC(模型-视图-控制器)架构支持。在Struts2中,我们可以创建一个Action类来接收和处理HTTP请求。为了接收JSON数据,需要在Action类的方法上使用`@Action(...

    Struts2 必需类库.zip

    这个“Struts2 必需类库.zip”文件包含了开发Struts2应用所必需的核心库和依赖组件。在深入理解这些类库之前,我们先来了解一下Struts2的基础概念。 Struts2框架的核心组件包括: 1. **Action**: 表示业务逻辑的...

    Struts2.1.8 AJAX 读取XML,GSON,jQuery JSON

    在本案例中,Struts2.1.8与AJAX结合,用于从服务器获取数据并动态更新视图,同时涉及了XML、GSON和jQuery JSON三种数据交换格式。 XML(Extensible Markup Language)是一种标记语言,常用于数据交换,特别是在前后...

    json+struts2的jar

    1. **JSON与Struts2的集成**:Struts2提供了与JSON的集成支持,允许开发者通过配置Action类返回JSON格式的数据。这在实现AJAX(Asynchronous JavaScript and XML)请求时非常有用,可以实现页面的无刷新更新。 2. *...

    struts2-json

    Struts2是一个非常著名的Java Web框架,用于构建企业级...总的来说,Struts2与JSON的结合简化了Web应用的开发流程,提高了数据交换的效率。但是,同时也需要关注其安全性,确保在享受便利的同时,不会引入潜在的风险。

    Eclipse+Struts2+Spring+MyBatis+json+gson环境搭建

    在本文中,我们将探讨如何在Eclipse环境中搭建一个基于Struts2、Spring、MyBatis的SSM框架,并结合JSON和Gson库进行开发。首先,我们需要准备相关的安装文件,包括Struts2、Spring、MyBatis、jQuery、Eclipse IDE...

    struts2-jsondemo

    Struts2是一个强大的MVC(模型-视图-控制器)框架,它被广泛应用于Java Web开发中,提供了灵活的控制层来处理用户请求并管理业务逻辑。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和...

    struts2返回json

    在Struts2中,返回JSON(JavaScript Object Notation)数据类型是一种常见的需求,尤其是在开发AJAX或者前后端分离的应用时。JSON是一种轻量级的数据交换格式,它允许服务器向客户端发送结构化的数据,而无需解析...

    struts2+json的使用

    一、Struts2与JSON集成的必要性 在传统的Web开发中,服务器通常返回HTML页面来更新客户端视图。然而,随着AJAX(Asynchronous JavaScript and XML)技术的发展,现在更倾向于异步请求,只更新部分页面内容。JSON...

    struts2和json的jar包

    4. `jackson*.*.jar` 或 `gson-*.jar`: 这些是其他的JSON库,例如Jackson或Gson,它们也可以与Struts2一起工作,提供更灵活的对象-JSON绑定。 导入这些jar包后,开发者可以在Struts2配置文件中定义JSON结果类型,...

    jquery+struts2实现异步刷新锁需要的包

    在本场景中,我们关注的是如何使用jQuery库与Struts2框架来实现这样的功能。jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理以及AJAX交互。Struts2是一个基于MVC设计模式的Java Web框架,它提供了丰富的...

    struts2 ztree

    在描述中提到的"2.2版本",是指Struts2的特定版本,该版本可能引入了某些特定的功能或API,我们需要确保我们的代码与之兼容。 在Struts2中实现ZTree功能,主要涉及以下几个关键知识点: 1. **JSON数据格式**:...

Global site tag (gtag.js) - Google Analytics