//得表格
//创建Excel工作薄
HSSFWorkbook workbook = new HSSFWorkbook()
//创建Excel表单
HSSFSheet sheet = workbook.createSheet(“表单名”)
// 设置单元格格式为文本
HSSFCellStyle cellStyle = workbook.createCellStyle()
cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("@"))
//创建第一行
HSSFRow row0 = sheet.createRow(0)
HSSFCell cell0 = row0.createCell(0)//第一列
HSSFCell cell1 = row0.createCell(1)//第二列
HSSFCell cell2 = row0.createCell(2)//第三列
cell0.setCellValue("列1名")
cell1.setCellValue("列2名")
cell2.setCellValue("列3名")
//在表格中填写数据 list为查询到的数据结果集
for (int i =0i<lists.size()i++) {
HSSFRow row = sheet.createRow(i*list.size()+(j+1))
HSSFCell cell11 = row.createCell(0)//第一列
HSSFCell cell12 = row.createCell(1)//第二列
HSSFCell cell13 = row.createCell(2)//第三列
cell11.setCellValue(list.get(i).getA())
cell12.setCellValue(list.get(i).getB())
cell13.setCellValue(list.get(i).getC()))
}
//存入excle文件
FileOutputStream fos = new FileOutputStream(fileName)
workbook.write(fos)
fos.close()
用户自己选择保存路径那就是d出一个IE的下载对话框,代码非常简单!代码如下:
protected void downloadExcel(HSSFWorkbook workbook, HttpServletResponse response, String filename) throws IOException {
OutputStream out = response.getOutputStream()
response.setHeader("Content-disposition", "attachmentfilename=" + URLEncoder.encode(filename, "UTF-8"))
response.setContentType("application/msexcelcharset=UTF-8")
workbook.write(out)
out.close()
}
HSSFWorkbook:如果你用的是POI导出Excel,那么这个对象就不用我说了,你懂的!
HttpServletResponse:这个更不用说,你懂的!
String:这个你也懂的,接受的是文件名,请注意不要带任何路径,只是一个文件名而已!这个传过来的目的是在d出的IE下载对话框中可以看见文件名、文件类型!肯定是要带后缀名的,否则无法识别。
上传文件
按行,读取文件
每行数据装入对应实体
实体入list
list批量存入数据库
每一步具体哪个需要解释?或者自己能查到么?按步做呗...
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)