- 浏览: 38753 次
- 性别:
- 来自: 北京
文章分类
最新评论
方法一
/**
*使用Hibernate框架导入
* @throws IOException
* @throws BiffException
*/
public String imp() throws BiffException, IOException {
TYh user = (TYh) session.get(SSHConstant.ONLINE_USER);// 获取用户信息
//输入流
InputStream fis = null;
try {
fis = new FileInputStream(excelName);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
//得到解析Excel的实体集合
//打开文件
try {
Workbook book = Workbook.getWorkbook(fis);
//得到第一个工作表对象
Sheet sheet = book.getSheet(0);
//得到第一个工作表中的总行数
int rowCount = sheet.getRows();
//循环取出Excel中的内容
for (int i = 1; i < rowCount; i++) {
Cell[] cells = sheet.getRow(i);
YpLsgzry lsgz = new YpLsgzry();//new一个对象
lsgz.setLsgzryxm(cells[0].getContents());
lsgz.setLsgzryxb(cells[1].getContents());
lsgz.setLsgzrysfzh(cells[2].getContents());
lsgz.setLsgzryfl(cells[3].getContents());
lsgz.setLsgzryjf(cells[4].getContents());
lsgz.setLsgzrycphm(cells[5].getContents());
lsgz.setLsgzrygzyy(cells[6].getContents());
lsgz.setKsgzsj(cells[7].getContents());
lsgz.setJsgzsj(cells[8].getContents());
lsgz.setSqgzdw(cells[9].getContents());
lsgz.setSqrxm(cells[10].getContents());
lsgz.setSqrlxdh(cells[11].getContents());
lsgz.setJcf(cells[12].getContents());
lsgz.setGjf(cells[13].getContents());
lsgz.setLsgzryqttz(cells[14].getContents());
service.saveOrUpdate(lsgz);
logservice.savelogHadle(2, user.getYhm()+"导入", 1);//日志记录
}
} catch (BiffException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "add";
方法二
/**
*使用jdbc架导入
* @throws IOException
* @throws BiffException
*/
public class ImportExcelLsgzry {
public static List readExcel(String excelFileName) throws BiffException,IOException {
List<String[]> list = new ArrayList();
Workbook rwb = null;
Cell cell = null;
InputStream stream = new FileInputStream(excelFileName);
rwb = Workbook.getWorkbook(stream);
Sheet sheet = rwb.getSheet(0);
// 行数(表头的目录不需要,从1开始)
for (int i = 1; i < sheet.getRows(); i++) {
String[] str = new String[sheet.getColumns()];
// 列数
for (int j = 0; j < sheet.getColumns(); j++) {
// 获取第i行,第j列的值
cell = sheet.getCell(j, i);
str[j] = cell.getContents();
}
// 把刚获取的列存入list
list.add(str);
}
return list;
}
public static void main(String[] args) throws BiffException, IOException{
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
PreparedStatement ps = null;
String url = "jdbc:oracle:thin:@10.1.7.79:1521:tjkf";
String username = "ypxx";
String password = "ypxx";
try {
DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
conn = DriverManager.getConnection(url, username, password);
} catch (SQLException e) {
e.printStackTrace();
}
List l = ImportExcelLsgzry.readExcel("D:\\lsgz.xls");
try {
//TYh user = (TYh) session.get(SSHConstant.ONLINE_USER);// 获取用户信息
PreparedStatement prt = conn
.prepareStatement("insert into yp_lsgzry(id,lsgzryxm,lsgzryxb,lsgzrysfzh,lsgzryfl,lsgzryjf,lsgzrycphm,lsgzrygzyy,ksgzsj,jsgzsj,sqgzdw,sqrxm,sqrlxdh,jcf,gjf,lsgzryqttz) values (seq_yp_lsgzry.nextval,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
for (int i = 0; i < l.size(); i++) {
String[] li = (String[]) l.get(i);
prt.setString(1, li[0]);
prt.setString(2, li[1]);
prt.setString(3, li[2]);
prt.setString(4, li[3]);
prt.setString(5, li[4]);
prt.setString(6, li[5]);
prt.setString(7, li[6]);
prt.setString(8, li[7]);
prt.setString(9, li[8]);
prt.setString(10, li[9]);
prt.setString(11, li[10]);
prt.setString(12, li[11]);
prt.setString(13, li[12]);
prt.setString(14, li[13]);
prt.setString(15, li[14]);
prt.addBatch();
if (i % 500 == 0) {
prt.executeBatch();
}
}
prt.executeBatch();
} catch (Exception e) {
e.printStackTrace();
}
}
}
以下是页面:
<script type="text/javascript">
function checkfile(){
var FileType = "xls";
if(uploadForm.excelName.value == ""){
alert("请点击浏览按钮,选择您要导入的文件!");
}else{
str = uploadForm.excelName.value;
strs = str.toLowerCase();
//lens = strs.length;
extname = strs.substring(strs.lastIndexOf('.')+1, strs.length).toLowerCase();
//alert(extname);
if(FileType.indexOf(extname) == -1){
alert("请选择excel文件!");
}else{
uploadForm.submit();
}
}
}
</script>
<div id="import">
<s:form name="uploadForm" action="lsgzry!imp" method="post" onsubmit="return checkfile()" enctype="multipart/form-data" namespace="/background">
<input id="excelName" name="excelName" type="file" value="上传文件"></input>
<input type="button" onclick="checkfile();" value="开始导入" ></input>
<div style="color: gray">
<ol title="导入说明"><span style="font-weight: 600">导入说明</span>
<li>第一步 选择文件(Excel文件)。下载模板<a href="${Context}/upload/model.xls"> model.xls</a></li>
<li>第二步 点击开始导入</li>
<li>文件必须是Excel文件</li>
</ol>
</div>
</s:form>
</div>
/**
*使用Hibernate框架导入
* @throws IOException
* @throws BiffException
*/
public String imp() throws BiffException, IOException {
TYh user = (TYh) session.get(SSHConstant.ONLINE_USER);// 获取用户信息
//输入流
InputStream fis = null;
try {
fis = new FileInputStream(excelName);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
//得到解析Excel的实体集合
//打开文件
try {
Workbook book = Workbook.getWorkbook(fis);
//得到第一个工作表对象
Sheet sheet = book.getSheet(0);
//得到第一个工作表中的总行数
int rowCount = sheet.getRows();
//循环取出Excel中的内容
for (int i = 1; i < rowCount; i++) {
Cell[] cells = sheet.getRow(i);
YpLsgzry lsgz = new YpLsgzry();//new一个对象
lsgz.setLsgzryxm(cells[0].getContents());
lsgz.setLsgzryxb(cells[1].getContents());
lsgz.setLsgzrysfzh(cells[2].getContents());
lsgz.setLsgzryfl(cells[3].getContents());
lsgz.setLsgzryjf(cells[4].getContents());
lsgz.setLsgzrycphm(cells[5].getContents());
lsgz.setLsgzrygzyy(cells[6].getContents());
lsgz.setKsgzsj(cells[7].getContents());
lsgz.setJsgzsj(cells[8].getContents());
lsgz.setSqgzdw(cells[9].getContents());
lsgz.setSqrxm(cells[10].getContents());
lsgz.setSqrlxdh(cells[11].getContents());
lsgz.setJcf(cells[12].getContents());
lsgz.setGjf(cells[13].getContents());
lsgz.setLsgzryqttz(cells[14].getContents());
service.saveOrUpdate(lsgz);
logservice.savelogHadle(2, user.getYhm()+"导入", 1);//日志记录
}
} catch (BiffException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "add";
方法二
/**
*使用jdbc架导入
* @throws IOException
* @throws BiffException
*/
public class ImportExcelLsgzry {
public static List readExcel(String excelFileName) throws BiffException,IOException {
List<String[]> list = new ArrayList();
Workbook rwb = null;
Cell cell = null;
InputStream stream = new FileInputStream(excelFileName);
rwb = Workbook.getWorkbook(stream);
Sheet sheet = rwb.getSheet(0);
// 行数(表头的目录不需要,从1开始)
for (int i = 1; i < sheet.getRows(); i++) {
String[] str = new String[sheet.getColumns()];
// 列数
for (int j = 0; j < sheet.getColumns(); j++) {
// 获取第i行,第j列的值
cell = sheet.getCell(j, i);
str[j] = cell.getContents();
}
// 把刚获取的列存入list
list.add(str);
}
return list;
}
public static void main(String[] args) throws BiffException, IOException{
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
PreparedStatement ps = null;
String url = "jdbc:oracle:thin:@10.1.7.79:1521:tjkf";
String username = "ypxx";
String password = "ypxx";
try {
DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
conn = DriverManager.getConnection(url, username, password);
} catch (SQLException e) {
e.printStackTrace();
}
List l = ImportExcelLsgzry.readExcel("D:\\lsgz.xls");
try {
//TYh user = (TYh) session.get(SSHConstant.ONLINE_USER);// 获取用户信息
PreparedStatement prt = conn
.prepareStatement("insert into yp_lsgzry(id,lsgzryxm,lsgzryxb,lsgzrysfzh,lsgzryfl,lsgzryjf,lsgzrycphm,lsgzrygzyy,ksgzsj,jsgzsj,sqgzdw,sqrxm,sqrlxdh,jcf,gjf,lsgzryqttz) values (seq_yp_lsgzry.nextval,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
for (int i = 0; i < l.size(); i++) {
String[] li = (String[]) l.get(i);
prt.setString(1, li[0]);
prt.setString(2, li[1]);
prt.setString(3, li[2]);
prt.setString(4, li[3]);
prt.setString(5, li[4]);
prt.setString(6, li[5]);
prt.setString(7, li[6]);
prt.setString(8, li[7]);
prt.setString(9, li[8]);
prt.setString(10, li[9]);
prt.setString(11, li[10]);
prt.setString(12, li[11]);
prt.setString(13, li[12]);
prt.setString(14, li[13]);
prt.setString(15, li[14]);
prt.addBatch();
if (i % 500 == 0) {
prt.executeBatch();
}
}
prt.executeBatch();
} catch (Exception e) {
e.printStackTrace();
}
}
}
以下是页面:
<script type="text/javascript">
function checkfile(){
var FileType = "xls";
if(uploadForm.excelName.value == ""){
alert("请点击浏览按钮,选择您要导入的文件!");
}else{
str = uploadForm.excelName.value;
strs = str.toLowerCase();
//lens = strs.length;
extname = strs.substring(strs.lastIndexOf('.')+1, strs.length).toLowerCase();
//alert(extname);
if(FileType.indexOf(extname) == -1){
alert("请选择excel文件!");
}else{
uploadForm.submit();
}
}
}
</script>
<div id="import">
<s:form name="uploadForm" action="lsgzry!imp" method="post" onsubmit="return checkfile()" enctype="multipart/form-data" namespace="/background">
<input id="excelName" name="excelName" type="file" value="上传文件"></input>
<input type="button" onclick="checkfile();" value="开始导入" ></input>
<div style="color: gray">
<ol title="导入说明"><span style="font-weight: 600">导入说明</span>
<li>第一步 选择文件(Excel文件)。下载模板<a href="${Context}/upload/model.xls"> model.xls</a></li>
<li>第二步 点击开始导入</li>
<li>文件必须是Excel文件</li>
</ol>
</div>
</s:form>
</div>
发表评论
-
java/js 时间
2016-03-14 10:54 0/** * 根据传入时间获取上月月份 */ publ ... -
杂七杂八1
2016-03-14 10:51 0public ResponseModel execute(Re ... -
《转》fastjson生成和解析json数据,序列化和反序列化数据
2015-09-29 15:17 1779fastjson生成和解析json数据,序列化和反序列化数据 ... -
fastjson和数组,list,map之间转换
2015-09-29 14:36 4558package fastJson.test; imp ... -
java unicode编码转换才成汉字
2014-11-05 15:40 1684package com.bky.controller; p ... -
遍历Map的四种方法
2014-08-06 11:52 0public static void main(String[ ... -
java中URLEncoder.encode与URLDecoder.docode的使用
2014-08-01 10:09 0在http请求时,传递参数的时候,如果有中文,那么可以先转码再 ... -
URL地址中获取参数和值
2014-07-10 10:09 1200/* * Copyright 2012 The EGF ... -
深入java异常处理机制--深受启发(转)
2014-04-03 15:14 580(转载自:http://www.blogjava.net/fr ... -
java开发中各种异常
2014-04-03 14:33 545作为一名开发者,Ja ... -
java读取txt文件,导入数据库
2014-03-18 16:16 2115package com.egf.qingbao; impor ... -
java的Timer定时任务调度
2014-02-19 10:25 496//第一个类:监听 import java.util.Time ... -
超链接点击后不跳转
2014-01-27 15:16 1473让超链接点击后不跳转,可以用href = "#&q ... -
dom4j生成和解析xml文件
2014-01-27 15:17 633package com.test; import ... -
jdom生成和解析xml文件
2014-01-27 15:18 546package com.test; import ... -
java生成xml文件
2014-01-15 17:03 441/* * Copyright 2013 The EGF ... -
String类常用的方法
2013-04-23 12:02 594java中String的常用方法 1、length() 字符 ...
相关推荐
java实现Excel导入
java_poi实现excel导入导出功能,有详细的注解
Java实现Excel导入导出简介 Java实现Excel导入导出是通过Java语言编写的程序,将数据从Excel文件中读取或写入到Excel文件中。这种方式可以实现数据的批量处理和分析,提高工作效率。 Java实现Excel导入导出的应用...
Java实现Excel导入导出功能网络搜集,很好用
Excel源代码,导入导出各种工具类 <groupId>org.apache.poi <artifactId>poi <groupId>org.apache.poi <artifactId>poi-scratchpad 代码实例: String path = ""; byte[] bytes; vo.setCurrentPage(0); vo....
java实现excel的导入导出(poi详解),经过测试poi效率要比jxl要高很多,特别是数据量大的时候jxl根本无法用肉眼入目,本资源是个可运行项目demo,很有参考价值!
java实现excel导入数据库
java实现Excel数据导入到数据库,如果数据库中存在就更新。 数据库数据导入到Excel表中。
java实现excel导入导出
java实现excel导入导出.pdf
用Java实现的Excel的导入导出,简洁明了,高质量代码。
JAVA实现Excel表数据导入ORACLE数据库JAVA实现Excel表数据导入ORACLE数据库JAVA实现Excel表数据导入ORACLE数据库JAVA实现Excel表数据导入ORACLE数据库
JAVA实现Excel表数据导入ORACLE数据库.txtJAVA实现Excel表数据导入ORACLE数据库.txtJAVA实现Excel表数据导入ORACLE数据库.txt
Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出Java POI EXCEL导入导出
JAVA实现Excel导入数据库相应表中。
java实现Excel数据导入到mysql数据库,如果数据库中存在就更新,数据库数据导入到Excel表中。
请到网站http://www.apache.org/dyn/closer.cgi/poi/右击超链接2.5.1.zip下载压缩包poi-bin-2.5.1-final-20040804.zip,解压缩后得到如图2.1所示的目录结构。我们主要用到poi-2.5.1-final-20040804.jar这个库文件。...
Java实现excel文档数据导入数据库、导出excel
java实现Excel导入导出源码,简单 易懂 有详细的注释
Java使用poi实现excel导入导出,导入导出已做成通用方法,内附说明文档