必须加入的包有jsonplugin-0.30.jar,xsttream-1.3.jar,freemarker-2.3.8.jar
///struts.xml
<struts>
<include file="struts-default.xml"/>
<package name="json" extends="json-default">
<action name="extjs" class="book.action.ExtjsAction">
<result type="json"/><!-- 这里生成Json -->
</action>
<action name="extjsXml" class="book.action.ExtjsAction">
<result type="freemarker">
<param name="location">template/gridXml.ftl</param>
<param name="contentType">application/xml</param>
</result>
</action>
</package>
</struts>
模板如下,
//src/template/gridXml.ftl
<?xml version="1.0" encoding="utf-8"?>
<list>
<Total>
<results>${results}</results>
</Total>
<#list items as item>
<#assign recordName=item.class.name.replaceAll(".*\\.","")>
<${recordName}>
<#assign methods=item.class.declaredMethods>
<#list methods as method>
<#assign isGetMethod=method.name.startsWith("get")>
<#if isGetMethod = true>
<#assign methodName=method.name.replaceAll("get","").toLowerCase()>
<${methodName}>
${method.invoke(item,null)}
</${methodName}>
</#if>
</#list>
</${recordName}>
</#list>
</list>
·
分享到:
相关推荐
**Struts2与FreeMarker整合**: 1. **视图渲染**:Struts2 Action执行完成后,可以通过配置将结果导向FreeMarker模板。例如,设置`<result type="freemarker">/WEB-INF/views/result.ftl</result>`。 2. **数据传递*...
**Struts2与FreeMarker的结合** 在Struts2中,FreeMarker被用作视图层,Action执行后返回的结果通常是渲染一个FTL模板。通过Struts2的标签库,可以在FTL页面中方便地调用Action方法,获取数据并显示。例如,`...
通过解压并运行这个实例,你可以了解到如何将Struts2的Action与FreeMarker模板结合起来,实现动态网页的生成。 总结起来,Struts2.0和FreeMarker的结合使用,能帮助开发者构建清晰的MVC架构,提高代码的可读性和可...
2. **配置Struts2**:在struts.xml文件中配置Struts2的核心过滤器,并设置Freemarker为默认的视图解析器。例如: ```xml <filter-name>struts2 <filter-class>org.apache.struts2.dispatcher.ng.filter....
下面我们将深入探讨Struts2与JSON的结合及其相关知识点。 1. **Struts2框架基础**: - **Action类**:在Struts2中,Action类是业务逻辑的载体,它处理用户请求并返回结果。 - **Result类型**:Struts2支持多种...
4. `freemarker-x.x.x.jar`:虽然不是直接处理JSON,FreeMarker是Struts2默认的视图技术,有时可能需要将JSON数据与FreeMarker模板结合使用。 5. `struts2-core-x.x.x.jar`:Struts2的核心库,包含Action、...
在这个集成中,Struts2作为MVC框架处理业务逻辑和控制流程,Ajax提供异步数据交换能力,而Json则作为数据交换格式,简化了客户端与服务器之间的通信。jQuery通常作为JavaScript库来简化Ajax操作。 首先,让我们深入...
Struts2、jQuery和JSON是Web开发中的三个关键组件,它们共同构成了高效、动态和交互式的用户界面。这里我们将深入探讨这三个技术,并结合实例来理解它们如何协同工作。 首先,Struts2是一个基于MVC(Model-View-...
ExtJs + Struts2 + JSON 是一种常见的前端与后端数据交互的技术组合,常用于构建富客户端应用。这里我们详细探讨一下这三个技术组件以及它们如何协同工作。 首先,ExtJs 是一个JavaScript库,用于创建复杂的、用户...
4. freemarker-2.3.15.jar - FreeMarker,模板引擎,用于生成动态内容。 5. commons-fileupload-1.2.1.jar - Apache Commons FileUpload,处理文件上传。 6. commons-io-1.3.2.jar - Apache Commons IO,处理I/O操作...
在"TestStruts2JSON"程序源码中,可能包含了Action类、struts.xml配置文件、以及其他可能涉及的如JSP或Freemarker模板文件。这些文件共同展示了如何在Struts2框架下构建一个能够生成和处理JSON响应的应用。通过分析...
在实际项目中,Struts2与jQuery的整合可以带来高效的前后端交互。通过JSON格式,Action可以直接返回数据到前端,jQuery解析并更新DOM。例如,使用jQuery的Ajax方法发送请求到Struts2 Action,获取数据后更新页面部分...
5. **freemarker.jar**:FreeMarker是一个模板引擎,Struts2使用它来渲染视图。 6. **commons-fileupload.jar** 和 **commons-io.jar**:用于处理文件上传。 7. **javassist.jar**:动态代码生成库,Struts2在某些...
4. **Struts2与jQuery的集成**: - **Struts2的JSON插件**:虽然题目要求不使用JSON,但通常情况下,Struts2通过JSON插件返回数据给jQuery是最方便的方式。不过,我们可以通过设置Content-Type为"text/plain"或...
在Struts2中,JSON(JavaScript Object Notation)的使用极大地增强了与前端JavaScript进行异步交互的能力,使得AJAX(Asynchronous JavaScript and XML)应用变得更加简单。在Struts2中集成JSON,我们可以实现将...
2. **依赖的第三方库**:如ognl.jar(Object-Graph Navigation Language)、freemarker.jar(模板引擎)等,它们用于视图渲染和表达式语言处理。 3. **插件库**:根据你的项目需求,可能还需要如struts2-convention-...
这些文件可能包含了HTML页面、JavaScript脚本、Struts2的配置文件、Action类以及可能的JSP或FreeMarker模板文件。 总结来说,Struts2提供了后台处理和视图控制,JSON负责数据传输,Ajax实现了无刷新交互,而jQuery...
- `freemarker-2.3.18.jar`: 是一个用于生成输出文本的模板引擎。 - `ognl-3.0.3.jar`: 用于解析表达式和执行计算。 - `struts-core-1.3.10.jar`: Struts2的核心库。 - `xwork-core-2.3.1.1.jar`: XWork框架的...
Struts-AJAX-JSON-Struts 包是基于经典的Struts框架,为了实现AJAX(异步JavaScript和XML)和JSON(JavaScript Object Notation)交互功能而设计的一组库和资源集合。这个包通常包含了Struts框架的核心组件,以及...
此外,Struts2支持多种视图技术,包括JSP、FreeMarker、Velocity等,而与jQuery和JSON的集成则进一步增强了其在前端展示和数据交换的能力。 **jQuery库** jQuery是一款高效、简洁、功能丰富的JavaScript库,它简化...