如何用Java自带的JAXB类高效解析XML文件?
- 内容介绍
- 文章标签
- 相关推荐
本文共计5287个文字,预计阅读时间需要22分钟。
java核心函数 /* * 获取更新的数据(接口调用返回xml数据)* @param response 接口调用返回的响应* @param json 解析后的JSON数据* @throws Exception 异常处理*/ @RequestMapping(value=getChangeData, consumes=application/json; charset=UTF-8, method=RequestMethod.GET)
核心函数/**
* 获取更新的数据(接口调用返回xml数据)
*
* @param response
* @param json
* @throws Exception
*/
@RequestMapping(value = "getChangeData", consumes = "application/json;charset=UTF-8", method = {
RequestMethod.GET, RequestMethod.POST })
public void getChangeData(HttpServletResponse response,
@RequestBody GetLegalInfoRequestJson json) throws Exception {
/** 分页 */
PageConfig pageConfig = new PageConfig();
pageConfig.setPageSize(1);
log.info("RequestParam:" + json.toString());
try {
if (json.getVersion() == null || json.getVersion().isEmpty()
|| json.getEndVersion() == null
|| json.getEndVersion().isEmpty()) {
Element error = DocumentHelper.createElement("ERROR");
error.setText("参数为空或缺少参数");
response.getWriter().write(error.asXML());
return;
}
if (Long.parseLong(json.getVersion()) >= Long.parseLong(json
.getEndVersion())) {
logger.info("parameter errors---- 参数错误,请输入正确的参数");
Element error = DocumentHelper.createElement("ERROR");
error.setText("开始参数大于或等于结束参数请改正");
response.getWriter().write(error.asXML());
return;
}
} catch (Exception e1) {
logger.error("Please enter the correct parameters, parameter conversion errors----请输入正确参数,参数转换错误");
Element error = DocumentHelper.createElement("ERROR");
error.setText("参数错误");
response.getWriter().write(error.asXML());
return;
}
try {
String clientId = json.getClientId();
VersionManage versionManage = new VersionManage(); // 版本监控
DataExchangeMonitor entity = new DataExchangeMonitor(); // 交换监控
// 判断是市场主体还是信用
if (BaseController.BUSINESS_G11.equals(json.getBusinessName())) {
response.getWriter().write("
/** * 对象转xml 应放在基础类中 * */ public static String object2Xml(Object object) { try { StringWriter writer = new StringWriter(); JAXBContext context = JAXBContext.newInstance(object.getClass()); Marshaller marshal = context.createMarshaller(); marshal.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); // 格式化输出 marshal.setProperty(Marshaller.JAXB_ENCODING, "UTF-8");// 编码格式,默认为utf-8 marshal.setProperty(Marshaller.JAXB_FRAGMENT, true);// 是否省略xml头信息 marshal.setProperty("jaxb.encoding", "utf-8"); marshal.marshal(object,writer); return new String(writer.getBuffer()); } catch (Exception e) { e.printStackTrace(); return null;} } 实体类(与xml转换工具类和核心函数相关联)
// // 此文件是由 JavaTM Architecture for XML Binding (JAXB) 引用实现 v2.2.8-b130911.1802 生成的 // 请访问 java.sun.com/xml/jaxb // 在重新编译源模式时, 对此文件的所有修改都将丢失。 // 生成时间: 2016.07.19 时间 03:48:39 PM CST // import com.fasterxml.jackson.annotation.*; import org.hibernate.annotations.GenericGenerator; import org.hibernate.annotations.Parameter; import org.hibernate.annotations.Type; import javax.persistence.*; import javax.xml.bind.annotation.*; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import java.io.Serializable; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; /** *
anonymous complex type的 Java 类。 *
*
以下模式片段指定包含在此类中的预期内容。 *
*
* <complexType>
* <complexContent>
* <restriction base="{www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="LEGAL_NAME" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BIDDER_CODE_TYPE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_ROLE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LICENSE_NO" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LICENSE_END_DATE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="TAX_CERT_NO" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="TAX_CERT_END_DATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LOCAL_TAX_CERT_NO" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LOCAL_TAX_CERT_END_DATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="ORGAN_NO" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="ORGAN_CERT_END_DATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_REPRESENT" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_TYPE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="REPRESENT_PHONE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_INDUSTRY" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="CREDIT_RATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="COUNTRY_REGION" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_UNIT_ADDRESS" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REGION_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="REGISTER_PROVINCE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REGISTER_CITY" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REGISTER_TIME" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_BANK" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_BRANCH_BANK" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_ACCOUNT_NO" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_ACCOUNT_NAME" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REG_CAPITAL" type="{www.w3.org/2001/XMLSchema}decimal"/>
* <element name="REG_CAP_CURRENCY" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="REG_UNIT" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CONTACT" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CONTACT_PHONE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CONTACT_ADDRESS" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_WEB" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_ZIP_CODE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_EMAIL" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_STATUS" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="ATTACHMENT_SET_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="PLATFORM_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="PUB_SERVICE_PLAT_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="DATA_TIMESTAMP" type="{www.w3.org/2001/XMLSchema}string"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"SRC_CITY_ID",
"SYS_ID",
"STATUS",
"CREATE_STAFF",
"CREATE_DATE",
"MOD_STAFF",
"MOD_DATE",
"COL_EX1",
"COL_EX2",
"COL_EX3",
"LEGAL_NAME",
"BIDDER_CODE_TYPE",
"LEGAL_CODE",
"LEGAL_ROLE",
"LICENSE_NO",
"LICENSE_END_DATE",
"TAX_CERT_NO",
"TAX_CERT_END_DATE",
"LOCAL_TAX_CERT_NO",
"LOCAL_TAX_CERT_END_DATE",
"ORGAN_NO",
"ORGAN_CERT_END_DATE",
"LEGAL_REPRESENT",
"LEGAL_TYPE",
"REPRESENT_PHONE",
"LEGAL_INDUSTRY",
"CREDIT_RATE",
"COUNTRY_REGION",
"LEGAL_UNIT_ADDRESS",
"REGION_CODE",
"REGISTER_PROVINCE",
"REGISTER_CITY",
"REGISTER_TIME",
"BASIC_BANK",
"BASIC_BRANCH_BANK",
"BASIC_ACCOUNT_NO",
"BASIC_ACCOUNT_NAME",
"REG_CAPITAL",
"REG_CAP_CURRENCY",
"REG_UNIT",
"LEGAL_CONTACT",
"LEGAL_CONTACT_PHONE",
"LEGAL_CONTACT_ADDRESS",
"LEGAL_WEB",
"LEGAL_ZIP_CODE",
"LEGAL_EMAIL",
"LEGAL_STATUS",
"ATTACHMENT_SET_CODE",
"PLATFORM_CODE",
"PUB_SERVICE_PLAT_CODE",
"DATA_TIMESTAMP",
"IS_DEL",
"subjectRoles"
})
//法人基本信息 G11_1_1
@Entity
@Table(name = "T_G_SJ_LEGAL_BASE")
@XmlRootElement(name = "G11_1_1")
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE)
public class SJLegalBase implements Serializable {
/**
*
*/
private static final long serialVersionUID = -2130315097582834081L;
@XmlTransient
private String id;
@Id
@GeneratedValue(generator = "uuidGenerator")
@GenericGenerator(name = "uuidGenerator", strategy = "uuid2")
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@XmlElement(name = "LEGAL_NAME", required = true)
protected String LEGAL_NAME; //法人名称
@XmlJavaTypeAdapter(value = SubjectTypeAdapter.class)
@XmlElement(name = "BIDDER_CODE_TYPE", required = true)
protected SubjectType BIDDER_CODE_TYPE; //法人类别
@XmlElement(name = "LEGAL_CODE", required = true)
protected String LEGAL_CODE; //法人代码
//多个主体类型用分号";"分隔,不映射为枚举
@XmlElement(name = "LEGAL_ROLE", required = true)
protected String LEGAL_ROLE; //法人角色
@XmlElement(name = "LICENSE_NO", required = true)
protected String LICENSE_NO; //营业执照号码
@XmlElement(name = "LICENSE_END_DATE", required = true)
protected Date LICENSE_END_DATE; //营业执照失效日期
@XmlElement(name = "TAX_CERT_NO")
protected String TAX_CERT_NO; //国税税务登记证证号
@XmlElement(name = "TAX_CERT_END_DATE")
protected Date TAX_CERT_END_DATE; //国税税务登记证失效日期
@XmlElement(name = "LOCAL_TAX_CERT_NO")
protected String LOCAL_TAX_CERT_NO; //地税税务登记证证号
@XmlElement(name = "LOCAL_TAX_CERT_END_DATE")
protected Date LOCAL_TAX_CERT_END_DATE; //地税税务登记证失效日期
@XmlElement(name = "ORGAN_NO")
protected String ORGAN_NO; //组织机构代码
@XmlElement(name = "ORGAN_CERT_END_DATE")
// protected String ORGAN_CERT_END_DATE;
protected Date ORGAN_CERT_END_DATE; //组织机构代码证失效日期
@XmlElement(name = "LEGAL_REPRESENT", required = true)
protected String LEGAL_REPRESENT; //法定代表人姓名
@XmlJavaTypeAdapter(value = LegalOrgTypeAdapter.class)
@XmlElement(name = "LEGAL_TYPE", required = true)
protected LegalOrgType LEGAL_TYPE; //法人类别
@XmlElement(name = "REPRESENT_PHONE")
protected String REPRESENT_PHONE; //法人代表联系电话
@XmlElement(name = "LEGAL_INDUSTRY")
@XmlJavaTypeAdapter(value = IndustryClassifyAdapter.class)
protected IndustryClassify LEGAL_INDUSTRY;//法人机构行业代码
@XmlElement(name = "CREDIT_RATE")
protected String CREDIT_RATE; //资信等级
@XmlJavaTypeAdapter(value = CountryRegionAdapter.class)
@XmlElement(name = "COUNTRY_REGION", required = true)
protected CountryRegion COUNTRY_REGION; //国别/地区
@XmlElement(name = "LEGAL_ADDRESS")
protected String LEGAL_UNIT_ADDRESS; //法人机构地址
@XmlElement(name = "REGION_CODE", required = true)
protected String REGION_CODE; //行政区域代码
@XmlElement(name = "REGISTER_PROVINCE")
protected String REGISTER_PROVINCE; //注册地-省
@XmlElement(name = "REGISTER_CITY")
protected String REGISTER_CITY; //注册地-市
@XmlElement(name = "REGISTER_TIME")
protected String REGISTER_TIME; //注册时间
@XmlElement(name = "BASIC_BANK", required = true)
protected String BASIC_BANK; //基本户开户银行
@XmlElement(name = "BASIC_BRANCH_BANK", required = true)
protected String BASIC_BRANCH_BANK; //基本户开户支行号
@XmlElement(name = "BASIC_ACCOUNT_NO", required = true)
protected String BASIC_ACCOUNT_NO;//基本户账号
@XmlElement(name = "BASIC_ACCOUNT_NAME")
protected String BASIC_ACCOUNT_NAME; //基本户账户名称
@XmlElement(name = "REG_CAPITAL", required = true)
protected BigDecimal REG_CAPITAL; //注册资本
@XmlJavaTypeAdapter(value = CurrencyTypeAdapter.class)
@XmlElement(name = "REG_CAP_CURRENCY", required = true)
protected CurrencyType REG_CAP_CURRENCY; //注册资本币种
@XmlJavaTypeAdapter(value = CurrencyUnitAdapter.class)
@XmlElement(name = "REG_UNIT", required = true)
protected CurrencyUnit REG_UNIT; //注册资本单位
@XmlElement(name = "LEGAL_CONTACT", required = true)
protected String LEGAL_CONTACT; //联系人
@XmlElement(name = "LEGAL_CONTACT_PHONE", required = true)
protected String LEGAL_CONTACT_PHONE; //联系人电话
@XmlElement(name = "LEGAL_CONTACT_ADDRESS")
protected String LEGAL_CONTACT_ADDRESS; //联系人地址
@XmlElement(name = "LEGAL_WEB")
protected String LEGAL_WEB; //单位网站
@XmlElement(name = "LEGAL_ZIP_CODE")
protected String LEGAL_ZIP_CODE;// 邮政编码
@XmlElement(name = "LEGAL_EMAIL")
protected String LEGAL_EMAIL; //电子邮箱
@XmlJavaTypeAdapter(value = LegalBusiStatusAdapter.class)
@XmlElement(name = "LEGAL_STATUS", required = true)
protected LegalBusiStatus LEGAL_STATUS; //法人业务状态
@XmlElement(name = "ATTACHMENT_SET_CODE", required = true)
protected String ATTACHMENT_SET_CODE; //附件编码
@XmlElement(name = "PLATFORM_CODE", required = true)
protected String PLATFORM_CODE; //交易系统标识码
@XmlElement(name = "PUB_SERVICE_PLAT_CODE", required = true)
protected String PUB_SERVICE_PLAT_CODE; //公共服务平台标识码
@XmlElement(name = "DATA_TIMESTAMP", required = true)
protected Date DATA_TIMESTAMP; //数据时间戳
@XmlTransient
protected String DATA_ROUTE_WAY;
public String getDATA_ROUTE_WAY() {
return DATA_ROUTE_WAY;
}
public void setDATA_ROUTE_WAY(String dATA_ROUTE_WAY) {
DATA_ROUTE_WAY = dATA_ROUTE_WAY;
}
@XmlTransient
protected String DATA_SYNC_FLAG;
public String getDATA_SYNC_FLAG() {
return DATA_SYNC_FLAG;
}
public void setDATA_SYNC_FLAG(String dATA_SYNC_FLAG) {
DATA_SYNC_FLAG = dATA_SYNC_FLAG;
}
@XmlTransient
protected String DATA_NETWORK;
public String getDATA_NETWORK() {
return DATA_NETWORK;
}
public void setDATA_NETWORK(String dATA_NETWORK) {
DATA_NETWORK = dATA_NETWORK;
}
@XmlTransient
protected String CITY; //平台编码
public String getCITY() {
return CITY;
}
public void setCITY(String cITY) {
CITY = cITY;
}
@XmlTransient
protected Integer creditScore = 60; //信用积分
@XmlTransient
private String userId;//用户名 非映射
@XmlTransient
private Date registerSDate;//注册开始时间 非映射
@XmlTransient
private Date registerEDate;//注册结束时间 非映射
@Column(name = "credit_score")
public Integer getCreditScore() {
return creditScore;
}
public void setCreditScore(Integer creditScore) {
this.creditScore = creditScore;
}
// @XmlTransient
// private List
本文共计5287个文字,预计阅读时间需要22分钟。
java核心函数 /* * 获取更新的数据(接口调用返回xml数据)* @param response 接口调用返回的响应* @param json 解析后的JSON数据* @throws Exception 异常处理*/ @RequestMapping(value=getChangeData, consumes=application/json; charset=UTF-8, method=RequestMethod.GET)
核心函数/**
* 获取更新的数据(接口调用返回xml数据)
*
* @param response
* @param json
* @throws Exception
*/
@RequestMapping(value = "getChangeData", consumes = "application/json;charset=UTF-8", method = {
RequestMethod.GET, RequestMethod.POST })
public void getChangeData(HttpServletResponse response,
@RequestBody GetLegalInfoRequestJson json) throws Exception {
/** 分页 */
PageConfig pageConfig = new PageConfig();
pageConfig.setPageSize(1);
log.info("RequestParam:" + json.toString());
try {
if (json.getVersion() == null || json.getVersion().isEmpty()
|| json.getEndVersion() == null
|| json.getEndVersion().isEmpty()) {
Element error = DocumentHelper.createElement("ERROR");
error.setText("参数为空或缺少参数");
response.getWriter().write(error.asXML());
return;
}
if (Long.parseLong(json.getVersion()) >= Long.parseLong(json
.getEndVersion())) {
logger.info("parameter errors---- 参数错误,请输入正确的参数");
Element error = DocumentHelper.createElement("ERROR");
error.setText("开始参数大于或等于结束参数请改正");
response.getWriter().write(error.asXML());
return;
}
} catch (Exception e1) {
logger.error("Please enter the correct parameters, parameter conversion errors----请输入正确参数,参数转换错误");
Element error = DocumentHelper.createElement("ERROR");
error.setText("参数错误");
response.getWriter().write(error.asXML());
return;
}
try {
String clientId = json.getClientId();
VersionManage versionManage = new VersionManage(); // 版本监控
DataExchangeMonitor entity = new DataExchangeMonitor(); // 交换监控
// 判断是市场主体还是信用
if (BaseController.BUSINESS_G11.equals(json.getBusinessName())) {
response.getWriter().write("
/** * 对象转xml 应放在基础类中 * */ public static String object2Xml(Object object) { try { StringWriter writer = new StringWriter(); JAXBContext context = JAXBContext.newInstance(object.getClass()); Marshaller marshal = context.createMarshaller(); marshal.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); // 格式化输出 marshal.setProperty(Marshaller.JAXB_ENCODING, "UTF-8");// 编码格式,默认为utf-8 marshal.setProperty(Marshaller.JAXB_FRAGMENT, true);// 是否省略xml头信息 marshal.setProperty("jaxb.encoding", "utf-8"); marshal.marshal(object,writer); return new String(writer.getBuffer()); } catch (Exception e) { e.printStackTrace(); return null;} } 实体类(与xml转换工具类和核心函数相关联)
// // 此文件是由 JavaTM Architecture for XML Binding (JAXB) 引用实现 v2.2.8-b130911.1802 生成的 // 请访问 java.sun.com/xml/jaxb // 在重新编译源模式时, 对此文件的所有修改都将丢失。 // 生成时间: 2016.07.19 时间 03:48:39 PM CST // import com.fasterxml.jackson.annotation.*; import org.hibernate.annotations.GenericGenerator; import org.hibernate.annotations.Parameter; import org.hibernate.annotations.Type; import javax.persistence.*; import javax.xml.bind.annotation.*; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import java.io.Serializable; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; /** *
anonymous complex type的 Java 类。 *
*
以下模式片段指定包含在此类中的预期内容。 *
*
* <complexType>
* <complexContent>
* <restriction base="{www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="LEGAL_NAME" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BIDDER_CODE_TYPE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_ROLE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LICENSE_NO" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LICENSE_END_DATE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="TAX_CERT_NO" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="TAX_CERT_END_DATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LOCAL_TAX_CERT_NO" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LOCAL_TAX_CERT_END_DATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="ORGAN_NO" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="ORGAN_CERT_END_DATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_REPRESENT" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_TYPE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="REPRESENT_PHONE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_INDUSTRY" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="CREDIT_RATE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="COUNTRY_REGION" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_UNIT_ADDRESS" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REGION_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="REGISTER_PROVINCE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REGISTER_CITY" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REGISTER_TIME" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_BANK" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_BRANCH_BANK" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_ACCOUNT_NO" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="BASIC_ACCOUNT_NAME" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="REG_CAPITAL" type="{www.w3.org/2001/XMLSchema}decimal"/>
* <element name="REG_CAP_CURRENCY" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="REG_UNIT" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CONTACT" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CONTACT_PHONE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="LEGAL_CONTACT_ADDRESS" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_WEB" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_ZIP_CODE" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_EMAIL" type="{www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="LEGAL_STATUS" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="ATTACHMENT_SET_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="PLATFORM_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="PUB_SERVICE_PLAT_CODE" type="{www.w3.org/2001/XMLSchema}string"/>
* <element name="DATA_TIMESTAMP" type="{www.w3.org/2001/XMLSchema}string"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"SRC_CITY_ID",
"SYS_ID",
"STATUS",
"CREATE_STAFF",
"CREATE_DATE",
"MOD_STAFF",
"MOD_DATE",
"COL_EX1",
"COL_EX2",
"COL_EX3",
"LEGAL_NAME",
"BIDDER_CODE_TYPE",
"LEGAL_CODE",
"LEGAL_ROLE",
"LICENSE_NO",
"LICENSE_END_DATE",
"TAX_CERT_NO",
"TAX_CERT_END_DATE",
"LOCAL_TAX_CERT_NO",
"LOCAL_TAX_CERT_END_DATE",
"ORGAN_NO",
"ORGAN_CERT_END_DATE",
"LEGAL_REPRESENT",
"LEGAL_TYPE",
"REPRESENT_PHONE",
"LEGAL_INDUSTRY",
"CREDIT_RATE",
"COUNTRY_REGION",
"LEGAL_UNIT_ADDRESS",
"REGION_CODE",
"REGISTER_PROVINCE",
"REGISTER_CITY",
"REGISTER_TIME",
"BASIC_BANK",
"BASIC_BRANCH_BANK",
"BASIC_ACCOUNT_NO",
"BASIC_ACCOUNT_NAME",
"REG_CAPITAL",
"REG_CAP_CURRENCY",
"REG_UNIT",
"LEGAL_CONTACT",
"LEGAL_CONTACT_PHONE",
"LEGAL_CONTACT_ADDRESS",
"LEGAL_WEB",
"LEGAL_ZIP_CODE",
"LEGAL_EMAIL",
"LEGAL_STATUS",
"ATTACHMENT_SET_CODE",
"PLATFORM_CODE",
"PUB_SERVICE_PLAT_CODE",
"DATA_TIMESTAMP",
"IS_DEL",
"subjectRoles"
})
//法人基本信息 G11_1_1
@Entity
@Table(name = "T_G_SJ_LEGAL_BASE")
@XmlRootElement(name = "G11_1_1")
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE)
public class SJLegalBase implements Serializable {
/**
*
*/
private static final long serialVersionUID = -2130315097582834081L;
@XmlTransient
private String id;
@Id
@GeneratedValue(generator = "uuidGenerator")
@GenericGenerator(name = "uuidGenerator", strategy = "uuid2")
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@XmlElement(name = "LEGAL_NAME", required = true)
protected String LEGAL_NAME; //法人名称
@XmlJavaTypeAdapter(value = SubjectTypeAdapter.class)
@XmlElement(name = "BIDDER_CODE_TYPE", required = true)
protected SubjectType BIDDER_CODE_TYPE; //法人类别
@XmlElement(name = "LEGAL_CODE", required = true)
protected String LEGAL_CODE; //法人代码
//多个主体类型用分号";"分隔,不映射为枚举
@XmlElement(name = "LEGAL_ROLE", required = true)
protected String LEGAL_ROLE; //法人角色
@XmlElement(name = "LICENSE_NO", required = true)
protected String LICENSE_NO; //营业执照号码
@XmlElement(name = "LICENSE_END_DATE", required = true)
protected Date LICENSE_END_DATE; //营业执照失效日期
@XmlElement(name = "TAX_CERT_NO")
protected String TAX_CERT_NO; //国税税务登记证证号
@XmlElement(name = "TAX_CERT_END_DATE")
protected Date TAX_CERT_END_DATE; //国税税务登记证失效日期
@XmlElement(name = "LOCAL_TAX_CERT_NO")
protected String LOCAL_TAX_CERT_NO; //地税税务登记证证号
@XmlElement(name = "LOCAL_TAX_CERT_END_DATE")
protected Date LOCAL_TAX_CERT_END_DATE; //地税税务登记证失效日期
@XmlElement(name = "ORGAN_NO")
protected String ORGAN_NO; //组织机构代码
@XmlElement(name = "ORGAN_CERT_END_DATE")
// protected String ORGAN_CERT_END_DATE;
protected Date ORGAN_CERT_END_DATE; //组织机构代码证失效日期
@XmlElement(name = "LEGAL_REPRESENT", required = true)
protected String LEGAL_REPRESENT; //法定代表人姓名
@XmlJavaTypeAdapter(value = LegalOrgTypeAdapter.class)
@XmlElement(name = "LEGAL_TYPE", required = true)
protected LegalOrgType LEGAL_TYPE; //法人类别
@XmlElement(name = "REPRESENT_PHONE")
protected String REPRESENT_PHONE; //法人代表联系电话
@XmlElement(name = "LEGAL_INDUSTRY")
@XmlJavaTypeAdapter(value = IndustryClassifyAdapter.class)
protected IndustryClassify LEGAL_INDUSTRY;//法人机构行业代码
@XmlElement(name = "CREDIT_RATE")
protected String CREDIT_RATE; //资信等级
@XmlJavaTypeAdapter(value = CountryRegionAdapter.class)
@XmlElement(name = "COUNTRY_REGION", required = true)
protected CountryRegion COUNTRY_REGION; //国别/地区
@XmlElement(name = "LEGAL_ADDRESS")
protected String LEGAL_UNIT_ADDRESS; //法人机构地址
@XmlElement(name = "REGION_CODE", required = true)
protected String REGION_CODE; //行政区域代码
@XmlElement(name = "REGISTER_PROVINCE")
protected String REGISTER_PROVINCE; //注册地-省
@XmlElement(name = "REGISTER_CITY")
protected String REGISTER_CITY; //注册地-市
@XmlElement(name = "REGISTER_TIME")
protected String REGISTER_TIME; //注册时间
@XmlElement(name = "BASIC_BANK", required = true)
protected String BASIC_BANK; //基本户开户银行
@XmlElement(name = "BASIC_BRANCH_BANK", required = true)
protected String BASIC_BRANCH_BANK; //基本户开户支行号
@XmlElement(name = "BASIC_ACCOUNT_NO", required = true)
protected String BASIC_ACCOUNT_NO;//基本户账号
@XmlElement(name = "BASIC_ACCOUNT_NAME")
protected String BASIC_ACCOUNT_NAME; //基本户账户名称
@XmlElement(name = "REG_CAPITAL", required = true)
protected BigDecimal REG_CAPITAL; //注册资本
@XmlJavaTypeAdapter(value = CurrencyTypeAdapter.class)
@XmlElement(name = "REG_CAP_CURRENCY", required = true)
protected CurrencyType REG_CAP_CURRENCY; //注册资本币种
@XmlJavaTypeAdapter(value = CurrencyUnitAdapter.class)
@XmlElement(name = "REG_UNIT", required = true)
protected CurrencyUnit REG_UNIT; //注册资本单位
@XmlElement(name = "LEGAL_CONTACT", required = true)
protected String LEGAL_CONTACT; //联系人
@XmlElement(name = "LEGAL_CONTACT_PHONE", required = true)
protected String LEGAL_CONTACT_PHONE; //联系人电话
@XmlElement(name = "LEGAL_CONTACT_ADDRESS")
protected String LEGAL_CONTACT_ADDRESS; //联系人地址
@XmlElement(name = "LEGAL_WEB")
protected String LEGAL_WEB; //单位网站
@XmlElement(name = "LEGAL_ZIP_CODE")
protected String LEGAL_ZIP_CODE;// 邮政编码
@XmlElement(name = "LEGAL_EMAIL")
protected String LEGAL_EMAIL; //电子邮箱
@XmlJavaTypeAdapter(value = LegalBusiStatusAdapter.class)
@XmlElement(name = "LEGAL_STATUS", required = true)
protected LegalBusiStatus LEGAL_STATUS; //法人业务状态
@XmlElement(name = "ATTACHMENT_SET_CODE", required = true)
protected String ATTACHMENT_SET_CODE; //附件编码
@XmlElement(name = "PLATFORM_CODE", required = true)
protected String PLATFORM_CODE; //交易系统标识码
@XmlElement(name = "PUB_SERVICE_PLAT_CODE", required = true)
protected String PUB_SERVICE_PLAT_CODE; //公共服务平台标识码
@XmlElement(name = "DATA_TIMESTAMP", required = true)
protected Date DATA_TIMESTAMP; //数据时间戳
@XmlTransient
protected String DATA_ROUTE_WAY;
public String getDATA_ROUTE_WAY() {
return DATA_ROUTE_WAY;
}
public void setDATA_ROUTE_WAY(String dATA_ROUTE_WAY) {
DATA_ROUTE_WAY = dATA_ROUTE_WAY;
}
@XmlTransient
protected String DATA_SYNC_FLAG;
public String getDATA_SYNC_FLAG() {
return DATA_SYNC_FLAG;
}
public void setDATA_SYNC_FLAG(String dATA_SYNC_FLAG) {
DATA_SYNC_FLAG = dATA_SYNC_FLAG;
}
@XmlTransient
protected String DATA_NETWORK;
public String getDATA_NETWORK() {
return DATA_NETWORK;
}
public void setDATA_NETWORK(String dATA_NETWORK) {
DATA_NETWORK = dATA_NETWORK;
}
@XmlTransient
protected String CITY; //平台编码
public String getCITY() {
return CITY;
}
public void setCITY(String cITY) {
CITY = cITY;
}
@XmlTransient
protected Integer creditScore = 60; //信用积分
@XmlTransient
private String userId;//用户名 非映射
@XmlTransient
private Date registerSDate;//注册开始时间 非映射
@XmlTransient
private Date registerEDate;//注册结束时间 非映射
@Column(name = "credit_score")
public Integer getCreditScore() {
return creditScore;
}
public void setCreditScore(Integer creditScore) {
this.creditScore = creditScore;
}
// @XmlTransient
// private List

