数据导出成excel格式
2016-11-02 16:05
375 查看
页面代码
//根据选择的查询条件导出相应数据
function exportData(){
var isDel = 0;
if ($('#yesOrNot').combobox('getText') == '已删除') {
isDel = 1;
}else if ($('#yesOrNot').combobox('getText') == '未删除') {
isDel = 0;
}else if($('#yesOrNot').combobox('getText') == 'All'){
isDel = 10;
}
var startTime = $("#startDate").val();
var endTime = $("#endDate").val();
var id = $("input[name='Id']").val();
var activity_type_id = $("input[name='activeTypeId']").val();
var elemIF = document.createElement("iframe");
elemIF.src = "${pageContext.request.contextPath}/visit/exportVisitPlan?is_deleted="+isDel+"&startTime="+startTime+
"&endTime="+endTime+"&id="+id+"&activity_type_id="+activity_type_id;
elemIF.style.display = "none";
document.body.appendChild(elemIF)
}后台代码
要导入这个包import org.apache.poi.xssf.streaming.SXSSFWorkbook;
@RequestMapping(value = "/exportVisitPlan", method = RequestMethod.GET)
@ResponseBody
public void exportVisitPlan(PageBean visitPlan, HttpServletRequest request, HttpServletResponse response) {
long count = visitPlanService.getCount();
visitPlan.setPage(1);
visitPlan.setRows((int) count);
Map<String, Object> visitPlanList = visitPlanService.getVisitPlanList(visitPlan);
@SuppressWarnings("unchecked")
List<Plan> vpList = (List<Plan>) visitPlanList.get("rows");
Date date = new Date();
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
String sdate = sf.format(date);
String fileName = "visitPlan_" + sdate + ".xlsx";
// 设置导出Excel报表的导出形式
response.setContentType("application/vnd.ms-excel,charset=utf-8");
response.setHeader("Content-disposition", "attachment;filename=" + fileName);
// 获取输出流
OutputStream os = null;
try {
os = response.getOutputStream();
} catch (IOException e1) {
logger.error("IOException: " + e1);
throw new RestException(e1.getMessage());
}
<span style="white-space:pre"> </span>//#前数据库中表字段,后是导出excel列名
String[] headers = new String[] { "id#计划id", "activity_plan_date#计划活动日期 ",......};
SXSSFWorkbook workbook = new SXSSFWorkbook();
try {
Sheet sheet = workbook.createSheet();
Row rowHead = sheet.createRow(0);
Cell cellHead = null;
if (headers != null && headers.length > 0) {
for (int i = 0; i < headers.length; i++) {
cellHead = rowHead.createCell(i);
cellHead.setCellValue(headers[i].split("#")[1]);
}
}
Row row = null;
Cell cellInfo = null;
Method method = null;
Object objValue = null;
for (int j = 0; j < vpList.size(); j++) {
row = sheet.createRow(j + 1);
Object obj = vpList.get(j);
for (int m = 0; m < headers.length; m++) {
cellInfo = row.createCell(m);
String[] str = headers[m].split("#");
String first = str[0].substring(0, 1);
method = obj.getClass().getMethod("get" + first.toUpperCase() + str[0].substring(1));
objValue = method.invoke(obj);
if (method.getReturnType().getName() == "java.util.Date") {
if (objValue != null) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String format = sdf.format((Date) objValue);
String strValue = objValue == null ? "" : format;
cellInfo.setCellType(Cell.CELL_TYPE_STRING);
cellInfo.setCellValue(strValue);
}
} else {
cellInfo.setCellValue(objValue == null ? ""
: objValue.toString().equals("null") ? ""
: objValue.toString().replaceAll("(\r\n|\r|\n|\n\r)", ""));
}
}
}
workbook.write(os);
os.close();
workbook.close();
} catch (FileNotFoundException e) {
logger.error("FileNotFoundException: " + e);
throw new RestException(e.getMessage());
} catch (IOException e) {
logger.error("IOException: " + e);
throw new RestException(e.getMessage());
} catch (SecurityException e) {
logger.error("SecurityException: " + e);
throw new RestException(e.getMessage());
} catch (IllegalArgumentException e) {
logger.error("IllegalArgumentException: " + e);
throw new RestException(e.getMessage());
} catch (NoSuchMethodException e) {
logger.error("NoSuchMethodException: " + e);
throw new RestException(e.getMessage());
} catch (IllegalAccessException e) {
logger.error("IllegalAccessException: " + e);
throw new RestException(e.getMessage());
} catch (InvocationTargetException e) {
logger.error("InvocationTargetException: " + e);
throw new RestException(e.getMessage());
}
}
//根据选择的查询条件导出相应数据
function exportData(){
var isDel = 0;
if ($('#yesOrNot').combobox('getText') == '已删除') {
isDel = 1;
}else if ($('#yesOrNot').combobox('getText') == '未删除') {
isDel = 0;
}else if($('#yesOrNot').combobox('getText') == 'All'){
isDel = 10;
}
var startTime = $("#startDate").val();
var endTime = $("#endDate").val();
var id = $("input[name='Id']").val();
var activity_type_id = $("input[name='activeTypeId']").val();
var elemIF = document.createElement("iframe");
elemIF.src = "${pageContext.request.contextPath}/visit/exportVisitPlan?is_deleted="+isDel+"&startTime="+startTime+
"&endTime="+endTime+"&id="+id+"&activity_type_id="+activity_type_id;
elemIF.style.display = "none";
document.body.appendChild(elemIF)
}后台代码
要导入这个包import org.apache.poi.xssf.streaming.SXSSFWorkbook;
@RequestMapping(value = "/exportVisitPlan", method = RequestMethod.GET)
@ResponseBody
public void exportVisitPlan(PageBean visitPlan, HttpServletRequest request, HttpServletResponse response) {
long count = visitPlanService.getCount();
visitPlan.setPage(1);
visitPlan.setRows((int) count);
Map<String, Object> visitPlanList = visitPlanService.getVisitPlanList(visitPlan);
@SuppressWarnings("unchecked")
List<Plan> vpList = (List<Plan>) visitPlanList.get("rows");
Date date = new Date();
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
String sdate = sf.format(date);
String fileName = "visitPlan_" + sdate + ".xlsx";
// 设置导出Excel报表的导出形式
response.setContentType("application/vnd.ms-excel,charset=utf-8");
response.setHeader("Content-disposition", "attachment;filename=" + fileName);
// 获取输出流
OutputStream os = null;
try {
os = response.getOutputStream();
} catch (IOException e1) {
logger.error("IOException: " + e1);
throw new RestException(e1.getMessage());
}
<span style="white-space:pre"> </span>//#前数据库中表字段,后是导出excel列名
String[] headers = new String[] { "id#计划id", "activity_plan_date#计划活动日期 ",......};
SXSSFWorkbook workbook = new SXSSFWorkbook();
try {
Sheet sheet = workbook.createSheet();
Row rowHead = sheet.createRow(0);
Cell cellHead = null;
if (headers != null && headers.length > 0) {
for (int i = 0; i < headers.length; i++) {
cellHead = rowHead.createCell(i);
cellHead.setCellValue(headers[i].split("#")[1]);
}
}
Row row = null;
Cell cellInfo = null;
Method method = null;
Object objValue = null;
for (int j = 0; j < vpList.size(); j++) {
row = sheet.createRow(j + 1);
Object obj = vpList.get(j);
for (int m = 0; m < headers.length; m++) {
cellInfo = row.createCell(m);
String[] str = headers[m].split("#");
String first = str[0].substring(0, 1);
method = obj.getClass().getMethod("get" + first.toUpperCase() + str[0].substring(1));
objValue = method.invoke(obj);
if (method.getReturnType().getName() == "java.util.Date") {
if (objValue != null) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String format = sdf.format((Date) objValue);
String strValue = objValue == null ? "" : format;
cellInfo.setCellType(Cell.CELL_TYPE_STRING);
cellInfo.setCellValue(strValue);
}
} else {
cellInfo.setCellValue(objValue == null ? ""
: objValue.toString().equals("null") ? ""
: objValue.toString().replaceAll("(\r\n|\r|\n|\n\r)", ""));
}
}
}
workbook.write(os);
os.close();
workbook.close();
} catch (FileNotFoundException e) {
logger.error("FileNotFoundException: " + e);
throw new RestException(e.getMessage());
} catch (IOException e) {
logger.error("IOException: " + e);
throw new RestException(e.getMessage());
} catch (SecurityException e) {
logger.error("SecurityException: " + e);
throw new RestException(e.getMessage());
} catch (IllegalArgumentException e) {
logger.error("IllegalArgumentException: " + e);
throw new RestException(e.getMessage());
} catch (NoSuchMethodException e) {
logger.error("NoSuchMethodException: " + e);
throw new RestException(e.getMessage());
} catch (IllegalAccessException e) {
logger.error("IllegalAccessException: " + e);
throw new RestException(e.getMessage());
} catch (InvocationTargetException e) {
logger.error("InvocationTargetException: " + e);
throw new RestException(e.getMessage());
}
}
相关文章推荐
- asp.net导出Excel/Csv格式数据最优方案(C#)
- C#将dataGridView数据导出成EXCEl、WORD格式
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
- Web页面的数据导出excel时的格式问题(长数字显示为科学计数法格式等)
- 简单Python脚本实现数据导出Excel格式的尝试
- html导出到excel数据格式不正确解决方法
- 玩转DataGridView之将数据导出成Excel和Word格式
- JavaScript将页面表格数据导出为Excel、CSV格式文件(结合JQuery EasyUI的grid )
- winform 中 将listview数据 以excel格式导出 保存在可选择的文件夹下 但文件打开的时候有问题
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
- Web页面的数据导出excel时的格式问题
- 简单Python脚本实现数据导出Excel格式的尝试
- 带格式导出数据到Excel
- 从数据库中导出数据以excel格式保存到本地
- asp.net中导出到Excel的方法汇总及导出Excel/Csv格式数据最优方案(C#)
- Java大批量导出数据,格式可以为xml或excel
- Excel格式导入导出数据(单语言版本)
- 【转载】DataGridView之将数据导出成Excel和Word格式
- GridView导出数据到Excel时格式设置
- sql2000导出数据字典表(含字段名、格式、长度、备注等),可保存到excel