首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Struts 2:如何将 JSON 发送到操作

在 Struts 2 中,将 JSON 发送到操作的方法如下:

  1. 首先,确保已经在项目中添加了 Struts 2 和 JSON 插件的依赖。
  2. 在 Struts 2 配置文件(struts.xml)中,添加以下命名空间:
代码语言:txt
复制
<struts>
 <package name="json" extends="struts-default">
   <action name="sendJson" class="com.example.SendJsonAction">
     <result type="json">
       <param name="root">jsonResult</param>
      </result>
    </action>
  </package>
</struts>
  1. 在 SendJsonAction 类中,添加一个名为 jsonResult 的属性,并在 execute() 方法中设置 JSON 数据:
代码语言:java
复制
public class SendJsonAction extends ActionSupport {
  private Map<String, Object> jsonResult;

  public String execute() {
    jsonResult = new HashMap<String, Object>();
    jsonResult.put("name", "John Doe");
    jsonResult.put("age", 30);
    jsonResult.put("city", "New York");

    return SUCCESS;
  }

  public Map<String, Object> getJsonResult() {
    return jsonResult;
  }
}
  1. 在客户端(例如,JavaScript)中,使用 AJAX 请求将 JSON 发送到操作:
代码语言:javascript
复制
$.ajax({
  url: "sendJson",
  type: "POST",
  dataType: "json",
  success: function(response) {
    console.log(response);
  }
});
  1. 当操作成功执行时,Struts 2 将自动将 JSON 数据发送回客户端。

