描写叙述 :依据身份证编号 查询归属地信息。

身份证实体类:

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接口代码的更多相关文章

  1. 手机号码归属地查询免费api接口代码

    依据手机号码查询用户的卡类型.运营商.归属地.区域等信息. 手机归属地实体类 package org.wx.xhelper.model; /** * 手机归属地 * @author wangxw * ...

  2. 身份证归属地查询免费api接口

    描写叙述 :依据身份证编号 查询归属地信息. 调用地址: http://api.k780.com:88/? app=idcard.get&idcard=510103195309280011&a ...

  3. 违章查询免费api接口代码

    能够依据城市+车牌号+发动机号查询违章信息列表. 违章实体类 package org.wx.xhelper.model; /** * 违章实体类 * @author wangxw * @version ...

  4. 快递单号查询免费api接口(PHP示例)

    快递单号查询API,可以对接顺丰快递查询,邮政快递查询,中通快递查询等.这些快递物流企业,提供了快递单号自动识别接口,快递单号查询接口等快递物流服务.对于电商企业,ERP服务企业,集成此接口到自己的软 ...

  5. 公交线路免费api接口代码

    描写叙述:本接口主要是依据城市名称 +  线路名称 模糊查找城市公交线路信息. 开源api接口:http://openapi.aibang.com/bus/lines?app_key=keyvalue ...

  6. 各类无次数限制的免费API接口整理

    各类无次数限制的免费API接口整理,主要是聚合数据上和API Store上的一些,还有一些其他的. 聚合数据提供30大类,160种以上基础数据API服务,国内最大的基础数据API服务,下面就罗列一些免 ...

  7. 网络免费API接口整理

    转载自: https://www.cnblogs.com/doit8791/p/9351629.html 从网上看到一些免费API接口,在个人开发小程序等应用练手时可试用. 各类无次数限制的免费API ...

  8. 各类无次数限制的免费API接口,再也不怕找不到免费API了

    各类无次数限制的免费API接口整理,主要是聚合数据上和API Store上的一些,还有一些其他的. 聚合数据提供30大类,160种以上基础数据API服务,国内最大的基础数据API服务,下面就罗列一些免 ...

  9. 免费API接口记录

    用来记录一些无次数限制的免费API接口,主要是聚合数据上和API Store上的一些,还有一些其他的. 手机号码归属地API接口: https://www.juhe.cn/docs/api/id/11 ...

随机推荐

  1. Python 使用cx_freeze 生成exe文件【转】

    Python 使用cx_freeze 生成exe文件   在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller.py2exe恐怕是三 ...

  2. VS扩展工具

    原文发布时间为:2011-03-09 -- 来源于本人的百度文章 [由搬家工具导入] http://visualstudiogallery.msdn.microsoft.com/site/search ...

  3. css垂直居中 转

    原文发布时间为:2009-07-26 -- 来源于本人的百度文章 [由搬家工具导入] CSS 垂直居中2009-07-24 09:09 前看到很多人一直都问这个问题,不过当时我没当一回事,因为在 CS ...

  4. jquery bind event, use on. $(document).on("click","#a",function(){alert(1)}) [#document]

    $(document).on("click","#a",function(){alert(1)}) [#document] as a replacement o ...

  5. Math.ceil()、floor()、round()

    ceil():向上取整,>=某个小数的最小整数,即15.3取16.返回double类型 如果参数小于0且大于-1.0,结果为 -0. floor():向下取整,<=某个小数的最大整数,即1 ...

  6. hdu 2136(质数筛选+整数分解)

    Largest prime factor Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  7. Codeforces 912D Fishes (概率&期望,优先队列的应用)

    题目链接 Fishes 题意  在一个$n*m$的矩阵中,随机选择一个$r * r$的区域覆盖. 一开始我们可以在这个$n*m$的矩阵中选择$k$个点标记为$1$. 我们要选择一个最佳的标记策略,使得 ...

  8. querySelector和getElementById之间的区别

    一.概述 今天在看js的时候发现里面的代码基本上都是用querySelector()和querySelectorAll()来获取元素,就有点疑惑为什么不用getElementById(),可能也是因为 ...

  9. SpringMVC+Shiro权限管理(转载)

    源码 http://pan.baidu.com/s/1pJzG4t1 SpringMVC+Shiro权限管理 博文目录 权限的简单描述 实例表结构及内容及POJO Shiro-pom.xml Shir ...

  10. 10.1综合强化刷题 Day1 morning

    位运算1(bit) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK拥有一个十进制的数N.它赋予了N一个新的意义:将N每一位都拆开来后再加起来就是N所拥有 ...