jsp导excel到mysql数据库

更新时间:02-09 教程 由 心蛊 分享

在Java Web开发中,很多时候我们需要将Excel 数据导入到数据库。本文将介绍一个基于JSP实现的Excel导入到MySQL数据库的方法。

1.首先我们需要引入poi和mysql的jar包

<%@ page language="java" import="java.sql.*" %><%@ page import="org.apache.poi.hssf.usermodel.*"%><%@ page import="java.io.*"%><%@ page import="java.util.*"%><%@ page import="java.io.*" %>

2.在jsp页面中有一个表单,这里我们只需用一个input来选择我们要上传的Excel文件

3.在upload.jsp页面中,我们通过文件上传组件得到上传的Excel文件路径,然后遍历Excel的每一行,将数据存储到数据库中

<%try{Class.forName("com.mysql.jdbc.Driver");// MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称?参数=值// 避免中文乱码要指定useUnicode和characterEncoding// 执行数据库操作之前要指定useServerPrepStmts=false,否则容易出现中文乱码问题String url="jdbc:mysql://localhost:3306/mydatabase?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&characterEncoding=utf-8&useServerPrepStmts=false";String user="root";String password="123456";Connection con=DriverManager.getConnection(url,user,password);//获取上传文件String filename=request.getParameter("file");if(filename!=null&&!filename.equals("")){//将request转为输入流InputStream is=request.getInputStream();//通过输入流获取上传文件的二进制流HSSFWorkbook workbook=new HSSFWorkbook(is);//遍历表格HSSFSheet sheet = workbook.getSheetAt(0);for (int i = 1; i<= sheet.getLastRowNum(); i++) {HSSFRow row = sheet.getRow(i);String name = row.getCell(0).getStringCellValue();String age=row.getCell(1).getStringCellValue();String sex=row.getCell(2).getStringCellValue();String address=row.getCell(3).getStringCellValue();String sql = "INSERT INTO student(name,age,sex,address) VALUES(?,?,?,?)";PreparedStatement stmt = con.prepareStatement(sql);stmt.setString(1, name);stmt.setString(2, age);stmt.setString(3, sex);stmt.setString(4, address);stmt.executeUpdate();}}response.sendRedirect("/importExcel.jsp");}catch(Exception e){e.printStackTrace();}%>

4.最后,我们在页面上提供一个导入按钮,用户点击该按钮时,就可以将Excel表中的数据导入到MySQL数据库中

这样我们就实现了JSP导入Excel到MySQL数据库的操作。

声明:关于《jsp导excel到mysql数据库》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2073781.html