Java中将数据从excel表格中数据导入到数据库
来源:互联网 发布:融合交换机软件下载 编辑:程序博客网 时间:2024/05/21 17:24
在jsp页面中导入ajaxfileupload.js文件
<script type="text/javascript" charset="utf-8" src="${pageContext.request.contextPath}/js/ajaxfileupload.js"></script>
jsp代码
<script type="text/javascript">
function saveImport(){
var file = 'fileInput'; //上传文件文本框ID
$.ajaxFileUpload({
url:'basics_importExcel.action',//用于文件上传的服务器端请求地址
secureuri:false,//一般设置为false
fileElementId:file,//文件上传空间的id属性 <input type="file" id="file" name="file" />
dataType: 'text/html',//返回值类型 一般设置为json
success: function (data, status) //服务器成功响应处理函数
{
alert("导入成功!");
},
error: function (data, status, e)//服务器响应失败处理函数
{
alert("导入失败!");
}
});
}
</script>
</head>
<body>
<div class="divTable">
<table align="center" style="width: 400px; text-align:center; height: 30px;">
<tr>
<td style="width: 100px;">选择文件</td>
<td style="width: 300px;">
<input type="file" name="file" id="fileInput"/>
</td>
</tr>
</table>
<div style="margin-top: 10px; text-align: center;">
<input type="button" class="butSave" value="保存" onclick="saveImport();">
<input type="button" class="butSave" value="取消" onclick="closeBG();">
</div>
</div>
</body>
</html>
Java代码
private File file;
//提交过来的file的名字
private String fileFileName;
public File getFile()
{
return file;
}
public void setFile(File file)
{
this.file = file;
}
public String getFileFileName()
{
return fileFileName;
}
public void setFileFileName(String fileFileName)
{
this.fileFileName = fileFileName;
}
public void importExcel()
{
try
{
InputStream in = new FileInputStream(file);
Workbook wb = openWorkbook(in, fileFileName);
Sheet sheet = (Sheet)wb.getSheetAt(0);
Row row = null;
Cell cell = null;
int totalRows = sheet.getPhysicalNumberOfRows(); //获取到Excel文件中的所有行数
int totalCells = sheet.getRow(0).getPhysicalNumberOfCells(); //获取到Excel文件中的所有的列
for(int r=2; r<=totalRows; r++)
{
row = sheet.getRow(r); // 读取左上端单元格
if(row!=null)
{
String[] cellValue = new String[totalCells];
for(int c = 0; c < totalCells; c++) //遍历列
{
cell = row.getCell(c); //获取到列的值
if(null != cell){
switch (cell.getCellType())
{
case HSSFCell.CELL_TYPE_NUMERIC:
if(HSSFDateUtil.isCellDateFormatted(cell))
{
Date dd = cell.getDateCellValue();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
cellValue[c] = df.format(dd);
}
else
{
cellValue[c] = cell.getNumericCellValue() + "";
}
break;
case HSSFCell.CELL_TYPE_STRING:
cellValue[c] = cell.getStringCellValue();
break;
case HSSFCell.CELL_TYPE_BOOLEAN:
cellValue[c] = cell.getBooleanCellValue() + "";
break;
case HSSFCell.CELL_TYPE_FORMULA:
cellValue[c] = cell.getCellFormula();
break;
case HSSFCell.CELL_TYPE_BLANK:
cellValue[c] = "";
break;
default:
cellValue[c] = "0";
break;
}
}
}
String[] val = cellValue;
if(val[1] != null)
{
SuppliesBasal sp = suppliesBasalService.getByCode(val[1].trim());
Type typeNos = typeService.getByTypeNo(val[1].trim().substring(0,3)); //12位码的前三位同类型信息的编号
if(sp == null)
{
if(typeNos !=null)
{
SuppliesBasal supBasal = new SuppliesBasal();
supBasal.setSuppliesCode(val[1].trim());
supBasal.setSuppliesName(val[2]);
supBasal.setPecifications(val[3]);
supBasal.setReferPrice(Double.parseDouble(val[4]));
supBasal.setType(typeNos);
supBasal.setAmountUnit(val[5]);
supBasal.setPerAmount(Double.parseDouble(val[6]));
supBasal.setMeasuringUnit(val[7]);
supBasal.setIsFixedAssets(val[8]);
supBasal.setUseLife(Integer.parseInt(val[9]));
supBasal.setToolOrMaterials(val[10]);
supBasal.setSuppliesCategory(val[11]);
supBasal.setIsTest(val[12]);
supBasal.setTestCycle(Integer.parseInt(val[13]));
suppliesBasalService.save(supBasal);
}
}
}
}
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
/**
*判断excel的版本
*/
static Workbook openWorkbook(InputStream in,String filename)throws IOException
{
Workbook wb = null;
if(filename.endsWith(".xlsx")){
wb = new XSSFWorkbook(in);//Excel 2007
} else {
wb = new HSSFWorkbook(in);//Excel 2003
}
return wb;
}
- Java中将数据从excel表格中数据导入到数据库
- java从数据库中将数据导入到excel中
- 实现将数据导入到excel中或者从excel中将数据导入到数据库
- java实现Excel导入数据库,数据库中的数据导入到Excel表格中
- 从mysql中将数据导入到oracle数据库中
- Excel表格数据导入到SQLServer2000数据库中
- POI导入Excel表格数据到数据库中
- 批量导入excel表格数据到数据库中
- JAVA把excel表格的数据导入到数据库
- Excel表格数据导入到SQLServer数据库
- Excel表格数据导入到SQLServer数据库
- excel表格数据导入到mysql数据库
- Excel表格数据导入到SQLServer数据库
- excel-从excel导入数据到数据库
- JavaWeb中将数据从Excel表导入到数据库的实例
- JAVA工具类(5) --- 批量导入excel表格数据到数据库中
- 从Excel文件中,导入数据到SQL数据库中
- jxl 从excel导入数据到数据库中;java中jdbc连接数据库
- Jmeter-JDBC Request的Query Type
- MFC六大核心机制之一:MFC程序的初始化
- (十四)ArcGIS API For Javascript之几何服务
- c++单利对象的释放
- mysql常用命令行
- Java中将数据从excel表格中数据导入到数据库
- RabbitMQ的RPC【JAVA】
- Java内存模型及GC原理
- MySql数据库学习三 插入
- LeetCode 344. Reverse String
- Scrapy 核心架构 流程 (三)
- WikiOI 1332 上白泽慧音 (最裸 强连通)
- 《读大学,究竟读什么?》 笔记
- 安装Android Studio