日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

jsp頁面顯示數(shù)據(jù)導(dǎo)出到excel表中_JSP教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:JSP數(shù)據(jù)導(dǎo)出到EXCEL簡便方法
試試看從網(wǎng)頁中把表格直接生成Excel,雖然不是直接從sql到excel,不過反而更加方便而且人性化。。 網(wǎng)上倒是找到了不少的資料,發(fā)現(xiàn)一段javascript的功能實現(xiàn)代碼,很不錯:var elTabl

Excel報表的方法,一個過於簡單,一個只能用於window平臺(因為使用jdbc-odbc bridge),且無法使用到Excel內(nèi)部的各種公式或是方法,因此,今天介紹一個apache出的元件叫POI,它可以在UNIX或window平臺處理word或Excel檔案,而不需要依靠window的com,并且可設(shè)定儲存格格式、列印格式等等;今天我來介紹其中有關(guān)資料讀取、新增、修改及刪除的功能,若各位網(wǎng)友研究好其他的功能,麻煩Email給我([email protected]),分享給大家!
一、需要用的檔案:jakarta-poi-1.8.0-dev-20020917.jar
 幾乎每天都有1.8.0的最新版(但非正式版),正式的版本是1.5.0
 http://jakarta.apache.org/builds/jakarta-poi/nightly/
 將檔案復(fù)制到classpath所指到的地方
二、有興趣的朋友可以參考
  http://jakarta.apache.org/poi/
三、先建立一個叫做book1.xls的Excel檔,內(nèi)容如下
----------------------------------
項目  單價  數(shù)量   合計
CPU   7000  5    35000
硬碟  2500  2    5000
記憶體 1600  3    4800
----------------------------------
其中合計的欄位是設(shè)定公式,單價*數(shù)量

四、資料讀取範例
<%@ page contentType="text/html;charset=MS950" import="java.util.*,java.io.*" %>
<%@ page import="org.apache.poi.poifs.filesystem.*,org.apache.poi.hssf.usermodel.*" %>



讀取Excel檔案



<%
FileInputStream finput = new FileInputStream(application.getRealPath("/") "book1.xls" );
//設(shè)定FileINputStream讀取Excel檔
POIFSFileSystem fs = new POIFSFileSystem( finput );
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet sheet = wb.getSheetAt(0);
//讀取第一個工作表,宣告其為sheet
finput.close();
HSSFRow row=null;
//宣告一列
HSSFCell cell=null;
//宣告一個儲存格
short i=0;
short y=0;
//以巢狀迴圈讀取所有儲存格資料
for (i=0;i<=sheet.getLastRowNum();i )
{
out.println("");
row=sheet.getRow(i);
for (y=0;y {
cell=row.getCell(y);
out.print("
");
}
out.println("");
}
%>
");

//判斷儲存格的格式
switch ( cell.getCellType() )
{
case HSSFCell.CELL_TYPE_NUMERIC:
out.print(cell.getNumericCellValue());
//getNumericCellValue()會回傳double值,若不希望出現(xiàn)小數(shù)點,請自行轉(zhuǎn)型為int
break;
case HSSFCell.CELL_TYPE_STRING:
out.print( cell.getStringCellValue());
break;
case HSSFCell.CELL_TYPE_FORMULA:
out.print(cell.getNumericCellValue());
//讀出公式儲存格計算後的值
//若要讀出公式內(nèi)容,可用cell.getCellFormula()
break;
default:
out.print( "不明的格式");
break;
}
out.println("




五、資料新增範例
<%@ page contentType="text/html;charset=MS950" import="java.util.*,java.io.*" %>
<%@ page import="org.apache.poi.poifs.filesystem.*,org.apache.poi.hssf.usermodel.*" %>



插入資料至Excel檔案


<%
FileInputStream finput = new FileInputStream(application.getRealPath("/") "book1.xls" );
//設(shè)定FileINputStream讀取Excel檔
POIFSFileSystem fs = new POIFSFileSystem( finput );
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet sheet = wb.getSheetAt(0);
//讀取第一個工作表,宣告其為sheet
finput.close();
HSSFRow row=null;
//宣告一列
HSSFCell cell=null;
//宣告一個儲存格
short i=4;
row=sheet.createRow(i);
//建立一個新的列,注意是第五列(列及儲存格都是從0起算)
cell=row.createCell((short)0);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
//設(shè)定這個儲存格的字串要儲存雙位元
cell.setCellValue("顯示卡");
cell=row.createCell((short)1);
cell.setCellValue(1700);
cell=row.createCell((short)2);
cell.setCellValue(8);
cell=row.createCell((short)3);
//設(shè)定這個儲存格為公式儲存格,并輸入公式
cell.setCellFormula("B" (i 1) "*C" (i 1));
try
{
FileOutputStream fout=new FileOutputStream(application.getRealPath("/") "book1.xls");
wb.write(fout);
//儲存
fout.close();
out.println("儲存成功book1.xls");
}
catch(IOException e)
{
out.println("產(chǎn)生錯誤,錯誤訊息:" e.toString());
}
%>



六、資料刪除、修改範例
<%@ page contentType="text/html;charset=MS950" import="java.util.*,java.io.*" %>
<%@ page import="org.apache.poi.poifs.filesystem.*,org.apache.poi.hssf.usermodel.*" %>



刪除、修改資料至Excel檔案


<%
FileInputStream finput = new FileInputStream(application.getRealPath("/") "book1.xls" );
//設(shè)定FileINputStream讀取Excel檔
POIFSFileSystem fs = new POIFSFileSystem( finput );
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet sheet = wb.getSheetAt(0);
//讀取第一個工作表,宣告其為sheet
finput.close();
HSSFRow row=null;
//宣告一列
HSSFCell cell=null;
//宣告一個儲存格
row=sheet.getRow((short)4);
//取出第五列
if (row!=null)
sheet.removeRow(row);
//先偵測第五列存不存在,若在的話將第五列刪除
row=sheet.getRow((short)3);
//取出第四列
cell=row.getCell((short)2);
//取出第三個儲存格
cell.setCellValue(7);
//設(shè)定該儲存格值為7
cell=row.getCell((short)3);
cell.setCellFormula(cell.getCellFormula());
//上兩行為取出公式儲存格,并重新計算(因為剛才更新過計算公式的值)
//如果不做,公式計算後的值不會更新
try
{
FileOutputStream fout=new FileOutputStream(application.getRealPath("/") "book1.xls");
wb.write(fout);
//儲存
fout.close();
out.println("儲存成功book1.xls");
}
catch(IOException e)
{
out.println("產(chǎn)生錯誤,錯誤訊息:" e.toString());
}
%>

http://blog.csdn.net/gqm1982/archive/2007/01/25/1493229.aspx

分享:jsp中的數(shù)據(jù)庫編程
一,SQL復(fù)習1,SQL語句分為兩類:DDL(Data Definition Language)和DML(Dat Manipulation Languge,數(shù)據(jù)操作語言)。前者主要是定義數(shù)據(jù)邏輯結(jié)構(gòu),包括定義表、視圖和索引;DML主要是對數(shù)據(jù)庫進

來源:模板無憂//所屬分類:JSP教程/更新時間:2008-08-22
相關(guān)JSP教程