当前位置: 首页 > wzjs >正文

西城网站建设浩森宇特网站开发小公司推荐

西城网站建设浩森宇特,网站开发小公司推荐,北京建设银行分行招聘网站,阿坝州做网站公司需求也简单,导word文件用户登记表,有各部门的十几个版本(为什么这么多?不知道)。这里说下谈下我的一些代码做法: 需求分析: 如果能解决java字段和各项填的值怎么配对的问题,那么就…

需求也简单,导word文件用户登记表,有各部门的十几个版本(为什么这么多?不知道)。这里说下谈下我的一些代码做法:
在这里插入图片描述

需求分析:
如果能解决java字段和各项填的值怎么配对的问题,那么就好办了。

经分析,配对问题采用了一种右侧值的思路,即:全部的字段项都是 姓名–>张三 ,也就是左侧是中文key,右侧是value这种型式。这个是确认过的。只要按这个规律,配对是不成问题的。

做法如下:
第一步,模板定义,将每个模板的中文名与java字段名进行对应,这里因为模板和硬编码较多,每个模板我放到xml中定义了。
templateCode:模板code
templateName:模板名称
processor: 执行保存任务的执行器
table index=“2”:word模板里面的第几张表,有的模板有多张说明表。要说明取第几张。


<?xml version="1.0" encoding="UTF-8" ?><!ELEMENT template (table+)><!ATTLIST template templateCode #REQUIRED><!ATTLIST template templateName   #REQUIRED><!ATTLIST template processor   #REQUIRED><!ELEMENT table (cell-single+,cell-collection+)><!ATTLIST table index (1|2|3|4|5) ><!--单个k-v值--><!ELEMENT cell-single EMPTY><!ATTLIST cell-single sort (1|2|3|4|5)  ><!ATTLIST cell-single chinaName #REQUIRED><!ATTLIST cell-single propName #REQUIRED><!ATTLIST cell-single location   (right|under)  ><!--子表集合或其他集合--><!ELEMENT cell-collection (start-header+,end-header+)><!ATTLIST cell-collection subTableCode #REQUIRED><!ATTLIST cell-collection subTableName  #REQUIRED><!ELEMENT start-header EMPTY><!ATTLIST start-header headerName   #REQUIRED><!ATTLIST start-header propName  #REQUIRED><!ELEMENT end-header EMPTY><!ATTLIST end-header headerName  #REQUIRED><?xml version="1.0" en
coding="UTF-8" ?>
<!DOCTYPE template SYSTEM "uniter_import.dtd">
<template templateCode="mingZhu" templateName="民主党派代表人士信息采集表" processor="mingZhuImportUniterProcessor"><table index="2"><cell-single chinaName="姓名" propName="userName"/><cell-single chinaName="性别" propName="sex"/><cell-single chinaName="出生年月" propName="birthday"/><cell-single chinaName="民族" propName="nation"/><cell-single chinaName="籍贯" propName="nativePlace"/><cell-single chinaName="出生地" propName="birthPlace"/><cell-single chinaName="加入党派时间" propName="joinPartyDate"/></table>
</template>

第二步:
解析导入的数据,可使用XWPFDocument 工作来解析docx,TableIterator来解析doc。该工具还可以把那个寸照解析出来,挺好用的。正常的坐标–>值封装成List集合,

@Data
public class TableCellValue {private int row; // 行private int col;  // 列private String cellValue;

第三步,根据xml配置的模板表头,读取到表头的坐标。以姓名为例,假如得到姓名–>(0,0)的坐标。那么姓名的value值必定出现在(张三)–>(1,0),据此可得所有的value值都是(col+1,row),从而解析出姓名=张三,年龄=18 k->v对集合。

第四步,根据姓名=张三对和模板配置的属性对应关系,得到userName–>张三,age–>18。然后构建实体,保存数据。

经实际使用,效果还可以,导了一批2千多用户的存量数据。没出啥问题。但有时会存在一个表头和value相等的BUG。导致读不到正确的表头位置。实际也有人工介入修正的情况。但极少。该功能主要也是做系统上线之初的数据初始化。后面用得较少。也可以接受。


文章转载自:

http://NljwbrJQ.zknxh.cn
http://VFDTQhzp.zknxh.cn
http://CXK7WSUm.zknxh.cn
http://qb1MfHuq.zknxh.cn
http://cOqpdL7D.zknxh.cn
http://Z8XJrkM5.zknxh.cn
http://8JQtdxTf.zknxh.cn
http://NuI7rgC2.zknxh.cn
http://uCoe068m.zknxh.cn
http://biOXnt3c.zknxh.cn
http://2cTbdiyQ.zknxh.cn
http://TghaRiUB.zknxh.cn
http://Vq9qyAB2.zknxh.cn
http://nxZOwGrT.zknxh.cn
http://p6dKKDFT.zknxh.cn
http://layb0liO.zknxh.cn
http://5EbelZwk.zknxh.cn
http://sOpugkpD.zknxh.cn
http://8RY2uFcL.zknxh.cn
http://UmwdF61V.zknxh.cn
http://f8II9cKn.zknxh.cn
http://ZkJ3wIpB.zknxh.cn
http://KlP3Tqm1.zknxh.cn
http://MK6nIKVW.zknxh.cn
http://guIPqRmt.zknxh.cn
http://hBKyJUN9.zknxh.cn
http://fAEFaPw4.zknxh.cn
http://52Z7nzgM.zknxh.cn
http://ZwHa9GZR.zknxh.cn
http://6VQFQ5Bp.zknxh.cn
http://www.dtcms.com/wzjs/683527.html

相关文章:

  • 花生壳可做网站吗网站建设网络推广代理公司
  • 哪个网站做的ppt模板好高手总结wordpress函数
  • 广州个人网站建设网站强制qq弹窗代码
  • 如何建设移动网站自己网站如何做关键词排名
  • 360建网站wordpress windows live writer
  • 漳州电脑网站建设虚拟展馆官方网站建设
  • 电子商务网站建设策划书范文房地产网站大全
  • 建设部网站质量终身责任承诺书织梦绿色企业网站模板
  • 做产品网站建设小程序加盟代理前景
  • 怎么看网站是否被k过怎么制作网站链接转发视频
  • saas建站平台介绍奇搜建设辽沈阳网站
  • 学校网站前置审批照片变年轻在线制作网站
  • 哪些网站做电商比较好如何制作flash网站
  • 怎么样通过做网站赚钱吗网页游戏不花钱的
  • 东莞营销网站制作你们需要网站建设
  • 娄底建设网站伊宁seo网站建设
  • 西安 网站设计做网站这么做
  • 阿里云个人备案可以做企业网站浏览器在线进入
  • 统计局门户网站建设背景做网站需要考虑哪些
  • 丰南建设网站网页版梦幻西游10月五行斗法攻略
  • wordpress 做一个视频站网站建设优化服务
  • 网站建设费用的会计核算个人互动网站
  • 做防护用品的网站唐山网站制作企业
  • 龙岩网站推广seo综合查询 站长工具
  • 点击量高的网站网站充值系统怎么做
  • 网站建设技术要求标准网站建设与管理 第2版
  • 南宁庆云网站建设北美购物网站排名
  • 门户网站前期网络采集商家信息免费发布seo站内优化包括
  • 东台建设局官方网站wordpress 手机 菜单
  • 网站前台后台哪个好网站开发合同是否专属管辖