- 浏览: 44370 次
- 性别:
- 来自: 地球
最新评论
-
ljm3256748:
是呀,难者不会,会者不难
工作第一天 -
maggieli:
CVS这么简单,还用学?
工作第一天 -
ouspec:
这个小品的确很一般。就这句好玩一点。
“你太有才了”成最新流行语 -
Allen:
在中国的论坛上,经常会出现这样的“文章出口转内销”的事情……
...
如何学习Hibernate -
daoger:
http://www.iteye.com/topic/255
如何学习Hibernate
JSP中将查询结果导出为excel
转自洋葱头的BLOG 原文:http://blog.sina.com.cn/u/3f6efc4a0100063o
如何将JSP中将查询结果导出为Excel,其实可以利用jakarta提供的POI接口将查询结果导出到excel。POI接口是jakarta组织的一个子项目,它包括POIFS,HSSF,HWSF,HPSF,HSLF,目前比较成熟的是HSSF,它是一组操作微软的excel文档的API,现在到达3.0版本,已经能够支持将图片插入到excel里面。下面简要的介绍一下它的用法,在这里http://apache.justdn.org/jakarta/poi/dev/bin/可以下载到它的最新版,下载下来以后,将它解压,并将其中的poi-3.0-alpha1-20050704.jar,poi-contrib-3.0-alpha1-20050704.jar,poi-scratchpad-3.0-alpha1-20050704.jar加入到你的开发环境的classpath中(比如JBUILDER可以点击工具》configure jdks》add……)。在解压的目录中,有一个docs目录是一些文档,其中里面有两个目录特别有用,一个是hssf目录,一个是apidocs目录。我从它的英文文档中摘出一些例子,放在一个java文件里面,加上简单的注释,你可以下载这个java文件下来玩玩。下面是java文件的一部分。
java 代码
- import java.io.*;
- import org.apache.poi.hssf.usermodel.*;
- import org.apache.poi.hssf.util.*;
- import org.apache.poi.hssf.usermodel.contrib.*;
- import javax.imageio.ImageIO;
- public class Main {
- public Main() {
- }
- //演示如何创建一个工作簿
- //用这种方法创建的工作簿有问题,用Excel打开以后发现下面Tab没有选中
- public static void ex1() {
- try {
- org.apache.poi.hssf.usermodel.HSSFWorkbook wb = new org.apache.poi.
- hssf.usermodel.HSSFWorkbook();
- java.io.FileOutputStream fileOut = new java.io.FileOutputStream(
- "ex1.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何创建一个工作表
- public static void ex2() {
- try {
- org.apache.poi.hssf.usermodel.HSSFWorkbook wb = new org.apache.poi.
- hssf.usermodel.HSSFWorkbook();
- org.apache.poi.hssf.usermodel.HSSFSheet sheet1 = wb.createSheet(
- "new sheet");
- org.apache.poi.hssf.usermodel.HSSFSheet sheet2 = wb.createSheet(
- "second sheet");
- java.io.FileOutputStream fileOut = new java.io.FileOutputStream(
- "ex2.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何创建一个单元格
- public static void ex3() {
- try {
- org.apache.poi.hssf.usermodel.HSSFWorkbook wb = new org.apache.poi.
- hssf.usermodel.HSSFWorkbook();
- org.apache.poi.hssf.usermodel.HSSFSheet sheet = wb.createSheet(
- "new sheet");
- // Create a row and put some cells in it. Rows are 0 based.
- org.apache.poi.hssf.usermodel.HSSFRow row = sheet.createRow( (short)
- 0);
- // Create a cell and put a value in it.
- org.apache.poi.hssf.usermodel.HSSFCell cell = row.createCell( (short)
- 0);
- cell.setCellValue(1);
- // Or do it on one line.
- row.createCell( (short) 1).setCellValue(1.2);
- row.createCell( (short) 2).setCellValue("This is a string");
- row.createCell( (short) 3).setCellValue(true);
- // Write the output to a file
- java.io.FileOutputStream fileOut = new java.io.FileOutputStream(
- "ex3.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何操作自选图形
- public static void ex27() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet("new sheet");
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
- HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 255,
- (short) 1, 0, (short) 1, 0);
- HSSFSimpleShape shape1 = patriarch.createSimpleShape(a);
- shape1.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
- HSSFTextbox textbox1 = patriarch.createTextbox(
- new HSSFClientAnchor(0, 0, 0, 0, (short) 1, 1, (short) 2, 2));
- textbox1.setString(new HSSFRichTextString("This is a test"));
- HSSFFont font = wb.createFont();
- font.setItalic(true);
- font.setUnderline(HSSFFont.U_DOUBLE);
- HSSFRichTextString string = new HSSFRichTextString("Woo!!!");
- string.applyFont(2, 5, font);
- textbox1.setString(string);
- // Create a shape group.
- HSSFShapeGroup group = patriarch.createGroup(
- new HSSFClientAnchor(0, 0, 900, 200, (short) 2, 2, (short) 2, 2));
- // Create a couple of lines in the group.
- shape1 = group.createShape(new HSSFChildAnchor(3, 3, 500, 500));
- shape1.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
- ( (HSSFChildAnchor) shape1.getAnchor()).setAnchor( (short) 3, 3,
- 500, 500);
- HSSFSimpleShape shape2 = group.createShape(new HSSFChildAnchor( (short)
- 1, 200, 400, 600));
- shape2.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
- group.setCoordinates(10, 10, 20, 20); // top-left, bottom-right
- FileOutputStream fileOut = new FileOutputStream("ex27.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何设定outline
- public static void ex28() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet1 = wb.createSheet("new sheet");
- sheet1.groupRow(5, 14);
- sheet1.groupRow(7, 14);
- sheet1.groupRow(16, 19);
- sheet1.groupColumn( (short) 4, (short) 7);
- sheet1.groupColumn( (short) 9, (short) 12);
- sheet1.groupColumn( (short) 10, (short) 11);
- FileOutputStream fileOut = new FileOutputStream("ex28.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何设定outline
- public static void ex29() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet("new sheet");
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
- HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 255,
- (short) 1, 0, (short) 1, 0);
- HSSFShapeGroup group = patriarch.createGroup(a);
- group.setCoordinates(0, 0, 80 * 4, 12 * 23);
- float verticalPointsPerPixel = a.getAnchorHeightInPoints(sheet) /
- (float) Math.abs(group.getY2() - group.getY1());
- EscherGraphics g = new EscherGraphics(group, wb,
- java.awt.Color.black,
- verticalPointsPerPixel);
- EscherGraphics2d g2d = new EscherGraphics2d(g);
- //drawChemicalStructure( g2d );
- FileOutputStream fileOut = new FileOutputStream("ex29.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何处理图片
- public static void ex30() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet("new sheet");
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
- HSSFClientAnchor anchor;
- anchor = new HSSFClientAnchor(0, 0, 0, 255, (short) 2, 2, (short) 4,
- 7);
- anchor.setAnchorType(2);
- patriarch.createPicture(anchor,
- loadPicture(
- "1.jpg",
- wb));
- FileOutputStream fileOut = new FileOutputStream("ex30.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- private static int loadPicture(String filePath, HSSFWorkbook wb) {
- int result = 0;
- try {
- ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
- java.awt.image.BufferedImage bufferImg = ImageIO.read(new File(
- filePath));
- ImageIO.write(bufferImg,"jpg",byteArrayOut);
- result = wb.addPicture(byteArrayOut.toByteArray(),HSSFWorkbook.PICTURE_TYPE_JPEG);
- }
- catch (Exception e) {
- e.printStackTrace();
- }
- return result;
- }
- }
那么JSP中查询页面导出到excel只要在服务器端利用HSSF形成xls文件,然后让用户来下载这些文件就行了。
发表评论
-
转载:关于 lucene2.0 的创建、检索和删除功能的完整实现
2007-05-14 21:22 1607最近要 ... -
FileUpload的学习笔记
2007-03-30 11:15 1801Fi ... -
CVS技术文档
2007-03-21 17:46 1501文章来源:转发 目 录 1 ... -
Hibernate 2 升级为Hibernate 3 的注意事项
2007-02-12 11:10 1346Hibernate 2 升级为Hibernate ... -
如何学习Hibernate
2007-02-12 10:39 2496如何学习Hibernate 文章来源:转载 作者:robbi ... -
Hibernate包作用详解
2007-02-12 10:34 1257Hibernate包作用详解 作者:hibernate.org ... -
native2ascii的使用
2007-02-12 10:14 1816native2ascii的使用 native2ascii [- ... -
如何下手学JAVA
2007-02-09 11:42 1022如何下手学JAVA 一直都有新来的坛友问"如 ... -
JAVA初学的一些技巧
2007-02-09 11:36 929JAVA初学的一些技巧 学JAVA时间短了,可总没有一点自己原 ... -
java中的一些常用词汇
2007-02-09 11:32 1038java中的一些常用词汇 Abstract c ... -
Java学习从入门到精通
2007-02-09 11:16 1270学习java也有一段时间了 ...
相关推荐
基于transUnet和swinUnet的医学图像分割项目实验对比,包含完整代码,可以一键运行。评估指标包括dice、iou、recall、precision等
,stm32f030无感foc方案,资料包括原理图,pcb,源程序,观测器参数,电流环参数计算表格。
分布式电源DG选址定容优化及帕累托最优解集的粒子群算法研究,多目标粒子群算法 分布式电源 DG 定容选址 网损 成本 电压偏差 通过分布式能源的选址定容确定得到帕累托最优解集,然后选择最优值进行分析,程序采用改进粒子群算法, ,核心关键词:多目标粒子群算法; 分布式电源选址定容; 网损; 成本; 电压偏差; 帕累托最优解集。,改进粒子群算法在分布式电源选址定容中的应用:优化网损与成本,考虑电压偏差
交变磁场感应材料对沥青路面温度影响的研究,交变磁场下含感应材料沥青路面温度 ,交变磁场; 感应材料; 沥青路面; 温度; 变化; 加热效率,交变磁场对含感应材料沥青路面温度的影响研究
基于Comsol模拟的三层顶板随机裂隙浆液扩散模型:考虑重力影响的瞬态扩散规律分析,Comsol模拟,考虑三层顶板包含随机裂隙的浆液扩散模型,考虑浆液重力的影响,模型采用的DFN插件建立随机裂隙,采用达西定律模块中的储水模型为控制方程,分析不同注浆压力条件下的浆液扩散规律,建立瞬态模型 ,Comsol模拟; 随机裂隙浆液扩散模型; 浆液重力影响; DFN插件; 达西定律模块储水模型; 注浆压力条件; 浆液扩散规律; 瞬态模型,Comsol浆液扩散模型:随机裂隙下考虑重力的瞬态扩散分析
对于Sqlserver数据库只是提供了简单的图形化的导出导入工具,在实际的开发和生产环境不太可能让用户在图形化的界面选择移行的对象,进行移行。 我们在数据库的移行中也遇到这种问题,需要提供一个工具给客户使用。所以我们开发了针对SQLServer数据库的cmd形式导入导出的工具。在长期的实践中不断完善,基本可以实现Oracle的导入导出工具的80%的功能,也比较的稳定。有需要的可以下载使用,也可以提供定制化的服务
内容概要:本文介绍了DeepSeek模型在不同平台上部署的方法。首先阐述了基于Ollama的本地部署,包括Ollama的安装、模型拉取以及交互模式的使用。接着讲解了DeepSeek在移动设备(iOS和Android)上的部署细节:iPhone需要通过Safari安装快捷指令,配置API Key并通过快捷指令测试运行;Android则借助Termux安装必要组件,并手动搭建Ollama环境以加载和测试模型。最后详细叙述了基于Open WebUI部署的方式,涉及Ollama、Docker Desktop及Open WebUI的安装流程及其之间的配合使用来最终达成模型的成功部署。 适用人群:面向有兴趣了解或者实际操作DeepSeek模型跨平台部署的技术开发者、研究人员以及AI爱好者。 使用场景及目标:适用于希望利用DeepSeek模型快速构建本地化应用程序、开展实验研究的用户;具体目标为掌握DeepSeek模型在桌面系统(如Linux、macOS、Windows)、iOS和Android智能手机以及云端WebUI界面上的不同部署手段和技术。 其他说明:对于每种类型的部署都提供了详细的步骤指导,旨在帮助使用者顺利完成所需工具和环境的安装,并确保模型能够正常工作。文中给出的具体链接和命令行脚本,有助于降低初次接触者的上手难度,提升部署效率和成功率。此外,还强调了一些重要的配置注意事项,例如正确输入API key以及对Ollama的初始化检查等。
,FOC 无感 混合磁链观测器 电机控制 代码 PMSM MiniDD(直驱)电机变频无感程序,包含偏心,重量,共振等感知算法,所有算法都不基于库函数,MCU底层配置完全手写
nodejs010-nodejs-cmd-shim-1.1.0-4.1.el6.centos.alt.noarch.rpm
基于S7-200 PLC的交通灯倒计时控制及组态王界面实现原理图解析,S7-200 PLC和组态王交通灯带倒计时控制 923 47 带解释的梯形图接线图原理图图纸,io分配,组态画面 ,S7-200 PLC; 交通灯; 倒计时控制; 组态王; 梯形图接线图; IO分配; 组态画面,"S7-200 PLC与组态王交通灯倒计时控制:梯形图原理及IO分配详解"
西门子四轴卧加后处理系统:828D至840D兼容,四轴联动高效加工解决方案,支持图档处理及试看程序。,西门子四轴卧加后处理,支持828D~840D系统,支持四轴联动,可制制,看清楚联系,可提供图档处理试看程序 ,核心关键词:西门子四轴卧加后处理; 828D~840D系统支持; 四轴联动; 制程; 联系; 图档处理试看程序。,西门子四轴卧加后处理程序,支持多种系统与四轴联动
FPGA篮球赛事24秒倒计时计时器设计与实现(基于Verilog与VHDLL的优化对比),基于fpga篮球倒计时24s。 verilog和vhdl两个版本 ,基于FPGA篮球倒计时24s; Verilog版本; VHDL版本,FPGA篮球比赛倒计时24秒系统:Verilog与VHDL双版本实现
论生成式AI在大学生学习中的应用与伦理问题.pdf
免费JAVA毕业设计 2024成品源码+论文+数据库+启动教程 启动教程:https://www.bilibili.com/video/BV1SzbFe7EGZ 项目讲解视频:https://www.bilibili.com/video/BV1Tb421n72S 二次开发教程:https://www.bilibili.com/video/BV18i421i7Dx
"S7-200plc与MCGS智能居家控制系统的深度融合:组态画面、IO分配与梯形图接线图原理详解",No.63 S7-200plc和 MCGS智能居家控制系统组态 带解释的梯形图接线图原理图图纸,io分配,组态画面 ,核心关键词:S7-200plc; MCGS智能居家控制系统; 梯形图接线图原理图; io分配; 组态画面。,"S7-200 PLC与MCGS智能居家系统组态及梯形图原理图解析"
方便暖通工程师及板换用户了解艾齐尔板式换热器选型计算,免费使用。
《四层三列堆垛式立体库控制系统:带解释的梯形图接线原理图及IO分配与组态画面详解》,4x3堆垛式立体库4层3列四层三列书架式立体库控制系统 带解释的梯形图接线图原理图图纸,io分配,组态画面 ,立体库; 堆垛式; 控制系统; 梯形图; 接线图; 原理图; IO分配; 组态画面,"立体库控制系统原理图:四层三列堆垛式书架的IO分配与组态画面"
免费JAVA毕业设计 2024成品源码+论文+数据库+启动教程 启动教程:https://www.bilibili.com/video/BV1SzbFe7EGZ 项目讲解视频:https://www.bilibili.com/video/BV1Tb421n72S 二次开发教程:https://www.bilibili.com/video/BV18i421i7Dx
免费JAVA毕业设计 2024成品源码+论文+数据库+启动教程 启动教程:https://www.bilibili.com/video/BV1SzbFe7EGZ 项目讲解视频:https://www.bilibili.com/video/BV1Tb421n72S 二次开发教程:https://www.bilibili.com/video/BV18i421i7Dx
免费JAVA毕业设计 2024成品源码+论文+数据库+启动教程 启动教程:https://www.bilibili.com/video/BV1SzbFe7EGZ 项目讲解视频:https://www.bilibili.com/video/BV1Tb421n72S 二次开发教程:https://www.bilibili.com/video/BV18i421i7Dx