最近项目升级已经完成,已进入后期维护和调整阶段。
以下是对此项目的感受,
发现不同的服务器,还是有很大区别的,例如同样的代码如下(截选):
<%@ page contentType="application/vnd.ms-excel; charset=UTF-8"%>
<%
…………
OutputStream os=response.getOutputStream();
/*
*createExcel是直接在jsp里生成了一个xls文件,第一参数可以忽略
*第二个参数是xls文件名,
*第三个参数是表头
*第四个参数是结果集
*第五个参数很重要就是response的对象获取的IO流
*第六个参数可以忽略
*/
reportService.createExcel(modelfile,reportname,heads,list1,os,"id");
%>
以上代码会让页面弹出一个文件下载窗口,如图:
在jboss上面下载后打开xls文件能正常读取内容,但是在resin上面就会报错"illegal utf8 encoding at 0xd0, cf
"。
"。
一般认为是编码问题导致,最后加入了一段代码即解决在resin上的问题,代码如下:
response.setCharacterEncoding("ISO-8859-1");
个人认为这跟每个服务器对jsp的解析有关,另外一个问题就是我已经遗忘了对jsp底层的理解导致程序会出现这样问题。
通过这几天的学习resin,对这种服务器的使用有了一定的了解,总体来说,就是resin配置简单,上手很快。启动后内存占用量比jboss少很多,另外就是对jsp的解析更快。