queryexporter.java
来自「这是一个轻便的j2ee的web应用框架,是一个在多个项目中运用的实际框架,采用s」· Java 代码 · 共 78 行
JAVA
78 行
/*
* Created on 2004-4-21
*
*/
package com.esimple.service.query;
import java.util.*;
import java.io.*;
import javax.servlet.http.HttpServletRequest;
import com.esimple.service.rbac.*;
import com.esimple.service.query.config.QueryConfig;
import com.esimple.service.query.config.QueryResultConfig;
/**
* @author steven
*
*/
public class QueryExporter {
public String makeXlsFile(HttpServletRequest request,QueryConfig query, List list) throws Exception {
StringBuffer buffer = new StringBuffer();
java.util.Date date = new java.util.Date();
long ld = date.getTime();
String fileDir = request.getRealPath("/jsp/queryservice/xls");
User user = (User)request.getSession().getAttribute(User.SESSION_KEY);
String fileContextPath = user.getUserID() + ld +".xls";
String fileName = fileDir + File.separator + fileContextPath;
buffer.append("<html><head><meta http-equiv='Content-Language' content='zh-cn'><meta http-equiv='Content-Type' content='text/html; charset=gb2312'></head>");
buffer.append("<table border='1' width='100%'> <tr >");
ArrayList results = query.getResults();
for( int i=0;i< results.size();i++){
QueryResultConfig result = (QueryResultConfig) results.get(i);
//<td width="<%=result.getWidth()%>%"><%=result.getLabel()%></td>
buffer.append("<td width='")
.append(result.getWidth())
.append("%'>")
.append(result.getLabel())
.append("</td>");
}
buffer.append("</tr>") ;
for( int j=0;j< list.size();j++){
HashMap queryResult = (HashMap)list.get(j);
buffer.append("<tr>");
for( int k=0;k< results.size();k++){
QueryResultConfig result = (QueryResultConfig) results.get(k);
String resultName = result.getAlias();
String type = result.getType();
String align="";
if( type!= null){
if( type.equalsIgnoreCase("float") || type.equalsIgnoreCase("long") )
align=" align='right'";
}
buffer.append("<td")
.append(align)
.append(">")
.append(queryResult.get(resultName))
.append("</td>");
}
buffer.append("</tr>") ;
}
buffer.append("</table>");
BufferedWriter writer = new BufferedWriter( new FileWriter(fileName) );
writer.write(buffer.toString());
writer.flush();
writer.close();
return fileContextPath;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?