关于zheng框架中使用poi导出Excel
一、添加前段导出按钮(系统管理为例)
前提:启动activemq.bat、zkServer.cmd服务,启动ZhengUpmsRpcServiceAppication、zheng-upms-server[jetty:run]
1、index页面创建导出按钮(zheng-upms-server src main webapp WEB-INF jsp manage 下的文件夹中的index.jsp页面
log—日志
organization-组织管理
permission-权限管理
role-角色管理
session-会话管理
system-系统管理
user-用户管理)
<shiro:hasPermission name="upms:system:export"><a class="waves-effect waves-button" href="javascript:;" onclick="exportAction()"><i class="zmdi zmdi-import-export"></i> 导出系统</a></shiro:hasPermission>
2、在底部添加window.open方法
//导出Excel文件
function exportAction(){
window.open("/manage/system/export")
}
3、数据库表—upms_permission添加一行
permission_id 1 2 导出Excel 3 upms:organization:export /manage/organization/export zmdi zmdi-export 1 40 40
4、upms_role_permission
role_permission_id 1 86
5、将DBUtil、ExcelUtil、ResponseUtil复制到com.zheng.common-util下并修改DbUtil的内容(数据库名和密码)
6、在zheng-upms-server com.zheng.upms.server下建dao层(包),将ExportDao复制进去,根据需要添加或修改方法(复制上一个方法更改方法名及SQL语句)
7、修改UpmsSystemController,将以下代码复制到controller中,String headers[]中的内容根据实际需要修改,exportDao后的方法名更改为需要的方法的方法名
@ApiOperation(value = "导出Excel")
@RequiresPermissions("upms:system:export")
@RequestMapping(value = "/export", method = RequestMethod.GET)
@ResponseBody
public String export(HttpServletResponse response) throws Exception {
ExportDao exportDao = new ExportDao();
DbUtil dbUtil = new DbUtil();
Connection con = null;
ExcelUtil excelUtil = new ExcelUtil();
try {
con = dbUtil.getCon();
Workbook wb = new HSSFWorkbook();
String headers[] = {"编号", "图标", "系统标题", "系统名称", "根目录", "状态"};
ResultSet rs = exportDao.exportSystem(con);
excelUtil.fillExcelData(rs, wb, headers);
ResponseUtil.export( response, wb, "系统管理.xls");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
dbUtil.closeCon(con);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
8、IDEA上方导航栏Build-Build Project,编译结束后重启zheng-upms-server[jetty:run]
9、刷新页面后测试
浙公网安备 33010602011771号