Servlet读取Excel标准化数据库过程记录
完成数据库的连接

获取连接参数


拷贝1.数据库URL 2.驱动程序类 3.用户
编写Servlet
1.创建连接对象
Connection con = null;
PreparedStatement prst = null;
ResultSet rs = null;
2.写入连接参数
String url = "数据库URL";
String driver = "驱动程序类";
String user = "用户";
String password = "数据库用户密码";
3.连接数据库,编写sql语句
Class.forName(driver)
con = DriverManager.getConnection(url,user,password);
String sql = "UPDATE [表] SET [目标列]=? WHERE [目标列]=?";
4.读取execel
Workbook book = Workbook.getWorkbook(new File("文件路径"));
Sheet sheet = book.getSheet(工作表序号);
5.写一个for循环
//一个整型,注意excel从第几行开始是更新值,注意范围设置,i++
for (int i = 1; i < 215; i++) {
// 使用jxl包,读取单元格(列序号,行序号)
jxl.Cell cell0 = sheet.getCell(0, i);
jxl.Cell cell1 = sheet.getCell(1, i);
//声明变量,取单元格的文本内容
String result0 = cell0.getContents();
String result1 = cell1.getContents();
//编译预编译语句,将两个单元格内容传入sql语句
prst = con.prepareStatement(sql);
// 注意位置(数字表示第几个问号,传入变量)
prst.setString(2, result0);
prst.setString(1, result1);
//执行sql语句
prst.executeUpdate();
}
6.关掉excel读取
book.close();
完整代码
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
Connection con = null;
PreparedStatement prst = null;
ResultSet rs = null;
String url = "jdbc:sqlserver://localhost:***;databaseName=***";
String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String user = "sa";
String password = "***";
try {
Class.forName(driver);
con = DriverManager.getConnection(url, user, password);
String sql = "UPDATE [***] SET [***]=? WHERE [***]=? ";
Workbook book = Workbook.getWorkbook(new File("****"));
Sheet sheet = book.getSheet(*);
//一个整型,注意excel从第几行开始是更新值,注意范围设置,i++
for (int i = *; i <***; i++) {
// 使用jxl包,读取单元格(列序号,行序号)
jxl.Cell cell0 = sheet.getCell(0, i);
jxl.Cell cell1 = sheet.getCell(1, i);
//声明变量,取单元格的文本内容
String result0 = cell0.getContents();
String result1 = cell1.getContents();
//编译预编译语句,将两个单元格内容传入sql语句
prst = con.prepareStatement(sql);
// 注意位置(数字表示第几个问号,传入变量)
prst.setString(2, result0);
prst.setString(1, result1);
//执行sql语句
prst.executeUpdate();
}
out.print("<h1><strong>成功!</strong></h1>");
book.close();
} catch (BiffException ex) {
Logger.getLogger(doH.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
Logger.getLogger(doH.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException ex) {
Logger.getLogger(doH.class.getName()).log(Level.SEVERE, null, ex);
}
}
注意事项:
1.该方法用的jxl的包,需要在库中导入

2.操作数据库需要try{}catch 来抛出异常,先码
Class.forName(driver);
处理方式

接着码
prst = conn.prepareStatement(sql);
添加catch子句
Servlet读取Excel标准化数据库过程记录的更多相关文章
- SQLBulkCopy使用实例--读取Excel写入数据库/将 Excel 文件转成 DataTable
MS SQL Server 提供一个称为 bcp 的流行的命令提示符实用工具,用于将数据从一个表移动到另一个表(表可以在不同服务器上). SqlBulkCopy 类允许编写提供类似功能的托管代码解决方 ...
- 读取excel到数据库里面
//读取excel数据到dataTable里面 public DataTable ReadExcelDataToDataTable(string path) { DataTable dt = new ...
- ThinkPHP3.2.3 PHPExcel读取excel插入数据库
版本 ThinkPHP3.2.3 下载PHPExcel 将这两个文件放到并更改名字 excel文件: 数据库表: CREATE TABLE `sh_name` ( `name` varchar(255 ...
- 无需上传附件到服务器,Servlet读取Excel(二)
package com.str; import java.io.File;import java.io.FileInputStream;import java.io.IOException; impo ...
- Java小知识----POI事件模式读取Excel 2007
一.知识背景 1.读取excel的方法选择问题 java中读excel中的时间,我们通常用POI去解析,在使用new HSSFWorkbook(NEW FileInputStream(excelFil ...
- 读取Excel的记录并导入SQL数据库
准备一下,近段时间,需要把Excel的数据导入数据库中. 引用命名空间: using System.Configuration; using System.Data; using System.Dat ...
- java读取excel文件数据导入mysql数据库
这是我来公司的第二周的一个小学习任务,下面是实现过程: 1.建立maven工程(方便管理jar包) 在pom.xml导入 jxl,mysql-connector 依赖 可以在maven仓库搜索 2.建 ...
- Java web项目 Jxl 读取excel 并保存到数据库,(从eclipse上移动到tomact服务器上,之路径更改,)
最开始在eclipse中测试的时候,并没有上传到服务器上,后来发现,想要读取数据必须上传服务器然后把文件删除就可以了,服务器不可以直接读取外地的文件.用到jxl 1.上传到服务器 前端 <for ...
- Java 用jxl读取excel并保存到数据库(此方法存在局限,仅限本地电脑操作,放在服务器上的项目,需要把文件上传到服务器,详细信息,见我的别的博客)
项目中涉及到读取excel中的数据,保存到数据库中,用jxl做起来比较简单. 基本的思路: 把excel放到固定盘里,然后前段页面选择文件,把文件的名字传到后台,再利用jxl进行数据读取,把读取到的数 ...
随机推荐
- iOS中如何监测来电
http://blog.csdn.net/liujinlongxa/article/details/44207587
- Alpha阶段项目总结
1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件是一款面向高校学生的简单快速的云笔记,不仅具有笔记的添加.修改.查看和删除功能,还有笔记公开功能,用户 ...
- eclipse建立springMVC 简单项目
http://jinnianshilongnian.iteye.com/blog/1594806 如何通过eclipse建立springMVC的简单项目,现在简单介绍一下. 工具/原料 eclip ...
- Visual Studio的背景插件
分享一个Visual Studio的背景插件,让堆码更富情趣..哈哈 忘记一件重要的事情,我使用的是VS 2012版,其他更高版本应该是可以找到的,以下版本就不清楚了.有可能找不到,见谅,也不是我 ...
- C语言 回文
#include <stdio.h> #include <string.h> int main() { ]; int i,j; printf("Please inpu ...
- Unity 官网教程 -- Multiplayer Networking
教程网址:https://unity3d.com/cn/learn/tutorials/topics/multiplayer-networking/introduction-simple-multip ...
- erlang 健壮性
erlang 提供了简单易用的并发编程模型,基本不需要再考虑多线程并发问题.但实际应用中并不是那么的完美,很多地方需要注意,就算标准库也有不少问题.很多在多线程编程中很多很容易解决的事情,在erlan ...
- rocketmq生产者和消费者
1.生产者: package com.ebways.mq.test.mq; import com.alibaba.rocketmq.client.exception.MQClientException ...
- win7系统下的飞秋发送文件失败问题
飞秋发送文件失败这个问题大多数是由防火墙引起的1.检查windows自带的防火墙设置,在左侧的"允许程序通过windows防火墙"查看飞秋是否存在,不存在则增加之,公网.专网都勾选 ...
- 第18讲——ActiveX控件
1,容器应用程序是可以嵌入或链接对象的应用程序.服务器应用程序是创建对象并且当对象被双击时,可以被启动的应用程序. 2,可以安装一个TstCon32来测试ActiveX控件 3,可以用 Invalid ...