JSP页面将数据从mysql导出到excel的Java代码

JSP页面将数据从mysql导出到excel的Java代码,第1张

jsp要从mysql导出数据到excel分两步操作:

后台查询mysql符合条件的数据,放在session中。

页面展示数据,并且控制导出,添加一个按钮,调用导出方法执行。</ol>举例说明:Java代码sql = "select * from tablename"rs = stmt.executeQuery(sql)//新建Excel文件String filePath=request.getRealPath("aaa.xls")File myFilePath=new File(filePath)if(!myFilePath.exists())myFilePath.createNewFile()FileWriter resultFile=new FileWriter(myFilePath)PrintWriter myFile=new PrintWriter(resultFile)resultFile.close()//用JXL向新建的文件中添加内容OutputStream outf = new FileOutputStream(filePath)jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(outf)jxl.write.WritableSheet ws = wwb.createSheet("sheettest", 0)int i=0int j=0for (int k = 0k <rs.getMetaData().getColumnCount()k++) {ws.addCell(new Label(k,0,rs.getMetaData().getColumnName(k+1)))}while(rs.next()){out.println(rs.getMetaData().getColumnCount())for (int k = 0k <rs.getMetaData().getColumnCount()k++) {ws.addCell(new Label(k,j+i+1,rs.getString(k+1)))}i++}wwb.write()wwb.close()}catch(Exception e){e.printStackTrace()}finally{rs.close()conn.close()}response.sendRedirect("aaa.xls")

1.首先将excel文档另存成CSV(逗号分隔)文档,存储过程中会有一系列的警告提示,一路OK下来即可。

2.用记事本的打开方式打开刚刚保存的.csv文件,发现,列与列之间用逗号(,)隔开:

3.将其另存为.txt文件,并且编码要选择UTF-8:

4.成功保存txt文件后就可以用PHPmyadmin导入该文件了。但这里一定要注意一点,该文件的名字一定不能出现中文,文件的存放路径也不能有中文出现。如果出现中文,导入过程中会提示你找不到文件路径。

5.在SQL菜单中输入如下命令:

Load Data InFile 'D:/1.txt' Into Table `res_type_collect` fields terminated by ',' lines terminated by '\n'

其中'D:/1.txt'是文件存放的绝对路径,注意是“/”而不是“\”;Table 后的值是你的表名;fields terminated by后的值是列与列间的分割标识(个人感觉“,”比较靠谱,不易出错。而tab可能在导入的时候出现问题);lines terminated by后面的值是行与行之间的分割标识,这个没的说,一般都是“\n”.

6.点击“执行”后,上方提示成功插入X行数据,查看:

7.注意上图,txt文件的第一行的第一个数据导入出现了错误,这应该是软件的问题吧,不过不影响,因为仅仅这一项错了,所以手动改过来就可以了。由此便完成了MySQL批量导入Excel、txt数据的任务啦。

8.点击菜单栏-文件-另存为

9.弹出框输入 输出文件名称,文件类型下拉栏选项TXT

10.弹出窗口,勾选“分隔符号”,点击下一步。

11.再次弹出窗口,勾选分隔符号栏的“逗号“。

12.文件自动载入·,TXT就完整导入Excel了,你可以在Excel界面自定义修改。

假设你的mysql用户名和密码都是test,要导出test库的users表,linux下直接在命令行运行:

mysql -utest -ptest -e "select * from test.users" >users.xls


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/808606.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-29
下一篇2023-08-29

发表评论

登录后才能评论

评论列表(0条)

    保存