浅谈Struts2数据下载和AJAX服务端接口的实现
在struts2中实现文件或特定数据格式文件下载其实并不难的。
?
一,struts2配置文件示例,见下面代码:
?
?
?
说明:
1 .
? ? exportAction是spring配置好的实例。因为这里我是集成spring,给spring管理。
?
2.<result name="success" type="stream">
type="stream" 不用多说了吧,我们这里返回的是stream。若有问题请查看struts2的result中的type说明。
?
3.stream的几个相关参数
?
?
?然后在action中,我们需要把返回的AJAX数据(即string)转成inputStream,但记得也要指定编码,因为这里也会出现乱码的情况。
在这,我分享一个units方法:ByteArrayOutputStream out = new ByteArrayOutputStream();writer.setCharactersetName("GBK");writer.write(out);inputStream = new ByteArrayInputStream(out.toByteArray());fileName = new String("测试下载.dbf".getBytes("GBK"), "ISO8859-1");return SUCCESS;?