前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jxls导入excel

jxls导入excel

作者头像
一笠风雨任生平
发布2019-08-02 10:59:09
1.7K0
发布2019-08-02 10:59:09
举报
文章被收录于专栏:服务化进程服务化进程

我们在开发中经常用jxls实现导出功能,殊不知jxls也有导入功能,下面来介绍下如何使用jxls导入excel。

首先在maven的pom中添加相关依赖,如下:

代码语言:javascript
复制
<dependency>
			<groupId>net.sf.jxls</groupId>
			<artifactId>jxls-core</artifactId>
			<version>1.0.6</version>
		</dependency>
		<dependency>
		    <groupId>net.sf.jxls</groupId>
		    <artifactId>jxls-reader</artifactId>
		    <version>1.0.6</version>
		</dependency>

然后需要配置导入模板(即字段映射关系),如下:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<workbook>
	<worksheet name="新增局数据">
		<section startRow="1" endRow="2" />
		<loop startRow="3" endRow="3" items="tcs" var="tc" varType="com.aspire.train.bdc.demo.entity.TcPartner">
			<section startRow="3" endRow="3">
				<mapping row="3" col="0">tc.operType</mapping>
				<mapping row="3" col="1">tc.partnerId</mapping>
				<mapping row="3" col="2">tc.partnerName</mapping>
				<mapping row="3" col="3">tc.description</mapping>
				<mapping row="3" col="4">tc.validProvince</mapping>
				<mapping row="3" col="5">tc.validDate</mapping>
				<mapping row="3" col="6">tc.expireDate</mapping>
			</section>
			<loopbreakcondition>
				<rowcheck offset="0">
					<cellcheck offset="0"></cellcheck>
				</rowcheck>
			</loopbreakcondition>
		</loop>
	</worksheet>
</workbook>

相关说明可以查看官网http://jxls.sourceforge.net/reference/reader.html

其次,是制作导入模板,如下:

下面是实现的java代码块,如下:

代码语言:javascript
复制
String xmlConfig = ConfigurationHelper
				.getFullFileName("com/aspire/train/bdc/demo/template/TcPartner.xml");
		XLSReader mainReader;
		try {
			InputStream inputXML = new BufferedInputStream(new FileInputStream(xmlConfig));
			mainReader = ReaderBuilder.buildFromXML(inputXML);
			InputStream inputXLS = new BufferedInputStream(file.getInputStream());
			TcPartner tc = new TcPartner();
			List<TcPartner> tcs = new ArrayList<TcPartner>();
			Map<String,Object> beans = new HashMap<String,Object>();
			beans.put("tc", tc);
			beans.put("tcs", tcs);
			mainReader.read(inputXLS, beans);
			System.out.println(beans);
		} catch (IOException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档