求一个通过jsp把excel导入到sql server的例子。

问题描述

我现在已经做好上传的功能了,上传后的excel文件保存在项目的根目录下。求个例子,最好jsp页面也上。

解决方案

解决方案二:
用jxl或者poi读取excel然后一行一行的用sql插入到表里吧jxl和poi的例子百度一下很多
解决方案三:
引用1楼chen8401314的回复:

用jxl或者poi读取excel然后一行一行的用sql插入到表里吧jxl和poi的例子百度一下很多

我找到的都是把方法写死了的。
解决方案四:
以前用jxl读取Excel操作的部分程序,希望对你有用java.io.Filef=newjava.io.File(filename2);jxl.Workbookrwb=Workbook.getWorkbook(f);Sheetrs=rwb.getSheet(0);Stringsheetname=rs.getName();intrscol=rs.getColumns();intrsrow=rs.getRows();Stringpn_sn="";Stringpn_name="";Stringpn_plate="";Stringpn_standards="";for(inti=1;i<rsrow;i++){Cell[]cell=rs.getRow(i);pn_sort=cell[0].getContents().trim();pn_sn=cell[1].getContents().trim();pn_name=cell[2].getContents().trim();pn_standards=cell[3].getContents().trim();}
解决方案五:
这段代码得怎么改才可以?现在的情况是我已经做好上传的功能了,我要让他去读取我那个上传了的xls文件packagesource;importjava.io.FileInputStream;importjava.io.IOException;importjava.io.InputStream;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.SQLException;importjava.sql.Statement;importjxl.Cell;importjxl.Sheet;importjxl.Workbook;importjxl.read.biff.BiffException;publicclassTestExcel{/***@paramargs*/publicstaticvoidmain(String[]args){//TODO自动生成方法存根Cellcell=null;Stringsql=null;StringinsertDate="";try{//加载postgresql驱动Class.forName("org.postgresql.Driver");Connectioncon=DriverManager.getConnection("jdbc:postgresql://localhost:5432/mydb","postgres","postgres");//使用事务。不用也无所谓con.setAutoCommit(false);Statementsmt=con.createStatement();//if(smt!=null)System.out.println("smtisok!");//加载excel文件InputStreamfs=newFileInputStream("data/user.xls");//得到workbookWorkbookwb=Workbook.getWorkbook(fs);/**取得sheet,如果你的workbook里有多个sheet可以利用wb.getSheets()方法来得到所有的。*getSheets()方法返回Sheet[]数组然后利用数组来操作。就是多次循环的事。*/Sheetsh=wb.getSheet(0);//利用sheet的名字做表名创建数据库表。你可以自己规定sql="CREATETABLE"+sh.getName()+"("+"namevarchar(50),sexvarchar(10),agevarchar(5),addressvarchar(30));";smt.execute(sql);/**开始循环,取得cell里的内容,这里都是按String来取的为了省事,具体你自己可以按实际类型来取。或者都按*String来取。然后根据你需要强制转换一下。*/for(inti=0;i<sh.getRows();i++){for(intj=0;j<sh.getColumns();j++){cell=sh.getCell(j,i);if(j!=sh.getColumns()-1)//System.out.print(cell.getContents()+",");insertDate+="'"+cell.getContents()+"',";elseinsertDate+="'"+cell.getContents()+"'";//System.out.print(cell.getContents());}/**利用循环取每一行的数据。然后开始构造SQL语句。你可以*用自己的方法。这个方法我觉得比较偷懒。*/sql="INSERTINTO"+sh.getName()+"(name,sex,age,address)"+"VALUES("+insertDate+");";smt.execute(sql);/*这里把insertDate设置为空。不然insertData下次*还会叠加上次的内容。也就失去了我们的目的。*/insertDate="";}/**提交事务*/con.commit();con.close();//关闭数据库连接wb.close();//关闭打开的文件,切记。切记System.out.println("OK!");//System.out.println(insertDate);//startsql;}catch(IOExceptionex){ex.printStackTrace();}catch(BiffExceptionex){ex.printStackTrace();}catch(ClassNotFoundExceptionex){System.out.println("classnotfound");}catch(SQLExceptionex){ex.printStackTrace();}}}

解决方案六:
引用2楼woaijingluan的回复:

引用1楼chen8401314的回复:用jxl或者poi读取excel然后一行一行的用sql插入到表里吧jxl和poi的例子百度一下很多我找到的都是把方法写死了的。

什么意思你把他读取EXCEL文件的代码拿出来就行了然后你把读到的值封装成对象放到集合里面一次性提交就好了excel分2种格式03之前是.xls07之后是.xlsm
解决方案七:
引用5楼zn85600301的回复:

引用2楼woaijingluan的回复:引用1楼chen8401314的回复:用jxl或者poi读取excel然后一行一行的用sql插入到表里吧jxl和poi的例子百度一下很多我找到的都是把方法写死了的。什么意思你把他读取EXCEL文件的代码拿出来就行了然后你把读到的值封装成对象放到集合里面一次性提交就好了excel分2种格式03……

网上的例子读取excel文件都是直接指定某盘下的某个excel文件,这样根本没用啊,我要的是它能读取我上传了的那个excel,问题就是怎么让java知道我上传了哪个excel文件。

时间: 2024-07-30 01:56:40

求一个通过jsp把excel导入到sql server的例子。的相关文章

c#winform界面如何将excel导入数据库sql server 求助

问题描述 这个界面是怎么实现导入数据的啊 解决方案 解决方案二: 解决方案三:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Data;usingSystem.Data.OleDb;usingSystem.Configuration;usingSystem.Data.S

要把excel 导入到SQL server中,试了几种方法都没有成功,求助

问题描述 VS2005,C#,SQLSERVER最好能通过存储过程来实现,因为判断的时候灵活一点,可以把一些不符合条件的行过滤掉. 解决方案 解决方案二:一次性全部导入SQL然后再判断哪些需要删除这样方便一点好像解决方案三:usingSystem;usingSystem.Drawing;usingSystem.Collections;usingSystem.ComponentModel;usingSystem.Windows.Forms;usingSystem.Data;usingSystem.

求一个vb.net删除excel指定行的例子

问题描述 求一个vb.net删除excel指定行的例子 求助,一直没法在vb.net中对excel指定行进行删除,找了很多资料都没提及,请高手给个例子供参考下,谢谢了 解决方案 用npoihttp://blog.csdn.net/bigheadsheep/article/details/7774322

asp.net c# 把excel导入mssql sql数据库并支持多个sheet表

asp教程.net c# 把excel导入mssql sql数据库教程并支持多个sheet表 '解决方法一 objSheet = (Excel._Worksheet)objSheets.get_Item(Sheets); '实例代码 for (int i = 0; i < dtData.Rows.Count; i++)   {   for (int j = 0; j < dtData.Columns.Count - 1; j++)   {   objSheet.Cells[i + 2, j +

asp.net excle表批量导入到sql server 2000的同时实现更新功能

问题描述 asp.net excle表批量导入到sql server 2000的同时实现更新功能 excle批量导入功能已经实现了,用的SqlBulkCopy. 但怎样能实现更新功能呢? 导入的数据表内容很多,都是上万条数据的,所以要保证效率! 有知道的大神,请给我详细代码,谢谢! 解决方案 我用的下面代码实现的,是在网上找的方法,主要思路是,两个表比较,删除相同数据,然后用SqlBulkCopy导入数据. 现在的问题是,如果excle表和sql server表的数据很多,执行起来会很慢,经常超

Access 导入到SQL Server 2005的方法小结_mssql2005

方法一: 名称:DTS(这个在MSSQL2000里边也有) 操作:在命令提示符窗口中运行 DTSWizard.exe SQL Server 导入和导出向导提供了生成 Microsoft SQL Server 2005 Integration Services (SSIS) 包最简单的方法.SQL Server 导入和导出向导可以访问各种数据源.可以向下列源复制数据或从其中复制数据: ·Microsoft SQL Server ·文本文件 ·Microsoft Office Access ·Mic

如何将MySQL数据导入到Sql Server中

1.安装mysql数据库的ODBC驱动,mysql-connector-odbc-3.51.19-win32.msi 2.打开控制面板\管理工具\数据源ODBC,在用户DSN中添加一个MySQL ODBC 3.51数据源. 3.在登录login选项卡中输入数据源名称Data Source Name,此处输入MysqlDNS;然后输入服务器 Server,用户User,密码Password,输入正确后选择要导入的数据库.在连接选项connect options中根 据需要设置MySql使用的端口p

Access数据导入到SQL Server

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 在网上到一个asp版本的三级联动,有access版的全国城市的数据库,所以现在关键是把access的数据迁移到Sql Server上来了. 主要有两种方法: 1.利用access上的升迁向导功能,不过这样要在office光盘上装新插件(access并没有默认安装此插件),这样就比较麻烦了. 具体的可以参考:http://blog.csdn.n

求批量插入和更新Excel导入数据高效解决方法~

问题描述 需求:导入Excel(上万条记录),每一行数据对应表(table_product)的一条记录. 导入时先读取Excel,并将数据insert到table_product表,同时insert到记录表,当barcode存在则做update操作.(barcode是Excel中的某一列的值).现有的处理方式很脑残:Action处理: List<String[]> list = new ArrayList<String[]>(); Map<Integer, String[]&