根据导入xlxs的文件,来写入数据库
今天讲解一下上传文件。前台必须保持传参类型"multipart/form-data"
后台可以设定
public static final String MULTIPART_FORM_DATA_VALUE = "multipart/form-data";
直接上代码:
@AuthorityAnnotation("game_server_poi")
@RequestMapping(value="/gameServerPoi",method = RequestMethod.POST, produces = MediaType.MULTIPART_FORM_DATA_VALUE)
public RetResult upload(@RequestParam("file") MultipartFile file,Integer gameId) { if(file.isEmpty()){
return RetResult.error("文件不能为空");
}
try {
inputStream = file.getInputStream();
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
for (XSSFSheet xssfSheet : workbook) {
//处理当前页循环读取每一行
if (xssfSheet == null) {
continue;
}
for (int runNum = 0; runNum < xssfSheet.getLastRowNum() + 1; runNum++) {
XSSFRow row = xssfSheet.getRow(runNum);
int minColIx = row.getFirstCellNum();
int maxColIx = row.getLastCellNum(); GameServer gameServer = new GameServer();
gameServer.setGameId(gameId);
for (int colIx = minColIx; colIx < maxColIx; colIx++) {
XSSFCell cell = row.getCell(colIx);
cell.setCellType(Cell.CELL_TYPE_STRING);
if(colIx == 0){
try {
gameServer.setTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(cell.getStringCellValue()));
} catch (ParseException e) {
e.printStackTrace();
}
}
if (colIx == 1) {
gameServer.setServer(cell.getStringCellValue());
}
}
gameserverService.insertSelective(gameServer);
}
}
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return RetResult.success();
}
这段代码比较重要的,就是如何把xlxs字段值取出来, 然后对数据库进行操作。
根据导入xlxs的文件,来写入数据库的更多相关文章
- (OAF)jdeveloper集成log4j并将日志输出到指定文件并写入数据库
参考: How to configure Log4j in JDev 11g Ever wanted to use log4j in your adf project ? Well though Or ...
- nio实现文件读取写入数据库或文件
1.nio实现读取大文件,之后分批读取写入数据库 2.nio实现读取大文件,之后分批写入指定文件 package com.ally; import java.io.File; import java. ...
- Thinkphp使用phpexcel导入文件并写入数据库
现实中,我们往往很多地方都需要这样批量导入数据,除了phpexcel还有csv等方法可以解决 下面详细介绍一下使用方法 首先在官方下载安装包解压到本地,然后复制保存到tp框架下的vendor目录下 h ...
- mysql导入导出.sql文件 备份还原数据库
从数据库导出数据库文件: 进入你的MySQL的安装目录的bin目录或者在C盘的根目录都行,我选的是在bin目录下,下面的例子出第一个外将以在C盘的根目录来讲解 我的mysql安装在了C盘,C: ...
- 如何导入大sql文件到虚拟主机mysql数据库
大部分网站虚拟主机为了安全起见,都限制了通过命令或者phpMyAdmin导入大sql文件到mysql数据库,例如godaddy只允许站长通过phpMyAdmin上传不超过2m的sql文件,但实际上我们 ...
- 十万级百万级数据量的Excel文件导入并写入数据库
一.需求分析 最近接到一个需求,导入十万级,甚至可能百万数据量的记录了车辆黑名单的Excel文件,借此机会分析下编码过程; 首先将这个需求拆解,发现有三个比较复杂的问题: 问题一:Excel文件导入后 ...
- Excel 导入到Datatable 中,再使用常规方法写入数据库
首先呢?要看你的电脑的office版本,我的是office 2013 .为了使用oledb程序,需要安装一个引擎.名字为AccessDatabaseEngine.exe.这里不过多介绍了哦.它的数据库 ...
- 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转
效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载]) 本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较 ...
- jxl读取excel实现导入excel写入数据库
@RequestMapping(params = "method=import", method = RequestMethod.POST) @ResponseBody publi ...
随机推荐
- 123457123456---com.threeObj03.FanPaiZi01--- 记忆翻牌儿童
com.threeObj03.FanPaiZi01--- 记忆翻牌儿童
- keepalived两台机器同时出现vip问题
配置文件: 主:192.168.1.14 ! Configuration File for keepalived global_defs { script_user root enable_scrip ...
- activiti的坑
maven配置: <dependency> <groupId>org.activiti</groupId> <artifactId>activiti-e ...
- 求数值的n次方根
二分法 float SqrtByBisection(float n) //用二分法 { if(n<0) //小于0的按照你需要的处理 return n; float mid,last; floa ...
- 【Leetcode_easy】748. Shortest Completing Word
problem 748. Shortest Completing Word 题意: solution1: class Solution { public: string shortestComplet ...
- localStorage 存储 数组
let str = JSON.stringify(data.list); localStorage.setItem("options",str); let optionss=loc ...
- AWS 存储服务(三)
目录 AWS S3 业务场景 挑战 解决方案 S3的好处 S3 属性 存储桶 Buckets 对象 Object S3 特性 S3 操作 可用性和持久性 一致性 S3 定价策略 S3高级功能 存储级别 ...
- 原装win8系统电脑崩溃问题解决
原装win8系统电脑崩溃问题解决 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:之所以撰写本篇关于win8原装系统电脑崩溃的博文,一是要吐槽一下原装w ...
- Red Hat Enterprise 6.5 在虚拟机上将系统语言修改为中文
Red Hat Enterprise 6.5 在虚拟机上将系统语言修改为中文 说明:本文是个人在使用RedHat时候为方便而设置的,作为学习札记记录. 在虚拟机安装RedHat时候会跳过语言的安装选项 ...
- canvas画箭头demo
效果图: 代码: <!DOCTYPE html> <html> <title>canvas画箭头demo</title> <body> &l ...