- 浏览: 756762 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (981)
- javascript (102)
- java (212)
- JQuery (81)
- 幽默笑话 (2)
- 只言片语 (6)
- 开发小记 (283)
- Hibernate (17)
- DWR (4)
- SQL (10)
- spring-ibatis (8)
- linux (24)
- Struts1 (8)
- Struts2 (16)
- spring (42)
- Mybatis (16)
- css (18)
- servlet (8)
- jdbc (4)
- jsp (1)
- spring-jdbc (2)
- FreeMarker (2)
- MySQL (24)
- JQuery-Grid (7)
- jstl (5)
- 正则表达式 (1)
- 面试集锦 (86)
- unix (18)
- 开发工具 (23)
- ajax (5)
- webservice (4)
- log4j (3)
- oracle (15)
- extjs (14)
- 其他 (9)
- 优秀技术参考地址 (1)
- 性能 (3)
- 数据库 (25)
- 算法 (15)
- 设计模式 (10)
- Python (3)
- AIX (5)
- weblogic (1)
- shell (14)
- quartz (5)
- 图形文件FusionCharts (1)
- Websphere (4)
- 转载 (5)
- hadoop (1)
- highchart (24)
- perl (22)
- DB2 (7)
- JBoss (1)
- JQuery Easy UI (9)
- SpringMVC (5)
- ant (5)
- echart (9)
- log4J配置 (3)
- 多线程 (10)
- 系统架构 (7)
- nginx (3)
- loadrunner1 (1)
- 分布式 (1)
- Dubbo (1)
- Redis (2)
- JMS (4)
- 自动化测试 (3)
- Spring循环依赖的三种方式 (1)
- spring-boot (2)
- 高级测试 (9)
- github (2)
- sonar (1)
- docker (6)
- web前端性能优化 (1)
- spring-aop (6)
- rabbit (1)
- ELK (1)
- maven (1)
- minio (1)
最新评论
-
zengshaotao:
jstl1point0 写道很好啊,如果有带Session会话 ...
Nginx+Tomcat搭建高性能负载均衡集群 -
jstl1point0:
很好啊,如果有带Session会话的怎么搞呢
Nginx+Tomcat搭建高性能负载均衡集群
相对于上传,下载的功能会简单许多,也不用考虑太多客户端可能出现的异常。以下是功能代码概要,不能照搬使用:
public void download() throws Exception{
//将查询到的数据写入到excel文件,提示下载
OutputStream os = null;
WritableWorkbook book =null;
//防止出现乱码,这里需要进行特殊处理
String customerName = URLDecoder.decode(this.potentialCustomerInfoVO.getCustomerName(), Constant.CHARCODE_UTF8);
String certCode = URLDecoder.decode(this.potentialCustomerInfoVO.getCertiCode(), Constant.CHARCODE_UTF8);
this.potentialCustomerInfoVO.setCustomerName(customerName);
this.potentialCustomerInfoVO.setCertiCode(certCode);
HttpServletResponse response = ServletActionContext.getResponse();
//客户端看到的文件名称
String displayName = "fileName.xls";
response.setContentType("application/vnd.ms-excel");
response.addHeader("Content-disposition","attachment;filename="+displayName);
try {
os = response.getOutputStream();
book = Workbook.createWorkbook(os);
//sheet内容的title
String tmptitle = "客户车辆信息";
//创建sheet名称
WritableSheet wsheet = book.createSheet(tmptitle, 0);
//第一列第一行 至 第七列第一行合并
wsheet.mergeCells(0, 0, 7, 0);
//设置第一行的宽度
// wsheet.setRowView(0,40);设置后会隐藏
//设置一级标题格式
WritableFont font = new WritableFont(WritableFont.ARIAL,16,WritableFont.BOLD,
false,UnderlineStyle.NO_UNDERLINE);
WritableCellFormat wcfFC = new WritableCellFormat(font);
//将水平对齐方式指定为居中
wcfFC.setAlignment(jxl.format.Alignment.CENTRE);
//将数值对齐方式指定为居中
wcfFC.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);
//为excel添加带有格式的title
wsheet.addCell(new Label(0,0,tmptitle,wcfFC));
//设置二级标题的格式
font = new WritableFont(WritableFont.ARIAL,14,WritableFont.BOLD,
false,UnderlineStyle.NO_UNDERLINE);
wcfFC = new WritableCellFormat(font);
wsheet.addCell(new Label(0,1,"车主姓名",wcfFC));
wsheet.addCell(new Label(1,1,"证件类型",wcfFC));
wsheet.addCell(new Label(2,1,"证件号码",wcfFC));
wsheet.addCell(new Label(3,1,"车牌号",wcfFC));
wsheet.addCell(new Label(4,1,"车架号",wcfFC));
wsheet.addCell(new Label(5,1,"发动机号",wcfFC));
wsheet.addCell(new Label(6,1,"行驶证",wcfFC));
wsheet.addCell(new Label(7,1,"车型代码",wcfFC));
//调用service层,获得符合条件的数据
List<PotentialCustomerInfoVO> exportList = potentialCustomerService.queryPotentialCustomers(potentialCustomerInfoVO);
String value = "";
String tempValue = "";
//设置excel主题内容
for(int i = 0 ;i < exportList.size() ;i++){
PotentialCustomerInfoVO pcv = exportList.get(i);
wsheet.addCell(new Label(0,i+2,pcv.getCustomerName()));
value = pcv.getCertiType();
if(Constant.CERTITYPE_VALUE_SFZ.equals(value)){
tempValue = Constant.CERTITYPE_TEXT_SFZ;
}else if(Constant.CERTITYPE_VALUE_JGZ.equals(value)){
tempValue = Constant.CERTITYPE_TEXT_JGZ;
}else if(Constant.CERTITYPE_VALUE_HZ.equals(value)){
tempValue = Constant.CERTITYPE_TEXT_HZ;
}else if(Constant.CERTITYPE_VALUE_QT.equals(value)){
tempValue = Constant.CERTITYPE_TEXT_QT;
}
wsheet.addCell(new Label(1,i+2,tempValue));
wsheet.addCell(new Label(2,i+2,pcv.getCertiCode()));
wsheet.addCell(new Label(3,i+2,pcv.getLicenceNumber()));
wsheet.addCell(new Label(4,i+2,pcv.getVin()));
wsheet.addCell(new Label(5,i+2,pcv.getEngineNumber()));
wsheet.addCell(new Label(6,i+2,pcv.getDriverNumber()));
wsheet.addCell(new Label(7,i+2,pcv.getF_1()));
}
book.write();
os.flush();
} catch (IOException e) {
e.printStackTrace();
throw e;
} finally{
//这里的输出流需要关闭,否则输出的excel文件内容为空
try{
if(book != null){
book.close();
}
if(os!=null){
os.close();
}
}catch(Exception e){
e.printStackTrace();
}
}
}
下载时要注意,如果对于浏览器没有选项卡的情况,且页面上是通过href的链接形式,要注意不能是href="javascript:void(0)",否则没有提示下载框.如果是本页面提示下载,使用href="#"
发表评论
-
选股神器
2022-08-20 15:07 146最近闲来无事,突发奇想,将自己的选股思路自动化,计算机化。。 ... -
rpm安装jdk,设置环境变量
2019-05-12 22:49 6011、将jdk的rpm包拷贝到 ... -
java安全编码
2019-01-18 22:31 443软件安全问题,一般 ... -
生产者消费者
2018-07-01 21:33 402package function.thread; i ... -
打印mybatis的执行语句到控制台和文件
2017-12-13 15:11 781log4j.rootLogger=INFO,CONSOLE, ... -
java中类的加载顺序介绍(ClassLoader)
2017-11-14 11:41 7841、ClassNotFoundExcetpion 我们在 ... -
守护线程
2017-11-13 16:40 404对于线程,有个守护的线程的概念。如何理解呢?比如A线程里,n ... -
类加载机制及反射
2017-09-24 08:45 555一、Java类加载机制 ... -
java+selenium2 自动化测试框架
2017-09-15 09:36 987package web.selenium2; ... -
JMS实例
2017-08-21 15:40 4381. JMS架构 Java 消息服务(Java M ... -
linux设置java环境
2017-08-07 16:47 421linux配置java环境变量(详细) 一. 解压安装jdk ... -
分布式
2017-07-19 12:12 416转载请注明出处:http://blog.csdn.net/l ... -
tomcat+nginx+redis
2017-07-18 16:46 408应用系统的基本架构: -
java调用远程机器的shell脚本
2017-07-14 12:19 1534此程序的目的是执行远程机器上的Shell脚本。 【环境参数 ... -
生产者消费者进阶(带有condition)
2017-05-09 17:56 552package function.thread; ... -
多线程之 CountDownLatch
2017-05-01 13:01 488package function.thread; ... -
判断服务器类型
2017-04-12 10:52 453开发时一般用tomcat,然后在测试环境发布时使用的是web ... -
IE的不同文本浏览模式页面显示
2017-04-11 14:34 496现象描述:最近在遇到的问题就是在在Chrome,火狐页面都正 ... -
java中Filter、Servlet、Listener的学习
2017-03-29 21:52 4251、Filter的功能filter功能,它使用户可以改变一个 ... -
高并发,线程池
2017-03-29 21:52 10661.高并发的内容 Zookee ...
相关推荐
excel 下载功能插件
java实现文件下载,并弹出保存对话框(Excel)
java导出excel文件并且下载到客户端(包括解决中文乱码)
java实现生成下载Excel,java实现生成下载Exceljava实现生成下载Excel
java实现excel文件上传,并进行excel解析
java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入java Excel 导出 导入
java 生成excel下载 java 生成excel下载 java 生成excel下载 java 生成excel下载
java Excel导出 Excel数据处理
java excel中表格导成png图片,整理供大家参考
本资源是java操作Excel的jar包,jxl可以轻松实现各种复杂的功能呢。
java exceljava exceljava exceljava exceljava exceljava exceljava excel
java excel poi合并单元格
这是一个Excel表格导入与导出功能,Excel美化,并且添加了进度条,丢上Eclipse直接运行使用,附带测试数据与说明。Java项目使用maven搭建。
java excel 读写 java excel 导入数据库 部分来自网络,现整理供同行们使用
Java+Oracel+将数据导入到Excel中,Java将Excel中的数据导入到Oracle数据库中,
Java读取Excel内容 v Java读取Excel内容 Java读取Excel内容
自己写的小例子,简单易懂,主要是将数据库中的所有数据插入到excel表中,很实用,希望对大家有帮助
Java POI下载Excel模板 Excel带有下拉框的模板,并有详细注释,生成exlcel的下拉框,必填项标红,数字栏位防止科学计数法,并设置Excel标题样式
java生成excel图表