注意:在实际项目中,应该使用更具体的类来表示 JSON 数据,而不是使用 Map 类型。这样可以更好地实现数据的封装和验证。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Struts2中的JSON问题——后台返回JSON字符串到前台

    最近做一个项目遇到一个比较棘手的问题,项目后台采用struts2+Hibernate3+Spring3,前台采用ExtJs4。...由此贴出在前后台用JSON字符串进行前后台交互中所出现的问题。前台ExtJs不用多说直接在proxy代理里面写上Action的url即可。最为关键的则是在struts.xml配置文件中。...由于再开完全不明白完全不懂,所以在struts.xml的配置中没有单独将json-default和struts-default写入两个package中,而是直接写在了同一个package中,和同伴百度无数仍然没有人给出详细的办法...://yshjava.iteye.com/blog/1333602),原文作者采用struts2-json-plugin-2.1.8.1.jar。...根据原文作者所做的分析,我在struts2-json-plugin-2.2.1稍加了一些修改(阅读顺序:JSONResult.java->JSONUtil.java->JSONWriter.java)。

    1.8K60

    预警 | Struts2 REST插件存在远程代码执行漏洞(CVE-2017-9805)

    漏洞描述 Struts2 是 Apache 软件基金会负责维护的一个基于MVC设计模式的 Web 应用框架开源项目。...Struts2的REST插件使用带有XStream例程的XStreamHandler执行反序列化操作,但在反序列化过程中没有执行任何类型过滤,这可能在反序列化XML负载时执行任意代码。...最好的方法是在不使用时删除Struts REST插件,或仅限于服务器正常页面和JSON: 向后兼容性 由于对可用的类应用了默认的限制,某些REST操作可能会停止工作。...在这种情况下,请调查所引入的新接口,允许对每个操作定义类限制,这些接口包括: org.apache.struts2.rest.handler.AllowedClasses org.apache.struts2

    824140

    求你了,听我一句劝吧,这几个玩意就别学了!

    JSP作为页面模板,在后端通过MVC框架渲染成HMTL,然后再发送到客户端(例如浏览器)来呈现。这也就是我们常说的“前后端不分离”,“混合式”开发。 而当前,包括我所在的公司,以及大部分互联网公司。...在“前后端分离”模式下,后端只负责提供服务接口(例如REST),而前端(例如HTML5)通过接口发送/获取,呈现数据(例如JSON格式)。...Struts 在Java后端开发中,MVC模型还是主流。而Struts作为一个MVC框架,单从技术上来说,还是很优秀的。...2.Swing 作为桌面UI框架。且不说本身设计的咋样。现实开发中,我接触的桌面应用,要么用C++(例如MFC),要么用C#(Winform、WPF)。所以,Swing就没有学习的必要了。...但作为一个web数据传输格式,正在逐渐被JSON替代。所以,对Java后端学习来说,XML简单了解即可。至于庞杂的XML操作API(例如XPath),完全不必学习。将来真要用到,再查也不迟。

    47320

    struts2: 玩转 rest-plugin

    近期使用struts2的rest-plugin,参考官方示例struts2-rest-showcase,做了一个restful service小项目,但官网提供的这个示例过于简单,埋下了巨坑无数,下面是一些遇到的问题及解决办法...最后在struts2.xml里,还要注册bean,参考前面完整的xml内容。...通常用rest-plugin,是为了开发rest-service,但是官网的示例返回的默认都是页面视图,这个显然不适合,最理想情况是,如果在页面上操作操作完以后,应该返回页面视图(即: xxx.xhtml...return null; 15 } 六、json post到service,model取不到值的问题 这个问题最恶心,连官方默认提供的org.apache.struts2.rest.handler.JsonLibHandler...都有问题,原因在json反序列化的机制,大家可以感受下这段代码: 1 @Test 2 public void testJson() { 3 String test

    1.5K50

    《项目架构那点儿事》——浅析web层struts2的构建

    【目录】         1.struts2的配置         2.struts2的基类构成         3.具体实例应用 【内容】           一、struts2的配置     1....struts2的过滤器拦截配置 :相信大家对struts2的配置一定不陌生,这里我就简单带过struts2过滤器在web.xml的配置: struts2...(1):如果有用过struts2的童鞋,可以清晰的看出它们名称都很有含义,对没错 struts2的Action类已经封装这4个静态常量,当我们在Action的方法中完成操作后,要对视图进行 跳转或者响应时...2.可以看出baseAciton中定义了很多常量,怎么用?这些常量定义是为了处理response 的响应头,上面我有讲过,我没有在struts.xml中处理流返回类型,json返回类型,对吧?...很显然是要在这里做操作了撒,可以看出有很多 render开头的重载方法,这些方法就是帮助我们直接去响应前台,后面例子中我会附带系统中struts2json处理、对流文件(excel、 img)处理。

    84880

    html.dropdownlistfor_html按钮样式

    SelectListItem() {Text = “业务部1”, Value = “1”, Selected = false}), (new SelectListItem() {Text = “业务部2”...userType.Text } Asp.Net 将枚举类型(enum)绑定到ListControl(DropDownList)控件 在开发过程中一些状态的表示使用到枚举类型,那么如何将枚举类型直接绑定到...this.DropDownLis … MVC5中后台提供Json,前台处理Json,绑定给Dropdownlist的例子 MVC5中后台提供Json,前台处理Json,绑定给Dropdownlist的例子...root@Hack … Struts的ONGL 1.什么是OGNL OGNL它是Object Graphic Navigation Language(对象图导航语言)缩写, 它是一个开源项目....Struts2框架使用OGNL作为默认的表达式语 … [BZOJ1212][HNOI2004]L语言 BZOJ Luogu sol 设\(f_i\)表示文章的前

    4.6K20

    SpringMVC知识一锅烩

    Spring简介 SpringMVC和Struts2一样都是属于表现层的框架,将前段发出的请求分发给对应的后端处理器即Controller 处理流程 用户请求被前端控制前拦截,然后根据对应的拦截路径去处理器映射器中寻找对应的...RequestMapping value : 访问此方法的访问路径,可以是数组 method : 可以设置表单提交方式(post/get) 如果表单不符合,就会出现异常,可以是数组 可以添加在类上面,类似struts2...bean class="com.lyh.exception.CustomerException"> 当有异常时就会按照你所想要的方式去处理 自定义异常 知道异常为什么出现,然后可以进行对应的操作...的区别 springMVC是单例, Struts2为多例 springMVC参数绑定在形参 , Struts2 绑定成员变量 springMVC没有值栈 Struts2 有值栈 springMVC的入口是一个...Servlet, Struts2为一个Filter

    1.2K00

    西方红玫瑰和辣条先生黑产组织深度分析报告

    挖矿样本运行过程如下: 通过调用挖矿客户端以url(json格式)作为参数与矿池通信并登记。当矿池与挖矿客户端连接以后,挖矿客户端向矿池请求任务订阅,矿池给挖矿客户端返回任务。...目的是建立受害者信息库,并执行后续的恶意操作。 ? 2) 尝试连接111.73.45.188服务器下载恶意程序 ?...复制操作 ? 写入注册表实现开机自动启动 ? 创建互斥量信息并成设置C2连接地址 ? 比对操作系统版本信息,判断操作系统版本 ? 获取系统语言信息 ? 获取CPU信息 ?...获取信息发送到C2服务器 创建线程等待黑客指令进行攻击: 在查看样本资源节带有PE文件,利用工具转出来后,MD5比较和样本释放在C:\Documents And Setting\Administrator...进行WebDownFileFlood2攻击操作 ? 进行TCP sendData攻击 ?

    2.9K50
    领券