今天讲解一下上传文件。前台必须保持传参类型"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的文件,来写入数据库的更多相关文章

  1. (OAF)jdeveloper集成log4j并将日志输出到指定文件并写入数据库

    参考: How to configure Log4j in JDev 11g Ever wanted to use log4j in your adf project ? Well though Or ...

  2. nio实现文件读取写入数据库或文件

    1.nio实现读取大文件,之后分批读取写入数据库 2.nio实现读取大文件,之后分批写入指定文件 package com.ally; import java.io.File; import java. ...

  3. Thinkphp使用phpexcel导入文件并写入数据库

    现实中,我们往往很多地方都需要这样批量导入数据,除了phpexcel还有csv等方法可以解决 下面详细介绍一下使用方法 首先在官方下载安装包解压到本地,然后复制保存到tp框架下的vendor目录下 h ...

  4. mysql导入导出.sql文件 备份还原数据库

    从数据库导出数据库文件:   进入你的MySQL的安装目录的bin目录或者在C盘的根目录都行,我选的是在bin目录下,下面的例子出第一个外将以在C盘的根目录来讲解   我的mysql安装在了C盘,C: ...

  5. 如何导入大sql文件到虚拟主机mysql数据库

    大部分网站虚拟主机为了安全起见,都限制了通过命令或者phpMyAdmin导入大sql文件到mysql数据库,例如godaddy只允许站长通过phpMyAdmin上传不超过2m的sql文件,但实际上我们 ...

  6. 十万级百万级数据量的Excel文件导入并写入数据库

    一.需求分析 最近接到一个需求,导入十万级,甚至可能百万数据量的记录了车辆黑名单的Excel文件,借此机会分析下编码过程; 首先将这个需求拆解,发现有三个比较复杂的问题: 问题一:Excel文件导入后 ...

  7. Excel 导入到Datatable 中,再使用常规方法写入数据库

    首先呢?要看你的电脑的office版本,我的是office 2013 .为了使用oledb程序,需要安装一个引擎.名字为AccessDatabaseEngine.exe.这里不过多介绍了哦.它的数据库 ...

  8. 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转

    效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载])    本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较   ...

  9. jxl读取excel实现导入excel写入数据库

    @RequestMapping(params = "method=import", method = RequestMethod.POST) @ResponseBody publi ...

随机推荐

  1. NewLife.XCode 上手指南

    想了解什么是XCode 在这里我不对XCode做过多介绍,XCode曾经是一个轻量级ORM组件,现在是一个重量级数据映射框架,支持实体对象数据到不同媒体的数据映射,提供面向对象的方式操作数据库,解决9 ...

  2. 《最长的一帧》 osg3.4 osgViewer::View::init() osgViewer::Viewer::getContexts()

    开始:osgViewer/ViewerBase.cpp   389行,startThreading()函数,启动线程   void ViewerBase::startThreading() { if ...

  3. Qt编写自定义控件59-直方动态图

    一.前言 直方动态图类似于音乐播放时候的柱状图展示,顶部提供一个横线条,当柱状上升的时候,该线条类似于帽子的形式冲到顶端,相当于柱状顶上去的感觉,给人一种动态的感觉,听音乐的同时更加赏心悦目,原理比较 ...

  4. 五句话搞定Python、JavaScript作用域

    这个银角的看家之作了吧,哈哈哈,剽窃下,原地址在这:点我点我 Python与JavaScript基本相同,但声明提前一项略有不同. JavaScript.Python中无块级作用域 在Java或C#中 ...

  5. js下利用userData实现客户端保存表单数据

    对于多数网页制作的朋友,实现在客户端保存在网页表单上的信息,比较多的是采用Cookie技术来实现,这些功能例如:下拉列表框选择的选项,文本框输入的数据等. 事实上,我们可以利用微软DHTML默认行为中 ...

  6. 【Leetcode_easy】806. Number of Lines To Write String

    problem 806. Number of Lines To Write String solution: class Solution { public: vector<int> nu ...

  7. 车道线检测github集锦

    re1. github_lane_detection; end

  8. Python编译出现错误SyntaxError: Non-ASCII character '\xe7' 时解决方法

    转载个解决办法:https://blog.csdn.net/wangchao701123/article/details/57084244 转自https://blog.csdn.net/jim742 ...

  9. Saltstack把网卡从ens160修改成eth0

    手动修改参考:https://www.cnblogs.com/minseo/p/8521873.html salt目录结构为 files/grub GRUB_TIMEOUT=5 GRUB_DISTRI ...

  10. 使用PowerCLI给ESXi批量设置时间和配置NTP

    在现代的各种业务系统中,时间同步很重要.现在VMware的虚拟化解决方案应用非常广泛,给ESXi宿主机一个统一准确的时间,也给客户机系统一个准确的时间. 生产环境中主机数量少的话倒是可以手动设置,但是 ...