能够依据城市+车牌号+发动机号查询违章信息列表。

违章实体类

package org.wx.xhelper.model;

/**
* 违章实体类
* @author wangxw
* @version 1.0
* @date Jul 11, 2014 3:25:34 PM
*/
public class ViolRegu { // 违章时间
private String date; // 违章地点
private String area; // 违章行为
private String act; // 违章扣分
private String fen; // 违章罚款
private String money; // 是否处理
private String handled; public String getDate() {
return date;
} public void setDate(String date) {
this.date = date;
} public String getArea() {
return area;
} public void setArea(String area) {
this.area = area;
} public String getAct() {
return act;
} public void setAct(String act) {
this.act = act;
} public String getFen() {
return fen;
} public void setFen(String fen) {
this.fen = fen;
} public String getMoney() {
return money;
} public void setMoney(String money) {
this.money = money;
} public String getHandled() {
return handled;
} public void setHandled(String handled) {
this.handled = handled;
}
}

违章查询服务接口类

package org.wx.xhelper.service;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.wx.xhelper.model.ViolRegu;
import org.wx.xhelper.util.CitysUtil;
import org.wx.xhelper.util.HttpRequestUtil; /**
* 违章查询服务接口类
* @author wangxw
* @version 1.0
* @date Jul 11, 2014 3:29:16 PM
*/
public class ViolReguService { /**
* 生成违章信息
* @param cityName
* @param carNo
* @param engineNo
* @return 返回违章信息
* @throws UnsupportedEncodingException
*/
public static String getViolReguDetail(String cityName,String carNo,String engineNo) throws UnsupportedEncodingException{
// 获取违章信息列表
List<ViolRegu> violregulist = getViolReguInfo(cityName,carNo,engineNo); // 存储文本信息
StringBuffer news = new StringBuffer(); if (violregulist != null && violregulist.size() > 0) {
for(int i=0;i<violregulist.size();i++){
news.append("违章时间:"+violregulist.get(i).getDate()).append("\n");
news.append("违章地点:"+violregulist.get(i).getArea()).append("\n");
news.append("违章行为:"+violregulist.get(i).getAct()).append("\n");
news.append("违章扣分:"+violregulist.get(i).getFen()).append("\n");
news.append("违章罚款:"+violregulist.get(i).getMoney()).append("\n");
news.append("处理状态:"+violregulist.get(i).getHandled()).append("\n\n");
}
} if(news.length() == 0){
news.append("没有相关的违章信息,请又一次输入!");
} return news.toString();
} /**
* 获取违章信息列表
* @param cityName
* @param carNo
* @param engineNo
* @return
*/
public static List<ViolRegu> getViolReguInfo(String cityName,String carNo,String engineNo){ // 存放违章信息列表
List<ViolRegu> list = new ArrayList<ViolRegu>(); try{
// 获取城市简拼
String city = CitysUtil.getSimpSpell(cityName); // 获取json串
String json = HttpRequestUtil.HttpRequest("http://apis.haoservice.com/weizhang/query?city="+URLEncoder.encode(city, "utf-8")
+"&hphm="+URLEncoder.encode(carNo, "utf-8")
+"&hpzl=02&engineno="+URLEncoder.encode(engineNo, "utf-8")
+"&key=keyvalue"); JSONObject jsonObject = JSONObject.fromObject(json); JSONObject jsonResult = JSONObject.fromObject(jsonObject.get("result")); JSONArray listsArray = jsonResult.getJSONArray("lists"); // 封装数据到列表
for(int i=0;i<listsArray.size();i++){
HashMap<String, String> map = new HashMap<String, String>();
ViolRegu violRegu = new ViolRegu(); JSONObject futurnObject = JSONObject.fromObject(listsArray.getJSONObject(i));
Iterator iterator = futurnObject.keys();
while (iterator.hasNext()) {
String key = String.valueOf(iterator.next());
String value = (String) futurnObject.get(key);
map.put(key, value);
} violRegu.setDate(map.get("date")); // 违章时间
violRegu.setArea(map.get("area")); // 违章区域
violRegu.setAct(map.get("act")); // 违章行为
violRegu.setFen(map.get("fen")); // 违章扣分
violRegu.setMoney(map.get("money")); // 违章罚款
violRegu.setHandled(map.get("handled")); // 是否处理 list.add(violRegu);
} }catch(Exception e){
e.printStackTrace();
}
return list;
}
}

查询结果:

违章时间:2013-01-22 08:33:00

违章地点:延安路与瑞金路交叉口

违章行为:在禁止通行的时间、路段、车道内行驶的

违章扣分:0

违章罚款:200

处理状态:未处理

违章时间:2013-03-12 08:33:00

违章地点:瑞金南路和文化路交叉口

违章行为:在禁止通行的时间、路段、车道内行驶的

违章扣分:0

违章罚款:200

处理状态:未处理

违章时间:2013-12-25 19:22:00

违章地点:箭道街

违章行为:机动车逆向行驶的

违章扣分:3

违章罚款:200

处理状态:未处理

违章时间:2014-06-24 19:06:00

违章地点:解放路(嘉润路口-南厂路口)

违章行为:在禁止通行的时间、路段、车道内行驶的

违章扣分:0

违章罚款:200

处理状态:未处理

违章查询免费api接口代码的更多相关文章

  1. 身份证归属地查询免费api接口代码

    描写叙述 :依据身份证编号 查询归属地信息. 身份证实体类: package org.wx.xhelper.model; /** * 身份证实体类 * @author wangxw * @versio ...

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

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

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

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

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

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

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

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

  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. Docker (1) 基本概念和安装

    Docker简介 什么是容器? 一种虚拟化的方案,操作系统级别的虚拟化.容器是一个轻量的.独立的.可执行的包,包含了执行它所需要的所有东西:代码.运行环境.系统工具.系统库.设置.很长一段时间中,容器 ...

  2. php函数的声明与使用

    function 函数名(){ 函数体 } 一个函数是由3部分组成:声明(function 关键字).函数名(用来找到函数体的).函数体(封装的代码) 2.函数的优越性 代码重用性强.维护方便.提高开 ...

  3. 微信小程序打卡第五天

    2018-02-1823:55:53大年初三 微信小程序已经学了5个夜晚了,没有很努力,只是简单地接触,感觉从今天开始有了突破的进展,很爽! 无意间发现一个很好的教程,也是一个老哥分享的,很给力 ht ...

  4. [Android]异常3-java.lang.NoClassDefFoundError: javax.activation.DataHandler

    背景:JavaMail发送电子邮件 异常原因: 可能一>缺少DataHandler类相关jar包 可能二>有DataHandler类,DataHandler类与使用的mail.jar包不一 ...

  5. dede手机端首页点击文章内容、列表,却跳到pc端

    手机访问到手机端首页,点击列表.内容.图片等都跳到pc端,是什么原因? 查看m模板里面的index.html文件生成的代码是绝对路径(数字随机)13.html 而不是view.php?aid=13 解 ...

  6. jmeter的webservice接口测试(SOAP/XML-RPC Request)

    摘自:https://www.cnblogs.com/imyalost/p/5804359.html 项目背景:公司的微信端H5界面新开发了会员注册功能,需要对其进行压力测试 项目目标:需要承受每分钟 ...

  7. MySQL:INSERT ... UPDATE

    在 INSERT 语句末尾指定ON DUPLICATE KEY UPDATE时,如果插入的数据会导致表中的 UNIQUE 索引或 PRIMARY KEY 出现重复值,则会对导致重复的数据执行 UPDA ...

  8. jmeter录制火狐浏览器

    昨天看youtube,居然发现有这功能,啊哈哈 听不懂英语 也能有收获. 一.Jmeter 文件中选择Templates->Recording 二.创建之后,自动出现一个模板: 1. Threa ...

  9. on绑定事件支持的事件类型

    blurfocusfocusinfocusoutloadresizescrollunloadclickdblclickmousedownmouseupmousemovemouseovermouseou ...

  10. Java Arrays.sort相关用法与重载

    Java Arrays.sort() Java中的数组排序函数, 头文件 import java.util.Arrays; 相关API Arrays.sort(arys[]) Arrays.sort( ...