`
king123654789
  • 浏览: 289806 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts 利用Jdom 生成xml字符串

    博客分类:
  • XML
阅读更多

1、写在action里的代码

//获取servletResponse
HttpServletResponse response=ServletActionContext.getResponse();
Format format = Format.getPrettyFormat();//利用format格式化xml
format.setEncoding("utf-8");//设置编码格式

//获取数据
List<FileDetail> list= fileManagerService.getRecentFile(this.getSessionUserId(), 7, null);
Element datatable = new Element("datatable");//xml根节点
//生成head子节点
Element head = new Element("head");
head.addContent(new Element("col").setText("文档名").setAttribute("type", "String"));
head.addContent(new Element("col").setText("下载url").setAttribute("type", "String"));
head.addContent(new Element("col").setText("上传时间").setAttribute("type", "String"));
head.addContent(new Element("col").setText("文件后缀名").setAttribute("type", "String"));
head.addContent(new Element("col").setText("下载次数").setAttribute("type", "String"));

Element body= new Element("body"); //生成body子节点
for (int i=0;i<list.size();i++)
{
Element rows = new Element("rows");// 创建节点 rows;
// 给 rows 节点添加子节点并赋值;
// new Element("name")中的 "name" 替换成表中相应字段,setText("内容")
rows.addContent(new Element("cell").setText(list.get(i).getFileEntity().getFilename()));
rows.addContent(new Element("cell").setText(list.get(i).getFileInfo().getPresenttimestr()));
rows.addContent(new Element("cell").setText("/docsManager/lookupFileDetailInfo.action?fileid="+list.get(i).getFileEntity().getPid()));
rows.addContent(new Element("cell").setText(list.get(i).getFileEntity().getFiletype()));
rows.addContent(new Element("cell").setText(String.valueOf(list.get(i).getFileEntity().getDownloadcount())));
// 给父节点body添加rows子节点;
body.addContent(rows);
}
//给datatable添加head、body节点
datatable.addContent(head);
datatable.addContent(body);

Document doc = new Document(datatable);
XMLOutputter docWriter = new XMLOutputter(format);//格式化xml
String strFromXml = docWriter.outputString(doc);

System.out.println(strFromXml);
//在html中显示xml格式的字符串
response.setContentType("text/plain; charset=UTF-8");
response.setHeader("Content-Disposition", "inline");
response.getWriter().write(strFromXml);
return null;

 

 

生成的xml格式如下:

 

<?xml version="1.0" encoding="utf-8" ?>
- <datatable>
- <head>
<col type="String">文档名</col>
<col type="String">下载url</col>
<col type="String">上传时间</col>
<col type="String">文件后缀名</col>
<col type="String">下载次数</col>
</head>
- <body>
- <rows>
<cell>UltraReport入门手册.docx</cell>
<cell />
<cell>DetailInfo.action?fileid=40288e3532ed49bd0132ed52aa7d0002</cell>
<cell>docx</cell>
<cell>1</cell>
</rows>
- <rows>
<cell>生成图测试图的车市图是的的的生成图测试图的车市图是的的的.rar</cell>
<cell />
<cell>DetailInfo.action?fileid=40288e3532f5abda0132f61a18430005</cell>
<cell>rar</cell>
<cell>2</cell>
</rows>
- <rows>
<cell>生成图测试图的车市图是的的的.rar</cell>
<cell />
<cell>DetailInfo.action?fileid=4028828332ede6810132ee09e61d0005</cell>
<cell>rar</cell>
<cell>2</cell>
</rows>
- <rows>
<cell>生成图测试图的车市图是的的的生成图测试图的车市图是的的的.rar</cell>
<cell />
<cell>DetailInfo.action?fileid=4028828332ede6810132ee127b310009</cell>
<cell>rar</cell>
<cell>1</cell>
</rows>
- <rows>
<cell>index.html</cell>
<cell />
<cell>DetailInfo.action?fileid=40288e3532ecc9c20132eced56ef0016</cell>
<cell>html</cell>
<cell>1</cell>
</rows>
- <rows>
<cell>效果图.rar</cell>
<cell />
<cell>FileDetailInfo.action?fileid=4028828332ee8a8f0132ee913a6b0008</cell>
<cell>rar</cell>
<cell>1</cell>
</rows>
</body>
</datatable>
分享到:
评论
2 楼 bgolovelc 2011-12-20  
  
1 楼 bgolovelc 2011-12-20  
 

相关推荐

    JDOM API文档资源

    XMLOutputter则负责将Document对象转换为XML字符串并写入文件。 6. **JDOMAPIDOCS.CHM**:这个CHM文件是JDOM的API文档,包含了所有类、接口和方法的详细说明,是学习和开发过程中不可或缺的参考资料。你可以通过...

    dhtmlxtree动态从表中生成树,通过servlet,jdom,dhtmlxtree生成树

    在实现过程中,通常会有一个`servlet`监听特定的HTTP请求,当请求到达时,`servlet`使用`jdom`解析SQL查询结果,将其转换为XML字符串。这个字符串随后会被发送回客户端,`dhtmlxtree`通过JavaScript解析这个XML,...

    ajax study

    这个方法接收一个 `CommandContext` 对象作为参数,获取其中的 "processType" 属性值,然后执行一些逻辑(如获取菜单列表),最后返回一个 XML 字符串。`DocumentHelper` 和 `Element` 是来自 Apache POI 或 JDOM 库...

    dom4j jar文件

    - **序列化和反序列化**:将XML文档对象转换为字符串或从字符串重新构建XML文档。 6. **在Web开发中的应用** - **Spring框架**:Spring的bean配置文件通常使用XML格式,DOM4J可以帮助解析和构建bean实例。 - **...

    json和其他格式相互转换

    例如,你可以使用`JSON.toJSONString(obj)`将Java对象转换为JSON字符串,或者使用`JSON.parseObject(jsonStr, YourClass.class)`将JSON字符串反序列化为Java对象。 接下来是`struts2`,Struts 2是一个基于MVC设计...

    Java框架代码[借鉴].pdf

    通常,这可能涉及遍历列表,将每个`NewsFeed`对象的属性转换为字符串,然后写入文件。 这个代码段展示了如何在Java中使用JDOM库处理XML文件,以及如何将解析的数据映射到自定义对象上。这对于任何需要处理结构化...

    JSP简答题(备考)

    - Functions (`fn:`):提供字符串和数组操作的函数。 - XML (`x:`):用于处理XML数据。 - SQL (`sql:`):用于数据库操作。 ##### 条件语句 - `&lt;c:if&gt;`:基于条件的单个选择。 - `&lt;c:choose&gt;`, `&lt;c:when&gt;`, `...

    java开发常用jar包

    它传往后台的字符串是添加了标签的字符串. SimpleCaptcha-1.1.1.jar 验证码所使用的包 spring-test.jar 与 junit 测试可以利用spring的注入功能,引入spring的事物管理,而且对于测试的数据还可以支持回滚,保存...

    web开发常用jar

    是一个Java的XML API,类似于jdom,用来读写XML文件的。Hibernate使用dom4j解析XML配置文件和XML映射元文件。必需的。 ehcache-1.2.jar Hibernate可以使用不同cache缓存工具作为二级缓存。EHCache是缺省的cache...

    java面试题

    84.7. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+...

    java面试宝典

    56、写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔。 14 59、Java 编程,打印昨天的当前时刻。 15 60、java 和javasciprt 的区别。 15 61、什么时候用assert? 16 62、error和exception有什么...

    最新Java面试宝典pdf版

    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...

    spring2.5 学习笔记

    - **简单属性的注入**:为 Bean 的简单属性如字符串、整型等注入值。 - **Bean 的作用范围**:设置 Bean 的作用域,如单例 (`singleton`) 或原型 (`prototype`)。 - **集合注入**:注入 List、Set、Map 等集合...

    JAVA面试宝典2010

    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...

    Java面试宝典-经典

    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...

    java面试题大全(2012版)

    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...

    Java面试宝典2012版

    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 ...

Global site tag (gtag.js) - Google Analytics