Java web查出的数据导出为Excel的表格
来源:互联网 发布:淘宝什么利润大 编辑:程序博客网 时间:2024/04/28 23:53
用到Spring MVC和mybaits以及POI。这些网上都有架包。
在HTML文件中:<input type="button" value="导出" onclick="daoChu()"> 实现一个button的click事件:
function daoChu() {
$.ajax({
url : '../rest/device/excellist?req='
+ JSON.stringify(param) + "&d="
+ new Date().getTime(),
success : function(data) {
var json = JSON.parse(data);
if (json.code == 200) {
alert("导出数据完成");
}
}
});
在Controller中实现上面的方法:
@RequestMapping(value = "/excellist", method = RequestMethod.GET)
@ResponseBody
public Result excellist(HttpServletRequest request) {
DeviceQuery query = constructEntity(request, DeviceQuery.class);
String excelName=query.getExcelName();
return deviceService.getDeviceExcelList(query);
}
在service中实现:
public Result getDeviceExcelList(DeviceQuery query,String excelName) {
List<Device> devices = deviceMapper.selectByConditions(query);//这个是mapper中实现的数据查询语句
ExcelUtil(devices,excelName);//调用下面的方法:
return ResultUtil.getSuccessResult(devices);
}
public void ExcelUtil(List<Device> devices,String excelName) {
String[] excelHeader = { "序号", "芯片名", "客户名", "型号", "序列号", "版本号", "访问时间", "时区", "国家" };
// 第一步,创建一个 webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在 webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("Campaign");
// 第三步,在sheet中添加表头第0行,注意老版本 poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int) 0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
//实现表中的数据
for (int i = 0; i < excelHeader.length; i++) {
HSSFCell cell = row.createCell(i);
cell.setCellValue(excelHeader[i]);
cell.setCellStyle(style);
sheet.autoSizeColumn(i);
}
//填充表中的数据
for (int i = 0; i < devices.size(); i++) {
row = sheet.createRow(i + 1);
Device device = devices.get(i);
row.createCell(0).setCellValue(device.getId());
row.createCell(1).setCellValue(device.getProName());
row.createCell(2).setCellValue(device.getCusName());
row.createCell(3).setCellValue(device.getModel());
row.createCell(4).setCellValue(device.getSNo());
row.createCell(5).setCellValue(device.getVerCode());
row.createCell(6).setCellValue(device.getVisitTime());
row.createCell(7).setCellValue(device.getTimeZone());
row.createCell(8).setCellValue(device.getCountry());
}
try {
FileOutputStream fount = new FileOutputStream("E:/"+excelName.toString()+".xls");
wb.write(fount);
fount.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
mapper.xml中的selectByConditions方法
<select id="selectByConditions" resultMap="BaseResultMap"
parameterType="DeviceQuery">
select *
from tb_device
where 1=1
</select>
- Java web查出的数据导出为Excel的表格
- Java数据导出为Excel表格
- java 数据导出为Excel表格
- WEB表格导出为EXCEL文档的方法
- WEB表格导出为EXCEL文档的方法
- WEB表格导出为EXCEL文档的方法
- .net中将DataGridView内的数据导出为Excel表格
- 【个人经验】导出表格数据为excel的过程
- java的导出Excel表格
- 导出数据为excel表格
- java写的excel表格数据导出代码
- 关于Java中多个数据excel表格的导出
- JAVA WEB 导出 Excel表格
- Excel表格导出,java代码,采用反射加注解的方式获得excel表格中的数据
- 基于POI的Excel表格数据导出
- Java导出Excel表格数据
- Extjs中将数据导出为Excel表格
- php导出数据为excel表格
- Unity UGUI基础之Slider、Scrollbar
- 图片缓存类
- Android 自定义密码键盘
- 杨中科:我的大学生活
- 实现eclipse可视化操作
- Java web查出的数据导出为Excel的表格
- des加密解密算法(js+java两端结果相同)
- python操作数据库PostgreSQL
- iOS远程推送对代理方法调用的理解
- 使用expect自动ssh到远程主机
- Mysql数据库各查询整理
- C++继承之构造析构函数调用
- Sketch 快捷键速记表(中英对照)
- centos chown改变文件拥有者