Compare commits
11 Commits
nanfang_br
...
master
Author | SHA1 | Date |
---|---|---|
|
34bd6fa523 | 3 years ago |
|
82a3478353 | 3 years ago |
|
dccf9de0b1 | 3 years ago |
|
b1a7209ea3 | 3 years ago |
|
be418592a4 | 3 years ago |
|
09187b466d | 3 years ago |
|
220d887718 | 3 years ago |
|
fbd10cf089 | 4 years ago |
|
7a93a0c267 | 4 years ago |
|
31ec6747d0 | 4 years ago |
|
912e84596b | 4 years ago |
@ -0,0 +1 @@
|
||||
#2.0.1版本
|
@ -0,0 +1,8 @@
|
||||
//--------广州南方医院接收webService部分------------
|
||||
newUserName=Body.CT_CareProvList.CT_CareProv.CTCP_JobNumber
|
||||
name=Body.CT_CareProvList.CT_CareProv.CTCP_Name
|
||||
deptCode=Body.CT_CareProvList.CT_CareProv.CTCP_DeptCode
|
||||
|
||||
|
||||
deptCTDCode=Body.CT_DeptList.CT_Dept.CTD_Code
|
||||
deptCTDDesc=Body.CT_DeptList.CT_Dept.CTD_Desc
|
@ -1,18 +0,0 @@
|
||||
log4j.logger.myLog=debug,myLog
|
||||
log4j.appender.myLog=org.apache.log4j.DailyRollingFileAppender
|
||||
log4j.appender.myLog.File=D:\\logs\\power\\info\\info_log
|
||||
log4j.appender.myLog.DatePattern=-yyyy-MM-dd'.log'
|
||||
log4j.appender.myLog.Append = true
|
||||
log4j.appender.myLog.Threshold = INFO
|
||||
log4j.appender.myLog.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.myLog.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}:%m%n
|
||||
|
||||
log4j.logger.errorMsg=error,errorMsg
|
||||
log4j.appender.errorMsg=org.apache.log4j.DailyRollingFileAppender
|
||||
log4j.appender.errorMsg.File=D:\\logs\\power\\error\\error_log
|
||||
log4j.appender.errorMsg.DatePattern=-yyyy-MM-dd'.log'
|
||||
log4j.appender.errorMsg.Append = true
|
||||
log4j.appender.errorMsg.Threshold = error
|
||||
log4j.appender.errorMsg.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.errorMsg.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}:%m%n
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
Binary file not shown.
After Width: | Height: | Size: 347 KiB |
Binary file not shown.
After Width: | Height: | Size: 28 KiB |
@ -0,0 +1,256 @@
|
||||
/*
|
||||
* A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
|
||||
* Digest Algorithm, as defined in RFC 1321.
|
||||
* Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.
|
||||
* Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
|
||||
* Distributed under the BSD License
|
||||
* See http://pajhome.org.uk/crypt/md5 for more info.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Configurable variables. You may need to tweak these to be compatible with
|
||||
* the server-side, but the defaults work in most cases.
|
||||
*/
|
||||
var hexcase = 0; /* hex output format. 0 - lowercase; 1 - uppercase */
|
||||
var b64pad = ""; /* base-64 pad character. "=" for strict RFC compliance */
|
||||
var chrsz = 8; /* bits per input character. 8 - ASCII; 16 - Unicode */
|
||||
|
||||
/*
|
||||
* These are the functions you'll usually want to call
|
||||
* They take string arguments and return either hex or base-64 encoded strings
|
||||
*/
|
||||
function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
|
||||
function b64_md5(s){ return binl2b64(core_md5(str2binl(s), s.length * chrsz));}
|
||||
function str_md5(s){ return binl2str(core_md5(str2binl(s), s.length * chrsz));}
|
||||
function hex_hmac_md5(key, data) { return binl2hex(core_hmac_md5(key, data)); }
|
||||
function b64_hmac_md5(key, data) { return binl2b64(core_hmac_md5(key, data)); }
|
||||
function str_hmac_md5(key, data) { return binl2str(core_hmac_md5(key, data)); }
|
||||
|
||||
/*
|
||||
* Perform a simple self-test to see if the VM is working
|
||||
*/
|
||||
function md5_vm_test()
|
||||
{
|
||||
return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72";
|
||||
}
|
||||
|
||||
/*
|
||||
* Calculate the MD5 of an array of little-endian words, and a bit length
|
||||
*/
|
||||
function core_md5(x, len)
|
||||
{
|
||||
/* append padding */
|
||||
x[len >> 5] |= 0x80 << ((len) % 32);
|
||||
x[(((len + 64) >>> 9) << 4) + 14] = len;
|
||||
|
||||
var a = 1732584193;
|
||||
var b = -271733879;
|
||||
var c = -1732584194;
|
||||
var d = 271733878;
|
||||
|
||||
for(var i = 0; i < x.length; i += 16)
|
||||
{
|
||||
var olda = a;
|
||||
var oldb = b;
|
||||
var oldc = c;
|
||||
var oldd = d;
|
||||
|
||||
a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);
|
||||
d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);
|
||||
c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);
|
||||
b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);
|
||||
a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);
|
||||
d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);
|
||||
c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);
|
||||
b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);
|
||||
a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);
|
||||
d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);
|
||||
c = md5_ff(c, d, a, b, x[i+10], 17, -42063);
|
||||
b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);
|
||||
a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);
|
||||
d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);
|
||||
c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);
|
||||
b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);
|
||||
|
||||
a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);
|
||||
d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
|
||||
c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);
|
||||
b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);
|
||||
a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);
|
||||
d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);
|
||||
c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);
|
||||
b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);
|
||||
a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);
|
||||
d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);
|
||||
c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);
|
||||
b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);
|
||||
a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);
|
||||
d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);
|
||||
c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);
|
||||
b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);
|
||||
|
||||
a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);
|
||||
d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);
|
||||
c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);
|
||||
b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);
|
||||
a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
|
||||
d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);
|
||||
c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);
|
||||
b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);
|
||||
a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);
|
||||
d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);
|
||||
c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);
|
||||
b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);
|
||||
a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);
|
||||
d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);
|
||||
c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);
|
||||
b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);
|
||||
|
||||
a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);
|
||||
d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);
|
||||
c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);
|
||||
b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);
|
||||
a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);
|
||||
d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);
|
||||
c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);
|
||||
b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);
|
||||
a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);
|
||||
d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);
|
||||
c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);
|
||||
b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);
|
||||
a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);
|
||||
d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);
|
||||
c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);
|
||||
b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);
|
||||
|
||||
a = safe_add(a, olda);
|
||||
b = safe_add(b, oldb);
|
||||
c = safe_add(c, oldc);
|
||||
d = safe_add(d, oldd);
|
||||
}
|
||||
return Array(a, b, c, d);
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* These functions implement the four basic operations the algorithm uses.
|
||||
*/
|
||||
function md5_cmn(q, a, b, x, s, t)
|
||||
{
|
||||
return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);
|
||||
}
|
||||
function md5_ff(a, b, c, d, x, s, t)
|
||||
{
|
||||
return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
|
||||
}
|
||||
function md5_gg(a, b, c, d, x, s, t)
|
||||
{
|
||||
return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
|
||||
}
|
||||
function md5_hh(a, b, c, d, x, s, t)
|
||||
{
|
||||
return md5_cmn(b ^ c ^ d, a, b, x, s, t);
|
||||
}
|
||||
function md5_ii(a, b, c, d, x, s, t)
|
||||
{
|
||||
return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);
|
||||
}
|
||||
|
||||
/*
|
||||
* Calculate the HMAC-MD5, of a key and some data
|
||||
*/
|
||||
function core_hmac_md5(key, data)
|
||||
{
|
||||
var bkey = str2binl(key);
|
||||
if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);
|
||||
|
||||
var ipad = Array(16), opad = Array(16);
|
||||
for(var i = 0; i < 16; i++)
|
||||
{
|
||||
ipad[i] = bkey[i] ^ 0x36363636;
|
||||
opad[i] = bkey[i] ^ 0x5C5C5C5C;
|
||||
}
|
||||
|
||||
var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz);
|
||||
return core_md5(opad.concat(hash), 512 + 128);
|
||||
}
|
||||
|
||||
/*
|
||||
* Add integers, wrapping at 2^32. This uses 16-bit operations internally
|
||||
* to work around bugs in some JS interpreters.
|
||||
*/
|
||||
function safe_add(x, y)
|
||||
{
|
||||
var lsw = (x & 0xFFFF) + (y & 0xFFFF);
|
||||
var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
|
||||
return (msw << 16) | (lsw & 0xFFFF);
|
||||
}
|
||||
|
||||
/*
|
||||
* Bitwise rotate a 32-bit number to the left.
|
||||
*/
|
||||
function bit_rol(num, cnt)
|
||||
{
|
||||
return (num << cnt) | (num >>> (32 - cnt));
|
||||
}
|
||||
|
||||
/*
|
||||
* Convert a string to an array of little-endian words
|
||||
* If chrsz is ASCII, characters >255 have their hi-byte silently ignored.
|
||||
*/
|
||||
function str2binl(str)
|
||||
{
|
||||
var bin = Array();
|
||||
var mask = (1 << chrsz) - 1;
|
||||
for(var i = 0; i < str.length * chrsz; i += chrsz)
|
||||
bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
|
||||
return bin;
|
||||
}
|
||||
|
||||
/*
|
||||
* Convert an array of little-endian words to a string
|
||||
*/
|
||||
function binl2str(bin)
|
||||
{
|
||||
var str = "";
|
||||
var mask = (1 << chrsz) - 1;
|
||||
for(var i = 0; i < bin.length * 32; i += chrsz)
|
||||
str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask);
|
||||
return str;
|
||||
}
|
||||
|
||||
/*
|
||||
* Convert an array of little-endian words to a hex string.
|
||||
*/
|
||||
function binl2hex(binarray)
|
||||
{
|
||||
var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
|
||||
var str = "";
|
||||
for(var i = 0; i < binarray.length * 4; i++)
|
||||
{
|
||||
str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
|
||||
hex_tab.charAt((binarray[i>>2] >> ((i%4)*8 )) & 0xF);
|
||||
}
|
||||
return str;
|
||||
}
|
||||
|
||||
/*
|
||||
* Convert an array of little-endian words to a base-64 string
|
||||
*/
|
||||
function binl2b64(binarray)
|
||||
{
|
||||
var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
||||
var str = "";
|
||||
for(var i = 0; i < binarray.length * 4; i += 3)
|
||||
{
|
||||
var triplet = (((binarray[i >> 2] >> 8 * ( i %4)) & 0xFF) << 16)
|
||||
| (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 )
|
||||
| ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF);
|
||||
for(var j = 0; j < 4; j++)
|
||||
{
|
||||
if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;
|
||||
else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);
|
||||
}
|
||||
}
|
||||
return str;
|
||||
}
|
@ -0,0 +1,185 @@
|
||||
package com.manage.entity;
|
||||
|
||||
|
||||
|
||||
public class PowerUser {
|
||||
private Integer userId;
|
||||
|
||||
private String userName;
|
||||
|
||||
private String name;
|
||||
|
||||
private String userPwd;
|
||||
|
||||
private Integer userSex;
|
||||
|
||||
private Integer userAge;
|
||||
|
||||
private String userTel;
|
||||
|
||||
private String userEmail;
|
||||
|
||||
private String userPosition;
|
||||
|
||||
private Integer roleId;
|
||||
|
||||
private String deptId;
|
||||
|
||||
private Integer effective;
|
||||
|
||||
private String createDate;
|
||||
|
||||
private String creater;
|
||||
|
||||
private String updateDate;
|
||||
|
||||
private String updater;
|
||||
|
||||
private String remark;
|
||||
|
||||
private String deptCode;
|
||||
|
||||
public String getDeptCode() {
|
||||
return deptCode;
|
||||
}
|
||||
|
||||
public void setDeptCode(String deptCode) {
|
||||
this.deptCode = deptCode;
|
||||
}
|
||||
|
||||
public Integer getUserId() {
|
||||
return userId;
|
||||
}
|
||||
|
||||
public void setUserId(Integer userId) {
|
||||
this.userId = userId;
|
||||
}
|
||||
|
||||
public String getUserName() {
|
||||
return userName;
|
||||
}
|
||||
|
||||
public void setUserName(String userName) {
|
||||
this.userName = userName;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getUserPwd() {
|
||||
return userPwd;
|
||||
}
|
||||
|
||||
public void setUserPwd(String userPwd) {
|
||||
this.userPwd = userPwd;
|
||||
}
|
||||
|
||||
public Integer getUserSex() {
|
||||
return userSex;
|
||||
}
|
||||
|
||||
public void setUserSex(Integer userSex) {
|
||||
this.userSex = userSex;
|
||||
}
|
||||
|
||||
public Integer getUserAge() {
|
||||
return userAge;
|
||||
}
|
||||
|
||||
public void setUserAge(Integer userAge) {
|
||||
this.userAge = userAge;
|
||||
}
|
||||
|
||||
public String getUserTel() {
|
||||
return userTel;
|
||||
}
|
||||
|
||||
public void setUserTel(String userTel) {
|
||||
this.userTel = userTel;
|
||||
}
|
||||
|
||||
public String getUserEmail() {
|
||||
return userEmail;
|
||||
}
|
||||
|
||||
public void setUserEmail(String userEmail) {
|
||||
this.userEmail = userEmail;
|
||||
}
|
||||
|
||||
public String getUserPosition() {
|
||||
return userPosition;
|
||||
}
|
||||
|
||||
public void setUserPosition(String userPosition) {
|
||||
this.userPosition = userPosition;
|
||||
}
|
||||
|
||||
public Integer getRoleId() {
|
||||
return roleId;
|
||||
}
|
||||
|
||||
public void setRoleId(Integer roleId) {
|
||||
this.roleId = roleId;
|
||||
}
|
||||
|
||||
public String getDeptId() {
|
||||
return deptId;
|
||||
}
|
||||
|
||||
public void setDeptId(String deptId) {
|
||||
this.deptId = deptId;
|
||||
}
|
||||
|
||||
public Integer getEffective() {
|
||||
return effective;
|
||||
}
|
||||
|
||||
public void setEffective(Integer effective) {
|
||||
this.effective = effective;
|
||||
}
|
||||
|
||||
public String getCreateDate() {
|
||||
return createDate;
|
||||
}
|
||||
|
||||
public void setCreateDate(String createDate) {
|
||||
this.createDate = createDate;
|
||||
}
|
||||
|
||||
public String getCreater() {
|
||||
return creater;
|
||||
}
|
||||
|
||||
public void setCreater(String creater) {
|
||||
this.creater = creater;
|
||||
}
|
||||
|
||||
public String getUpdateDate() {
|
||||
return updateDate;
|
||||
}
|
||||
|
||||
public void setUpdateDate(String updateDate) {
|
||||
this.updateDate = updateDate;
|
||||
}
|
||||
|
||||
public String getUpdater() {
|
||||
return updater;
|
||||
}
|
||||
|
||||
public void setUpdater(String updater) {
|
||||
this.updater = updater;
|
||||
}
|
||||
|
||||
public String getRemark() {
|
||||
return remark;
|
||||
}
|
||||
|
||||
public void setRemark(String remark) {
|
||||
this.remark = remark;
|
||||
}
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
|
||||
|
||||
//--------广州南方医院接收webService部分------------
|
||||
"userName": "Body.CT_CareProvList.CT_CareProv.CTCP_JobNumber",
|
||||
"name": "Body.CT_CareProvList.CT_CareProv.CTCP_Name",
|
||||
"deptCode": "Body.CT_CareProvList.CT_CareProv.CTCP_DeptCode"
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
package com.manage.util;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
public class FileUtils {
|
||||
/**
|
||||
* 获取jar包所在位置
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String currentPath() {
|
||||
File dir = new File(".");
|
||||
String currentpath = "";
|
||||
try {
|
||||
currentpath = dir.getCanonicalPath();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return currentpath;
|
||||
}
|
||||
|
||||
// /**
|
||||
// * 获取静态文件中的内容
|
||||
// * @param name
|
||||
// * @return
|
||||
// */
|
||||
// public static Object getJsonByName(String name){
|
||||
// //获取目录结构
|
||||
// String path = FileUtils.currentPath();
|
||||
// //解析json映射文件
|
||||
// String json = JsonUtils.readJsonFile(path + "\\config\\json.properties");
|
||||
// Map jsonMap = JSON.parseObject(json, Map.class);
|
||||
// return jsonMap.get(name);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,194 @@
|
||||
package com.manage.util;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import org.dom4j.Document;
|
||||
import org.dom4j.DocumentException;
|
||||
import org.dom4j.Element;
|
||||
import org.dom4j.io.SAXReader;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.io.StringReader;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class XmlUtils {
|
||||
//定义解析器和文档对象
|
||||
private SAXReader saxReader;
|
||||
private Document document;
|
||||
|
||||
public Document getDocument() {
|
||||
return document;
|
||||
}
|
||||
|
||||
public XmlUtils(String path) {
|
||||
//获取解析器
|
||||
saxReader = new SAXReader();
|
||||
try {
|
||||
//获取文档对象
|
||||
document = saxReader.read(path);
|
||||
} catch (DocumentException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public XmlUtils(InputStream path) throws Exception{
|
||||
//获取解析器
|
||||
saxReader = new SAXReader();
|
||||
//获取文档对象
|
||||
document = saxReader.read(path);
|
||||
|
||||
}
|
||||
|
||||
// /**
|
||||
// * 动态获取节点内容
|
||||
// *
|
||||
// * @return
|
||||
// */
|
||||
// public String getElement(String name) {
|
||||
// //获取根节点
|
||||
// Element root = document.getRootElement();
|
||||
// Object directory = FileUtils.getJsonByName("directory");
|
||||
// Element current = root;
|
||||
// if (directory == null) {
|
||||
// throw new RuntimeException("没有定义目录结构");
|
||||
// }
|
||||
// List<String> directoryArr = (List<String>) directory;
|
||||
// for (String dire : directoryArr) {
|
||||
// current = current.element(dire);
|
||||
// }
|
||||
// return current.element(name) == null ? "" : current.element(name).getText();
|
||||
// }
|
||||
|
||||
/**
|
||||
* 根据路径动态获取节点
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public Element getElement(List<String> directory) {
|
||||
//获取根节点
|
||||
Element root = document.getRootElement();
|
||||
|
||||
Element current = root;
|
||||
List<String> directoryArr = directory;
|
||||
for (String dire : directoryArr) {
|
||||
current = current.element(dire);
|
||||
}
|
||||
if (current == null) {
|
||||
throw new RuntimeException("未找到对应节点");
|
||||
}
|
||||
return current;
|
||||
}
|
||||
|
||||
/**
|
||||
* 返回存在的根节点
|
||||
*/
|
||||
public List<Element> getJsonByName(Element root) {
|
||||
//获取目录结构
|
||||
String path = FileUtils.currentPath();
|
||||
//解析json映射文件
|
||||
String json = JsonUtils.readJsonFile(path + "\\dataConfig\\homeQualitySet.json");
|
||||
Map jsonMap = JSON.parseObject(json, Map.class);
|
||||
//判断是否多条
|
||||
List<String> basicArr = (List<String>) jsonMap.get("doubleBasic");
|
||||
// List<String> directory = (List<String>) jsonMap.get("basicDirectory");
|
||||
List<Element> elements = null;
|
||||
// Element root = this.getElement(directory);
|
||||
for (String basic : basicArr) {
|
||||
elements = root.elements(basic);
|
||||
if (elements != null && elements.size() > 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (elements == null || elements.size() == 0) {
|
||||
//只有一条
|
||||
// List<String> rootDirectory = (List<String>) jsonMap.get("directory");
|
||||
// root = this.getElement(rootDirectory);
|
||||
elements = new ArrayList<>();
|
||||
elements.add(root);
|
||||
}
|
||||
|
||||
return elements;
|
||||
}
|
||||
|
||||
/**
|
||||
* 返回数据存在的父节点
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public Element getMsgElement() {
|
||||
//获取目录结构
|
||||
String path = FileUtils.currentPath();
|
||||
//解析json映射文件
|
||||
String json = JsonUtils.readJsonFile(path + "\\dataConfig\\homeQualitySet.json");
|
||||
Map jsonMap = JSON.parseObject(json, Map.class);
|
||||
List<String> directory = (List<String>) jsonMap.get("directory");
|
||||
Element root = this.getElement(directory);
|
||||
return root;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据节点名称获取内容
|
||||
*
|
||||
* @param name 节点名称
|
||||
* @return 节点内容
|
||||
*/
|
||||
public String getElementText(String name) {
|
||||
//定位根节点
|
||||
Element root = document.getRootElement();
|
||||
//根据名称定位节点
|
||||
Element msg = root.element("Msg");
|
||||
if (msg == null) {
|
||||
throw new RuntimeException("没有" + "Msg" + "节点");
|
||||
}
|
||||
// Element patInfo = msg.element(Codes.PAT_INFO.getMessage());
|
||||
// if(patInfo==null){
|
||||
// throw new RuntimeException("没有"+Codes.PAT_INFO.getMessage()+"节点");
|
||||
// }
|
||||
Element element = msg.element(name);
|
||||
if (element == null) {
|
||||
return null;
|
||||
}
|
||||
//返回节点内容
|
||||
return element.getText();
|
||||
}
|
||||
|
||||
/**
|
||||
* xml转map
|
||||
* @param xml
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
public static Map<String, String> parseXml2Map(String xml, Map<String, String> map) {
|
||||
try {
|
||||
SAXReader reader = new SAXReader();
|
||||
Document doc = reader.read(new StringReader(xml));
|
||||
Element root = doc.getRootElement();
|
||||
String path = "";
|
||||
if (map.containsKey(root.getName().trim())) {
|
||||
path = map.get(root.getName().trim());
|
||||
map.remove(root.getName().trim());
|
||||
}
|
||||
for (Iterator i = root.elementIterator(); i.hasNext();) {
|
||||
Element element = (Element) i.next();
|
||||
if (element.isTextOnly()) {
|
||||
if (path.length() > 0) {
|
||||
map.put(path + element.getName().trim(), element.getTextTrim());
|
||||
} else {
|
||||
map.put(element.getName().trim(), element.getTextTrim());
|
||||
}
|
||||
} else {
|
||||
map.put(element.getName().trim(), path+ element.getName().trim() + ".");
|
||||
parseXml2Map(element.asXML(), map);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return map;
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue