完成数据库的连接

  

获取连接参数

  

  

拷贝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. Alpha版总结会议

    昨天上课的时候,我们学习了项目总结这一部分的内容,并根据老师提供的项目Postmortem模板对我们的项目进行了总结. 项目Postmortem模板主要分为设想和目标.计划.资源.变更管理.设计和实现 ...

  2. 通过openswan基于Azure平台搭建VPN server

    用过Azure的读者都知道,Vnet一直是Azure比较自豪的地方,尤其是VPN,Azure提供了两种VPN以及专线来保证客户数据的安全性,S2S vpn(站点到站点的,基于IPsec的),P2S v ...

  3. 计算机维修之操作系统的安装(windows、Mac、Linux)

    从大学开始接触了更多的计算机知识,我就在开荒一样,慢慢的接触多了,就想着安装操作系统一定要学会. 前前后后呢,我折腾过很多操作系统,在我的笔记本上存在过Windows.黑苹果.Linux.安卓等操作系 ...

  4. 百度CDN

    地址如下: http://cdn.code.baidu.com/

  5. Django Restful Framework (一): Serializer

    Serializer 允许复杂数据(比如 querysets 和 model 实例)转换成python数据类型,然后可以更容易的转换成 json 或 xml 等.同时,Serializer也提供了反序 ...

  6. c#过滤html标签

    public string HtmlFilter(string html)     {         //设置要删除的标记         string[] lable = { "font ...

  7. 一些VS2013下使用QT和MFC的错误解决方案

    http://blog.csdn.net/lovejiayang/article/details/51853191

  8. Javascript模块化编程(一):模块的写法

    Javascript模块化编程(一):模块的写法 作者: 阮一峰 原文链接:http://www.ruanyifeng.com/blog/2012/10/javascript_module.html ...

  9. asp:Repeater实例备忘

    1.前置部分 <asp:Repeater ID="rptPlanNo" runat="server" OnItemDataBound="rptP ...

  10. cd命令

    [cd]           切换目录     cd===>change directory 命令功能 : 切换目录到dirname 命令实例: 实例1:切换到跟目录下 命令: cd / 输出: ...