身份证归属地查询免费api接口代码
描写叙述 :依据身份证编号 查询归属地信息。
身份证实体类:
package org.wx.xhelper.model; /**
* 身份证实体类
* @author wangxw
* @version 1.0
* @date Jul 11, 2014 10:46:54 AM
*/
public class IdCard { // 身份证号码
private String idCard; // 出生日期
private String born; // 性别
private String sex; // 所在地区
private String att; public String getIdCard() {
return idCard;
} public void setIdCard(String idCard) {
this.idCard = idCard;
} public String getBorn() {
return born;
} public void setBorn(String born) {
this.born = born;
} public String getSex() {
return sex;
} public void setSex(String sex) {
this.sex = sex;
} public String getAtt() {
return att;
} public void setAtt(String att) {
this.att = att;
} }
服务接口类:
package org.wx.xhelper.service; import java.io.UnsupportedEncodingException;
import java.net.URL;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.wx.xhelper.model.IdCard; /**
* 身份证信息服务接口类
* @author wangxw
* @version 1.0
* @date Jul 11, 2014 10:49:57 AM
*/
public class IdCardService { /**
* 生成身份证信息
* @param cardNo
* @return 返回身份证信息
* @throws UnsupportedEncodingException
*/
public static String getIdCardDetail(String cardNo) throws UnsupportedEncodingException{
// 获取身份证信息
IdCard idcard = getIdCardInfo(cardNo); // 存储文本信息
StringBuffer news = new StringBuffer(); if (idcard != null) {
news.append("所属地区:"+idcard.getAtt()).append("\n");
news.append("出生日期:"+idcard.getBorn()).append("\n");
news.append("性别:"+idcard.getSex()).append("\n");
} if(news.length() == 0){
news.append("身份证号码").append(cardNo).append("不存在,请又一次输入!");
} return news.toString();
} /**
* 获取身份证信息
* @param cardNo
* @return 返回身份证信息
*/
public static IdCard getIdCardInfo(String cardNo){
URL url = null;
IdCard idCard = new IdCard();
try{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder(); url = new URL("http://api.k780.com:88/? app=idcard.get&idcard="+cardNo+"&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=xml"); System.out.println(url); Document doc = builder.parse(url.openStream());
NodeList node = doc.getElementsByTagName("result"); for(int i=0;i<node.getLength();i++){
String idcard = "";
String born = "";
String sex = "";
String att = "";
if(doc.getElementsByTagName("idcard").item(i).getFirstChild() != null){
idcard = doc.getElementsByTagName("idcard").item(i).getFirstChild().getNodeValue();
}
if(doc.getElementsByTagName("born").item(i).getFirstChild() != null){
born = doc.getElementsByTagName("born").item(i).getFirstChild().getNodeValue();
}
if(doc.getElementsByTagName("sex").item(i).getFirstChild() != null){
sex = doc.getElementsByTagName("sex").item(i).getFirstChild().getNodeValue();
}
if(doc.getElementsByTagName("att").item(i).getFirstChild() != null){
att = doc.getElementsByTagName("att").item(i).getFirstChild().getNodeValue();
}
idCard.setIdCard(idcard);
idCard.setBorn(born);
idCard.setSex(sex);
idCard.setAtt(att);
} }catch(Exception e){
e.printStackTrace();
}
return idCard;
} public static void main(String[] args){
try {
System.out.print(getIdCardDetail("110101199001011118"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
} }
返回结果:
所属地区:北京市东城区
出生日期:1990年01月01日
性别:男
身份证归属地查询免费api接口代码的更多相关文章
- 手机号码归属地查询免费api接口代码
依据手机号码查询用户的卡类型.运营商.归属地.区域等信息. 手机归属地实体类 package org.wx.xhelper.model; /** * 手机归属地 * @author wangxw * ...
- 身份证归属地查询免费api接口
描写叙述 :依据身份证编号 查询归属地信息. 调用地址: http://api.k780.com:88/? app=idcard.get&idcard=510103195309280011&a ...
- 违章查询免费api接口代码
能够依据城市+车牌号+发动机号查询违章信息列表. 违章实体类 package org.wx.xhelper.model; /** * 违章实体类 * @author wangxw * @version ...
- 快递单号查询免费api接口(PHP示例)
快递单号查询API,可以对接顺丰快递查询,邮政快递查询,中通快递查询等.这些快递物流企业,提供了快递单号自动识别接口,快递单号查询接口等快递物流服务.对于电商企业,ERP服务企业,集成此接口到自己的软 ...
- 公交线路免费api接口代码
描写叙述:本接口主要是依据城市名称 + 线路名称 模糊查找城市公交线路信息. 开源api接口:http://openapi.aibang.com/bus/lines?app_key=keyvalue ...
- 各类无次数限制的免费API接口整理
各类无次数限制的免费API接口整理,主要是聚合数据上和API Store上的一些,还有一些其他的. 聚合数据提供30大类,160种以上基础数据API服务,国内最大的基础数据API服务,下面就罗列一些免 ...
- 网络免费API接口整理
转载自: https://www.cnblogs.com/doit8791/p/9351629.html 从网上看到一些免费API接口,在个人开发小程序等应用练手时可试用. 各类无次数限制的免费API ...
- 各类无次数限制的免费API接口,再也不怕找不到免费API了
各类无次数限制的免费API接口整理,主要是聚合数据上和API Store上的一些,还有一些其他的. 聚合数据提供30大类,160种以上基础数据API服务,国内最大的基础数据API服务,下面就罗列一些免 ...
- 免费API接口记录
用来记录一些无次数限制的免费API接口,主要是聚合数据上和API Store上的一些,还有一些其他的. 手机号码归属地API接口: https://www.juhe.cn/docs/api/id/11 ...
随机推荐
- 【HDOJ5510】Bazinga(KMP)
题意:给定n个由小写字母组成的字符串,第i个字符串为a[i],求最大的j满足存在1<=i<j,a[i]不是a[j]的子串,无解输出-1 T<=50,n<=500,len[i]& ...
- repeater做成gridview【更新删除编辑等】
原文发布时间为:2009-06-14 -- 来源于本人的百度文章 [由搬家工具导入] 不多说,不会说。。看我做的范例。。。 http://download.csdn.net/source/138556 ...
- PE笔记之PE基本结构图(PE笔记索引)
PE(Portable Execute) 文件是Windows下可执行文件的总称,常见的有DLL,EXE,OCX,SYS等,事实上,一个文件是否是PE文件与其扩展名无关,PE文件可以是任 何扩展名.那 ...
- 从零开始学习OpenCL开发(一)架构【转】
转自:http://blog.csdn.net/leonwei/article/details/8880012 多谢大家关注 转载本文请注明:http://blog.csdn.net/leonwei/ ...
- linux内核情景分析之强制性调度
从系统调用返回到用户空间是否调度,从ret_with_reschedule可看出,是否真正调度,取决于当前进程的pcb中的need_resched是否设置为1,那如何设置为1取决于以下几种情况: 时间 ...
- 開關(switch)規格中,SPDT, DPDT, 3PDT, 4PDT是什麼意思?
Reference http://blog.xuite.net/auster.lai/twblog/433393966 開關(switch)用來控制電路的開與閉,機械式的switc內部是由接點開關.彈 ...
- 修饰符的范围+运算符优先级+构造方法特点+switch参数
一.修饰符的范围 修饰符的范围,是否可访问: 类型 private 无修饰 protected public 同一类 是 是 是 是 同一包中的子类 否 是 是 是 同一包中的非子类 否 是 是 是 ...
- HDU1086 You can Solve a Geometry Problem too(计算几何)
You can Solve a Geometry Problem too Time Limit: 2000/1000 M ...
- python 编程模型
数据模型(译) image.png 1 对象(object).类型(type)和值(value) python中所有的数据都是通过对象(object)或者对象之间的关系来表示 每个对象(objec ...
- shell 实现自动备份nginx下的站点
shell 实现自动备份nginx下的站点 优点 实现自动备份ngnix下的所有运行的站点 自定义排除备份站点,支持三种排除 自动维护备份目录,防止备份目录无限扩大 备份压缩tar.gz格式 源码: ...