当前位置: 首页 > news >正文

违章查询免费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
处理状态:未处理

相关文章:

  • 名词解释 内存镜像
  • 整顿互联网医院, 更好的完善医疗服务!
  • 关机前清除电脑垃圾
  • 库存分配
  • 【comparator, comparable】小总结
  • 用C#改写Head First Design Patterns--Command 命令(原创)
  • 海康威视复赛题 ---- 碰撞避免方案(1)
  • C# 中的常用正则表达式总结
  • Node 即学即用 笔记 思维导图
  • 程序员的十层楼:大家都来测测你的技术层级
  • Snail—Hibernate之自写固定组件
  • 购机不求人 液晶电视性能参数全面***
  • Sql Server 中如果使用TransactionScope开启一个分布式事务,使用该事务两个并发的连接会互相死锁吗...
  • Java三大变量小结
  • WPF/Silverlight深蓝团队悄悄登陆了
  • ----------
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • canvas绘制圆角头像
  • Effective Java 笔记(一)
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • IDEA常用插件整理
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • Mybatis初体验
  • node入门
  • PHP 的 SAPI 是个什么东西
  • TCP拥塞控制
  • V4L2视频输入框架概述
  • Vue小说阅读器(仿追书神器)
  • Vultr 教程目录
  • 动态规划入门(以爬楼梯为例)
  • 对超线程几个不同角度的解释
  • 高性能JavaScript阅读简记(三)
  • 后端_ThinkPHP5
  • 计算机在识别图像时“看到”了什么?
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 面试遇到的一些题
  • 那些年我们用过的显示性能指标
  • 排序(1):冒泡排序
  • 前端学习笔记之观察者模式
  • 前端之Sass/Scss实战笔记
  • 数据结构java版之冒泡排序及优化
  • 跳前端坑前,先看看这个!!
  • 微服务核心架构梳理
  • 在Unity中实现一个简单的消息管理器
  • FaaS 的简单实践
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • 如何用纯 CSS 创作一个货车 loader
  • #if和#ifdef区别
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • $ is not function   和JQUERY 命名 冲突的解说 Jquer问题 (
  • $.ajax()
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机