`

Struts使用Json插件,两种配置方法

    博客分类:
  • Json
阅读更多

 

第一种:使用配置文件

1>我们新建一个配置文件struts-ajax.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
	<package name="ajax-json-plugin" extends="json-default">
		  <action name="employeeJson" class="com.kaishengit.action.AjaxAction">
			<result name="success" type="json">
				<param name="root">employeeList</param>
				<param name="noCache">true</param>
				<param name="enableGZIP">true</param>
				<param name="excludeNullProperties">true</param>
			</result>
		</action>  
	</package>
</struts>
 

2>我们将此配置文件导入主配置文件struts.xml中

 

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
	"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
	
	<include file="struts-ajax.xml"></include>
	<package name="myPackage" extends="struts-default">
	
	</package>
</struts>

 

 3>客户端index.jsp,我使用的是Jquery结合Json

 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>json</title>
  </head>
  
  <body>
    
    
    <script type="text/javascript" src="js/jquery.js"></script>
    <script type="text/javascript">
    	$(document).ready(function(){
    		$.get("employeeJson.action",function(json){
    			alert(json);
    		});
    	});
    </script>
  </body>
</html>
 

 

4>服务端代码

 

package com.kaishengit.action;

import java.util.ArrayList;
import java.util.List;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.springframework.beans.factory.annotation.Autowired;

import com.kaishengit.service.EmployeeService;

public class AjaxAction {
	private EmployeeService employeeService;
	private List<Employee> employeeList;
	
	public String execute(){
		
		employeeList = employeeService.findAllByJson();
		
		return "success";
	}
	

	public List<Employee> getEmployeeList() {
		return employeeList;
	}
	public void setEmployeeList(List<Employee> employeeList) {
		this.employeeList = employeeList;
	}

	@Autowired
	public void setEmployeeService(EmployeeService employeeService) {
		this.employeeService = employeeService;
	}
	
}

 

这样就ok啦

第二种:使用annotation(注解)

 

1>我们新建一个配置文件struts-ajax.xml,把其中Action节点去除

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
	<package name="ajax-json-plugin" extends="json-default"/> 
</struts>
 

2>我们将此配置文件导入主配置文件struts.xml中(跟第一种一样)

 

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
	"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
	
	<include file="struts-ajax.xml"></include>
	<package name="myPackage" extends="struts-default">
	
	</package>
</struts>

 

 3>客户端index.jsp,我使用的是Jquery结合Json(跟第一种一样)

 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>json</title>
  </head>
  
  <body>
    
    
    <script type="text/javascript" src="js/jquery.js"></script>
    <script type="text/javascript">
    	$(document).ready(function(){
    		$.get("employeeJson.action",function(json){
    			alert(json);
    		});
    	});
    </script>
  </body>
</html>
 

 

4>服务端代码,使用annotation(注解)

 

package com.kaishengit.action;

import java.util.ArrayList;
import java.util.List;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.springframework.beans.factory.annotation.Autowired;

import com.kaishengit.service.EmployeeService;

@ParentPackage(value="ajax-json-plugin")
public class AjaxAction {
	private EmployeeService employeeService;
	private List<Employee> employeeList;
	
	@Action(value="employeeJson",results={@Result(name="success",params={"root","employeeList","noCache","true","enableGZIP","true","excludeNullProperties","true"},type="json")})
	public String execute(){
		
		employeeList = employeeService.findAllByJson();
		
		return "success";
	}
	
	
	
	public List<Employee> getEmployeeList() {
		return employeeList;
	}
	public void setEmployeeList(List<Employee> employeeList) {
		this.employeeList = employeeList;
	}


	@Autowired
	public void setEmployeeService(EmployeeService employeeService) {
		this.employeeService = employeeService;
	}
	
	
}

  ok!

 

 

分享到:
评论

相关推荐

    struts2的json插件

    使用Struts2 JSON插件的步骤大致如下: 1. **添加依赖**:将对应的jar文件添加到项目的类路径中。 2. **配置struts.xml**:在配置文件中声明JSON插件,并指定需要返回JSON的Action。 3. **Action类和结果**:在...

    使用Struts2的JSON插件来实现JSON数据传递

    Struts2 JSON插件的安装与配置是使用其功能的第一步。首先,你需要将struts2-json-plugin相关的JAR文件添加到项目的类路径中。然后,在Struts2的配置文件struts.xml中启用JSON插件,通常通过以下配置实现: ```xml ...

    struts 2.0 与 2.1 需要的json插件

    下面我们将详细探讨Struts 2的JSON支持以及如何配置和使用JSON插件。 1. **JSON插件的安装** - JSON插件通常作为一个独立的JAR文件提供,比如`struts2-json-plugin-x.x.x.jar`,你需要将其添加到项目的类路径中。 ...

    struts2返回JSON数据的两种方式

    在本文中,我们将探讨两种在Struts2框架中返回JSON数据的方法。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端交互,尤其是在AJAX请求中。Struts2提供了一套方便的机制来支持JSON...

    struts2.1.8 json 插件

    struts2.1.8 json 插件,官网上本来是有的,放在这里为大家方便下载。

    struts2+json

    在Struts2中集成JSON支持,首先需要添加相应的依赖,比如struts2-json-plugin,这个插件提供了JSON结果类型。当Action执行完毕后,可以返回一个JSON结果类型,Struts2会自动将Action的属性转换为JSON格式并返回给...

    struts2 json

    Struts2 JSON是一个在Java开发中广泛使用的框架,它允许开发者在Struts2应用程序中方便地处理JSON(JavaScript Object Notation)数据。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和...

    struts2与json整合

    具体来说,插件中的`struts-plugin.xml`配置文件定义了一个名为`json-default`的包,其中包含了`JSONResult`和`JSONInterceptor`两种结果类型和拦截器,它们是处理JSON数据的核心组件。 #### 2. 配置Struts2的XML...

    Struts2.5操作JSON相关jar包

    在Struts2中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,广泛应用于前后端交互,使得数据传输更加高效。本知识点主要围绕Struts2.5操作JSON的相关jar包进行详细介绍。 首先,`json包和...

    struts2-json-plugin

    struts2-json-plugin,Struts JSON插件

    Struts2 json插件入门指南.pdf

    本文介绍了如何使用Struts2的JSON插件处理JSON数据。通过不同的配置选项和示例,读者可以了解到如何灵活地控制返回的JSON数据格式。无论是使用XML配置还是注解方式,Struts2都提供了丰富的选项来满足不同的需求。...

    struts2乱码与json插件(1)

    在这个主题中,“struts2乱码与json插件”主要关注两个方面:字符编码问题和JSON数据交互。 **字符编码问题** 在开发web应用时,乱码问题经常出现,尤其是在处理用户输入或显示非ASCII字符时。Struts2框架默认使用...

    struts2的json插件配置详解(附示例strutsJson)

    在Struts2中,JSON(JavaScript Object Notation)插件是实现前后端数据交互的重要工具,尤其在当今Web开发中,JSON由于其轻量级、易读性强的特点,被广泛用于API接口的数据传输。这篇博客将深入讲解Struts2的JSON...

    json+struts2插件

    这可以实现struts和json的整合 &lt;struts&gt; &lt;package name="demo" extends="json-default"&gt; &lt;result type="json"/&gt; &lt;/action&gt; &lt;/struts&gt;

    struts整合json用到Jar.zip

    9. **版本兼容性**:确保使用的Struts2版本和JSON插件版本兼容,避免出现不兼容的问题。 以上就是关于Struts整合JSON的基本知识点,通过这些步骤,开发者可以让Struts2应用能够便捷地与客户端进行JSON数据的交互,...

    Struts2返回JSON对象的方法总结完整实例

    如果是作为客户端的HTTP+JSON接口工程,没有JSP等view视图的情况下,使用Jersery框架开发绝对是第一选择。... Struts2返回JSON有两种方式:1.使用Servlet的输出流写入JSON字符串;2.使用Struts2对JSON的扩展。

    struts2-json-plugin源码

    5. **Action与模型驱动**:如果Action使用模型驱动模式,那么JSON插件可以直接将Action的Model对象转换为JSON,无需手动设置每个属性。 6. **类型转换**:Struts2的类型转换器在处理JSON请求时起着关键作用,将JSON...

    struts2要使用json必须的两个包

    在Struts2中使用JSON,有两个关键的JAR包是必不可少的,这些正是`struts2-json-plugin-2.2.1.jar`和`json-lib-2.3-jdk15.jar`。 首先,`struts2-json-plugin-2.2.1.jar`是Struts2 JSON插件的实现库。这个插件为...

    json-lib-2.1.jar和struts2-json-plugin-2.1.8.1.jar

    这个插件允许开发者在Struts 2中轻松地创建能够返回JSON的Action,使得前端(通常使用JavaScript库如jQuery)可以获取到JSON数据并进行进一步处理。 现在我们来详细讨论这两个库在实际应用中的作用: 1. **json-...

    struts2的json插件实例

    本实例将详细介绍如何在Struts2项目中配置并使用JSON插件,以及如何创建一个简单的JSON响应。 首先,我们需要在Struts2项目的`struts.xml`配置文件中启用JSON插件。这通常涉及到以下几个步骤: 1. 引入插件依赖:...

Global site tag (gtag.js) - Google Analytics