Commit 799e7aa5 by wuchengwu

zip定时解压读取指纹,人像,足迹等数据

parent 0b6a359f
......@@ -5,6 +5,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.MultipartConfigFactory;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.EnableScheduling;
import javax.servlet.annotation.MultipartConfig;
......@@ -17,6 +18,9 @@ import javax.servlet.MultipartConfigElement;
@SpringBootApplication
@EnableCaching
//进行定时任务
@EnableScheduling
public class XtbaBootApplication {
public static void main(String[] args) {
......
package com.founder.model;
import lombok.Data;
/**
* @author wcw
* @version 1.0
* @date 2021/7/10 15:49
*/
@Data
public class Goods {
private String GOODSCOLOR;
private String GOODSFEATURE;
private String GOODSFLAG;
private String GOODSNAME;
private String GOODSNO;
private String GOODSPATH;
private String GOODSSEQ;
private String GOODSTYPE;
private String GOODSVALUE;
private String GOODSVERSION;
}
package com.founder.model;
import lombok.Data;
import java.util.List;
/**
* @author wcw
* @version 1.0
* @date 2021/7/10 14:56
*/
@Data
public class PersonDto {
private String BARCODE;
private String PNAME;
private String ALIASNAME;
private String PSEX;
private String IDNUMBERTYPE;
private String IDNUMBER;
private String BIRTHDATE;
private String NATION;
private String NATIONALITY;
private String HOUSEREG;
private String USEREDNAME;
private String PHONE1;
private String WORKUNIT;
private String PROFESSION;
private String DEUCATION;
private String HEIGHT;
private String WEIGHT;
private String FOOTLENGTH;
private String HABITUS;
private String POLITICSSTATUS;
private String IDENTITY;
private String SPECIALTY;
private String LOGICDBTYPE;
private String VOICE;
private String FEATURE;
private String BLOODTYPE;
private String BIRTHADDCODE;
private String FTPBARCODE;
private String DNABARCODE;
private String CASETYPE1;
private String CASETYPE2;
private String CASETYPE3;
private String MATRIALSTATUS;
private String SIGNALEMENT1;
private String SIGNALEMENT2;
private String SIGNALEMENT3;
private String ADDRESS;
private String ADDRESSCODE;
private String COLLECTUNITNAME;
private String COLLECTPSN;
private String COLLECTDATE;
private String COLLECTUNITCODE;
private String COMMUNITY;
private String MILITARYSERVICE;
private String FAITH;
private String CRIMINALRECFLG;
private String IFPSYCHOSIS;
private String IFDRUG;
private String IFAIDS;
private String CREATEUNIT;
private String CREATEUSER;
private String DEATHTIME;
private String CRIMINALREC;
private String CASEDETAILS;
private String REMARK;
private String UPDATETI;
private String CREATETIME;
private String FILEPATH;
private String RFPSTATUS;
private String PFPSTATUS;
private String PLPSTATUS;
private String FACESTATUS;
private String DATASTATUS;
private String HOUSEREGCODE;
private String IFIDCARD;
private String UPLOADSTATE;
private String PSNTYPE;
private String NAME_PY;
private String ALIASNAME_PY;
private String IFPHONEINFO;
private String IFPERSONALEFFECTS;
private String IFFOOTINFO;
private List<Goods> GOODS;
private String LEFTFOOTPATH;
private String RIGHTFOOTPATH;
private String RESERVER;
private String OPENBANKTIME;
private String OPENBANKNAME;
private String OPENBANKADDRESS;
private String IDCARDNUM;
private String BANKCARDPERSONNAME;
private String BANKINFOIDCARDTYPE;
private String BANKCARDTYPE;
private String BANKCARDNAME;
private String BANKCARDINVALIDTIME;
private String BANKCARDID;
private String ADDID;
private String ACCOUNTCANCELLATIONTIME;
}
......@@ -152,6 +152,107 @@ public class FileUtils {
}
//将照片转成二进制码
public static String fileToByte(File img) {
FileInputStream inputStream = null;
try {
Base64.Encoder encoder = Base64.getEncoder();
BASE64Decoder decoder = new sun.misc.BASE64Decoder();
inputStream = new FileInputStream(img);
int available = inputStream.available();
byte[] bytes = new byte[available];
inputStream.read(bytes);
String base64Str = encoder.encodeToString(bytes);
byte[] bytes1 = decoder.decodeBuffer(base64Str);
return base64Str;
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
// private static void searchFiles(String fileDir) {
// List<File> fileList = new ArrayList<File>();
// File file = new File(fileDir);
// File[] files = file.listFiles();// 获取目录下的所有文件或文件夹
// if (files == null) {// 如果目录为空,直接退出
// return;
// }
// // 遍历,目录下的所有文件
// for (File f : files) {
// if (f.isFile()) {
// fileList.add(f);
// } else if (f.isDirectory()) {
// System.out.println(f.getAbsolutePath());
// searchFiles(f.getAbsolutePath());
// }
// }
// for (File f1 : fileList) {
// System.out.println(f1.getName());
// }
// }
/**
* 查找文件名
* @param folder
* @param keyword
* @return
*/
public static List<File> searchFiles(File folder, String keyword) {
List<File> result = new ArrayList<File>();
if (folder.isFile())
result.add(folder);
//查找文件名
// File[] subFolders = folder.listFiles(new FileFilter() {
// @Override
// public boolean accept(File file) {
// if (file.isDirectory()) {
// return true;
// }
// if (file.getName().toLowerCase().contains(keyword)) {
// return true;
// }
// return false;
// }
// });
//查找后缀名
File[] subFolders = folder.listFiles(new FileFilter() {
@Override
public boolean accept(File file) {
if (file.isDirectory()) {
return true;
}
if (file.getName().toLowerCase().endsWith(keyword)) {
return true;
}
return false;
}
});
if (subFolders != null) {
for (File file : subFolders) {
if (file.isFile()) {
// 如果是文件则将文件添加到结果列表中
result.add(file);
} else {
// 如果是文件夹,则递归调用本方法,然后把所有的文件加到结果列表中
result.addAll(searchFiles(file, keyword));
}
}
}
return result;
}
//生成XML文件并且存入服务器端
public static void saveXmlFile(String xmlStr, String rybh, String xmlFilePath, String fileName, User user) {
String savePathS = "/xmlFile";
......@@ -492,46 +593,52 @@ public class FileUtils {
FileUtils.saveXmlFile(xmlStr,"R4302020000002019080001","C:/Oracle/Middleware/user_projects/domains/XTBA_domain/autodeploy/XZZYXT/upload","HMXX-R4302020000002019080001.xml",user);
*/
Map<String, Object> res = new HashMap<>();
List<NameValuePair> pairs = new ArrayList<NameValuePair>();
NameValuePair pair0 = new BasicNameValuePair("request_id", "123");
NameValuePair pair1 = new BasicNameValuePair("user_id", "admin");
NameValuePair pair2 = new BasicNameValuePair("user_dept", "430200000000");
NameValuePair pair3 = new BasicNameValuePair("version","1.00");
NameValuePair pair4 = new BasicNameValuePair("bcjr_zjhm","1212121212");
NameValuePair pair5 = new BasicNameValuePair("bcjr_xm","ceshi");
NameValuePair pair6 = new BasicNameValuePair("ywfssj","20190925104218");
NameValuePair pair7 = new BasicNameValuePair("hmzp_zy","1234141123123");
NameValuePair pair8 = new BasicNameValuePair("yyqsqkdm","0");
NameValuePair pair9 = new BasicNameValuePair("zy_xxzlpf","90");
pairs.add(pair0);
pairs.add(pair1);
pairs.add(pair2);
pairs.add(pair3);
pairs.add(pair4);
pairs.add(pair5);
pairs.add(pair6);
pairs.add(pair7);
pairs.add(pair8);
pairs.add(pair9);
res.put("user_id", "admin");
res.put("client_id", "hongba");
res.put("request_id", "123");
res.put("user_dept","430200000000");
res.put("bcjr_zjhm","121353454532212");
res.put("bcjr_xm","ceshi");
res.put("ywfssj","20190924154218");
res.put("version", "1.00");
res.put("hmzp_zy", "wewtecsfdsdfsfrw24234");
res.put("hmzp_yy", "sdfwrwrw32235aafsfwrwe");
res.put("yyqsqkdm", "0");
res.put("zyqsqkdm", "1");
res.put("zy_xxzlpf", "90");
res.put("yy_xxzlpf", "80");
System.out.println(res);
JSONObject jsonResult= requestByPost("http://127.0.0.1:9300/iris/regIris",res);
//JSONObject jsonResult= requestByPost_new(urlstr,pairs);
System.out.println(jsonResult.toJSONString());
// Map<String, Object> res = new HashMap<>();
// List<NameValuePair> pairs = new ArrayList<NameValuePair>();
// NameValuePair pair0 = new BasicNameValuePair("request_id", "123");
// NameValuePair pair1 = new BasicNameValuePair("user_id", "admin");
// NameValuePair pair2 = new BasicNameValuePair("user_dept", "430200000000");
// NameValuePair pair3 = new BasicNameValuePair("version","1.00");
// NameValuePair pair4 = new BasicNameValuePair("bcjr_zjhm","1212121212");
// NameValuePair pair5 = new BasicNameValuePair("bcjr_xm","ceshi");
// NameValuePair pair6 = new BasicNameValuePair("ywfssj","20190925104218");
// NameValuePair pair7 = new BasicNameValuePair("hmzp_zy","1234141123123");
// NameValuePair pair8 = new BasicNameValuePair("yyqsqkdm","0");
// NameValuePair pair9 = new BasicNameValuePair("zy_xxzlpf","90");
// pairs.add(pair0);
// pairs.add(pair1);
// pairs.add(pair2);
// pairs.add(pair3);
// pairs.add(pair4);
// pairs.add(pair5);
// pairs.add(pair6);
// pairs.add(pair7);
// pairs.add(pair8);
// pairs.add(pair9);
// res.put("user_id", "admin");
// res.put("client_id", "hongba");
// res.put("request_id", "123");
// res.put("user_dept","430200000000");
// res.put("bcjr_zjhm","121353454532212");
// res.put("bcjr_xm","ceshi");
// res.put("ywfssj","20190924154218");
// res.put("version", "1.00");
// res.put("hmzp_zy", "wewtecsfdsdfsfrw24234");
// res.put("hmzp_yy", "sdfwrwrw32235aafsfwrwe");
// res.put("yyqsqkdm", "0");
// res.put("zyqsqkdm", "1");
// res.put("zy_xxzlpf", "90");
// res.put("yy_xxzlpf", "80");
// System.out.println(res);
// JSONObject jsonResult= requestByPost("http://127.0.0.1:9300/iris/regIris",res);
// //JSONObject jsonResult= requestByPost_new(urlstr,pairs);
// System.out.println(jsonResult.toJSONString());
List<File> files =searchFiles(new File("F:/baidudownload/钉钉下载"),"zip");
// List<File> files = searchFiles(new File("E:\\tem"), "1");
System.out.println("共找到:" + files.size() + "个文件");
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
}
public static String postUrl(String strURL, String params) {
......
package com.founder.utils;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.Charset;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
/**
* @author wcw
* @version 1.0
* @date 2021/7/10 14:30
*/
public class ZipUtils {
/**
* 进行zip文件解压
* @param zipFile
* @param descDir
* @return
*/
public static String unZipFiles(File zipFile, String descDir) {
//解压文件夹
String outPath = null;
ZipFile zip = null;//解决中文文件夹乱码
try {
zip = new ZipFile(zipFile, Charset.forName("GBK"));
String name = zip.getName().substring(zip.getName().lastIndexOf('\\')+1, zip.getName().lastIndexOf('.'));
// System.out.println(zip.getName().substring(zip.getName().lastIndexOf('.')+1, zip.getName().length()));
File pathFile = new File(descDir+name);
if (!pathFile.exists()) {
pathFile.mkdirs();
}
for (Enumeration<? extends ZipEntry> entries = zip.entries(); entries.hasMoreElements();) {
ZipEntry entry = (ZipEntry) entries.nextElement();
String zipEntryName = entry.getName();
InputStream in = zip.getInputStream(entry);
outPath = (descDir + name +"/"+ zipEntryName).replaceAll("\\*", "/");
// 判断路径是否存在,不存在则创建文件路径
File file = new File(outPath.substring(0, outPath.lastIndexOf('/')));
if (!file.exists()) {
file.mkdirs();
}
// 判断文件全路径是否为文件夹,如果是上面已经上传,不需要解压
if (new File(outPath).isDirectory()) {
continue;
}
// 输出文件路径信息
// System.out.println(outPath);
FileOutputStream out = new FileOutputStream(outPath);
byte[] buf1 = new byte[1024];
int len;
while ((len = in.read(buf1)) > 0) {
out.write(buf1, 0, len);
}
in.close();
out.flush();
out.close();
}
zip.close();
System.out.println("******************解压完毕********************");
} catch (IOException e) {
e.printStackTrace();
}finally {
//解压后删除压缩文件
boolean delete = zipFile.delete();
System.out.println("删除状态:"+delete);
}
//返回解压后的路径
return outPath.substring(0, outPath.lastIndexOf('/'));
}
public static void main(String[] args) {
String unZipFiles = unZipFiles(new File("F:/baidudownload/钉钉下载/R4600000504012021072906.zip"), "F:/baidudownload/钉钉下载/");
// String xmlToString = PraseXML.xmlToString(new File(unZipFiles+"/Person.xml"));
// Map map = PraseXML.parse_XMLMap(xmlToString);
// PersonDto personDto = JSON.parseObject(JSONObject.toJSONString(map), PersonDto.class);
// System.out.println(xmlToString);
// System.out.println("********************");
// System.out.println(map);
// System.out.println(personDto.toString());
// String fileToByte = FileUtils.fileToByte(new File(unZipFiles + "/RightFoot.jpg"));//RightFoot.jpg
// FileUtils.base64StringToImage(fileToByte);
}
}
......@@ -20,4 +20,6 @@ qganurl=http://zhyy.xzxt.nm/getGabZyInfoByJyaqMatj.action
#内蒙古新警综WebService接口地址
nmjz_interfaceurl=http://26.169.99.50:9086/tcwebservice/services/ServiceImpl?wsdl
sbglqx=admin:123456
\ No newline at end of file
sbglqx=admin:123456
ftpUrl=F:/test
\ No newline at end of file
......@@ -120,6 +120,8 @@
<result column="XDHWDM" property="xdhwdm" jdbcType="VARCHAR"/>
<result column="XYDM" property="xydm" jdbcType="VARCHAR"/>
<result column="RXBDJG" property="rxbdjg" jdbcType="VARCHAR"/>
<result column="ZJLEFTXXBH" property="zjleftxxbh" jdbcType="VARCHAR"/>
<result column="ZJRIGHTXXBH" property="zjrightxxbh" jdbcType="VARCHAR"/>
</resultMap>
<sql id="queryWhere">
......@@ -397,7 +399,10 @@
SFSWZT,
ZJLXDM,
XDHWDM,
XYDM
XYDM,
ZJLEFTXXBH,
ZJRIGHTXXBH,
ZWFKXX
)
values (
<if test="entity.rybh != null and entity.rybh != ''"> #{entity.rybh , jdbcType=VARCHAR } </if>
......@@ -590,6 +595,12 @@
<if test="entity.xdhwdm == null or entity.xdhwdm == ''">,NULL</if>
<if test="entity.xydm != null and entity.xydm != ''">, #{entity.xydm , jdbcType=VARCHAR } </if>
<if test="entity.xydm == null or entity.xydm == ''">,NULL</if>
<if test="entity.zjleftxxbh != null and entity.zjleftxxbh != ''">, #{entity.zjleftxxbh , jdbcType=VARCHAR }</if>
<if test="entity.zjleftxxbh == null or entity.zjleftxxbh == ''">,NULL</if>
<if test="entity.zjrightxxbh != null and entity.zjrightxxbh != ''">, #{entity.zjrightxxbh , jdbcType=VARCHAR }</if>
<if test="entity.zjrightxxbh == null or entity.zjrightxxbh == ''">,NULL</if>
<if test="entity.zwfkxx != null and entity.zwfkxx != ''">, #{entity.zwfkxx , jdbcType=VARCHAR }</if>
<if test="entity.zwfkxx == null or entity.zwfkxx == ''">,NULL</if>
)
</insert>
......@@ -708,6 +719,8 @@
<if test="entity.taryxq2 != null and entity.taryxq2 != ''"> taryxq2 = #{entity.taryxq2 , jdbcType=VARCHAR }, </if>
<if test="entity.tary3 != null and entity.tary3 != ''"> tary3 = #{entity.tary3 , jdbcType=VARCHAR }, </if>
<if test="entity.taryxq3 != null and entity.taryxq3 != ''"> taryxq3 = #{entity.taryxq3 , jdbcType=VARCHAR }, </if>
<if test="entity.zjleftxxbh != null and entity.zjleftxxbh != ''">ZJLEFTXXBH = #{entity.zjleftxxbh , jdbcType=VARCHAR },</if>
<if test="entity.zjrightxxbh != null and entity.zjrightxxbh != ''">ZJRIGHTXXBH = #{entity.zjrightxxbh , jdbcType=VARCHAR },</if>
GXSJ=SYSDATE
where RYBH = #{entity.rybh, jdbcType=VARCHAR}
</update>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment