违章查询免费api接口代码
能够依据城市+车牌号+发动机号查询违章信息列表。
违章实体类
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接口代码的更多相关文章
- 身份证归属地查询免费api接口代码
描写叙述 :依据身份证编号 查询归属地信息. 身份证实体类: package org.wx.xhelper.model; /** * 身份证实体类 * @author wangxw * @versio ...
- 手机号码归属地查询免费api接口代码
依据手机号码查询用户的卡类型.运营商.归属地.区域等信息. 手机归属地实体类 package org.wx.xhelper.model; /** * 手机归属地 * @author wangxw * ...
- 快递单号查询免费api接口(PHP示例)
快递单号查询API,可以对接顺丰快递查询,邮政快递查询,中通快递查询等.这些快递物流企业,提供了快递单号自动识别接口,快递单号查询接口等快递物流服务.对于电商企业,ERP服务企业,集成此接口到自己的软 ...
- 公交线路免费api接口代码
描写叙述:本接口主要是依据城市名称 + 线路名称 模糊查找城市公交线路信息. 开源api接口:http://openapi.aibang.com/bus/lines?app_key=keyvalue ...
- 身份证归属地查询免费api接口
描写叙述 :依据身份证编号 查询归属地信息. 调用地址: http://api.k780.com:88/? app=idcard.get&idcard=510103195309280011&a ...
- 各类无次数限制的免费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 ...
随机推荐
- 面试中的一些小问题之html5和html4的区别?
HTML5建立的一些新规则: 新特性应该基于HTML.CSS.DOM.JavaScript: 减少对外部插件的需求,如flash将会用video标签和audio标签代替: 更加优秀的错误处理: 更多取 ...
- html5 页面音频
1. html5 样式 <audio class="audioleft download" id="audVoice" type="audio/ ...
- QS之shell script
1 Invoke Mdoelsim In order to open Modelsim automatically, it is better to use a shell script to inv ...
- 梦想CAD控件自定义实体实现
一.增加自定义实体对象 调用DrawCustomEntity函数,绘制一个自定义实体对象. 下面代码绘制一个自定义实体,C#代码实现如下: private void DrawMlineCommand( ...
- luogu P3899 [湖南集训]谈笑风生 线段树合并
Code: #include<bits/stdc++.h> #define maxn 300002 #define ll long long using namespace std; vo ...
- Vue.js 安装
注意:vue.js 不支持 IE8 及其以下版本,学习前请保证你的浏览器兼容 ECMAScript 5,可访问 http://caniuse.com/#feat=es5 查看支持 ECMAScript ...
- 11servlet接口
11.servlet接口-2018/07/23 1.servlet 是一个接口,需要导包javax.servlet.Servlet; 第一种编写一个servlet程序的方法 写一个Java类,实现se ...
- UVA - 208 Firetruck(并查集+dfs)
题目: 给出一个结点d和一个无向图中所有的边,按字典序输出这个无向图中所有从1到d的路径. 思路: 1.看到紫书上的提示,如果不预先判断结点1是否能直接到达结点d,上来就直接dfs搜索的话会超时,于是 ...
- Gym - 101670F Shooting Gallery(CTU Open Contest 2017 区间dp)
题目&题意:(有点难读...) 给出一个数字序列,找出一个区间,当删除这个区间中的两个相同的数字后,只保留这两个数字之间的序列,然后继续删除相同的数字,问最多可以实行多少次删除操作. 例如: ...
- java容器(数组和集合)内元素的排序问题
package com.janson.day20180827; import java.util.*; /** * java中容器内对象的排序可以通过Collections.sort()和Arrays ...