完成数据库的连接

  

获取连接参数

  

  

拷贝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标准化数据库过程记录的更多相关文章

  1. SQLBulkCopy使用实例--读取Excel写入数据库/将 Excel 文件转成 DataTable

    MS SQL Server 提供一个称为 bcp 的流行的命令提示符实用工具,用于将数据从一个表移动到另一个表(表可以在不同服务器上). SqlBulkCopy 类允许编写提供类似功能的托管代码解决方 ...

  2. 读取excel到数据库里面

    //读取excel数据到dataTable里面 public DataTable ReadExcelDataToDataTable(string path) { DataTable dt = new ...

  3. ThinkPHP3.2.3 PHPExcel读取excel插入数据库

    版本 ThinkPHP3.2.3 下载PHPExcel 将这两个文件放到并更改名字 excel文件: 数据库表: CREATE TABLE `sh_name` ( `name` varchar(255 ...

  4. 无需上传附件到服务器,Servlet读取Excel(二)

    package com.str; import java.io.File;import java.io.FileInputStream;import java.io.IOException; impo ...

  5. Java小知识----POI事件模式读取Excel 2007

    一.知识背景 1.读取excel的方法选择问题 java中读excel中的时间,我们通常用POI去解析,在使用new HSSFWorkbook(NEW FileInputStream(excelFil ...

  6. 读取Excel的记录并导入SQL数据库

    准备一下,近段时间,需要把Excel的数据导入数据库中. 引用命名空间: using System.Configuration; using System.Data; using System.Dat ...

  7. java读取excel文件数据导入mysql数据库

    这是我来公司的第二周的一个小学习任务,下面是实现过程: 1.建立maven工程(方便管理jar包) 在pom.xml导入 jxl,mysql-connector 依赖 可以在maven仓库搜索 2.建 ...

  8. Java web项目 Jxl 读取excel 并保存到数据库,(从eclipse上移动到tomact服务器上,之路径更改,)

    最开始在eclipse中测试的时候,并没有上传到服务器上,后来发现,想要读取数据必须上传服务器然后把文件删除就可以了,服务器不可以直接读取外地的文件.用到jxl 1.上传到服务器 前端 <for ...

  9. Java 用jxl读取excel并保存到数据库(此方法存在局限,仅限本地电脑操作,放在服务器上的项目,需要把文件上传到服务器,详细信息,见我的别的博客)

    项目中涉及到读取excel中的数据,保存到数据库中,用jxl做起来比较简单. 基本的思路: 把excel放到固定盘里,然后前段页面选择文件,把文件的名字传到后台,再利用jxl进行数据读取,把读取到的数 ...

随机推荐

  1. iOS中如何监测来电

    http://blog.csdn.net/liujinlongxa/article/details/44207587

  2. Alpha阶段项目总结

    1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件是一款面向高校学生的简单快速的云笔记,不仅具有笔记的添加.修改.查看和删除功能,还有笔记公开功能,用户 ...

  3. eclipse建立springMVC 简单项目

    http://jinnianshilongnian.iteye.com/blog/1594806 如何通过eclipse建立springMVC的简单项目,现在简单介绍一下. 工具/原料   eclip ...

  4. Visual Studio的背景插件

    分享一个Visual Studio的背景插件,让堆码更富情趣..哈哈   忘记一件重要的事情,我使用的是VS 2012版,其他更高版本应该是可以找到的,以下版本就不清楚了.有可能找不到,见谅,也不是我 ...

  5. C语言 回文

    #include <stdio.h> #include <string.h> int main() { ]; int i,j; printf("Please inpu ...

  6. Unity 官网教程 -- Multiplayer Networking

    教程网址:https://unity3d.com/cn/learn/tutorials/topics/multiplayer-networking/introduction-simple-multip ...

  7. erlang 健壮性

    erlang 提供了简单易用的并发编程模型,基本不需要再考虑多线程并发问题.但实际应用中并不是那么的完美,很多地方需要注意,就算标准库也有不少问题.很多在多线程编程中很多很容易解决的事情,在erlan ...

  8. rocketmq生产者和消费者

    1.生产者: package com.ebways.mq.test.mq; import com.alibaba.rocketmq.client.exception.MQClientException ...

  9. win7系统下的飞秋发送文件失败问题

    飞秋发送文件失败这个问题大多数是由防火墙引起的1.检查windows自带的防火墙设置,在左侧的"允许程序通过windows防火墙"查看飞秋是否存在,不存在则增加之,公网.专网都勾选 ...

  10. 第18讲——ActiveX控件

    1,容器应用程序是可以嵌入或链接对象的应用程序.服务器应用程序是创建对象并且当对象被双击时,可以被启动的应用程序. 2,可以安装一个TstCon32来测试ActiveX控件 3,可以用 Invalid ...