获取地址工具方法

@Slf4j
public class AddressUtils
{public static final String IP_URL = "http://ip.taobao.com/service/getIpInfo.php";public static String getRealAddressByIP(String ip){String address = "127.0.0.1";// 内网不查询if (IpUtils.internalIp(ip)){return "内网IP";}if (Global.isAddressEnabled()){String rspStr = HttpUtils.sendPost(IP_URL, "ip=" + ip);if (StringUtils.isEmpty(rspStr)) {log.error("获取地理位置异常 {}", ip);return address;}JSONObject obj;try {obj = JSON.unmarshal(rspStr, JSONObject.class);JSONObject data = obj.getObj("data");String region = data.getStr("region");String city = data.getStr("city");address = region + " " + city;} catch (Exception e) {log.error("获取地理位置异常 {}", ip);}}return address;}/*** 解析ip的地区信息* @return com.aihuaiedu.common.core.domain.AjaxResult*/public static AjaxResult getAddress(String ip){AjaxResult result = new AjaxResult();if (IpUtils.internalIp(ip)) {result.put("msg","内网IP");result.put("code",500);return result;}String rspStr = HttpUtils.sendPost(IP_URL, "ip=" + ip);if (StringUtils.isEmpty(rspStr)) {log.error("清洗数据时 获取地理位置异常{}", ip);result.put("code",500);result.put("msg","获取地理位置异常");return result;}JSONObject obj;try {Map<String, String> addr = new HashMap<>(5);obj = JSON.unmarshal(rspStr, JSONObject.class);JSONObject data = obj.getObj("data");String region = data.getStr("region");String city = data.getStr("city");String region_id = data.getStr("region_id");String city_id = data.getStr("city_id");addr.put("region",region);addr.put("city",city);addr.put("region_id",region_id);addr.put("city_id",city_id);result.put("code",0);result.put("area",addr);} catch (Exception e) {log.error("清洗数据时 获取地理位置异常 {}", e);result.put("code",500);result.put("msg","获取地理位置异常");}return result;}
}

JAVA----获取地址工具方法相关推荐

  1. java获取文件大小的方法

    目前Java获取文件大小的方法有两种: 1.通过file的length()方法获取: 2.通过流式方法获取: 通过流式方法又有两种,分别是旧的java.io.*中FileInputStream的ava ...

  2. Java 判空工具方法大全

    java 判空工具方法大全 前言 一.一般类型的判空 1.String 类型判空 2.包装类型判空 二.类对象判空 1.类对象判空 三.容器类型判空 1.List.Set 判空 2.Map 判空 前言 ...

  3. linux java获取路径_linux中java获取路径的方法

    linux中java获取路径的方法 发布时间:2020-05-06 11:11:26 来源:亿速云 阅读:700 作者:小新 今天小编给大家分享的是linux中java获取路径的方法,相信很多人都不太 ...

  4. java获取文件名后缀方法

    Java是一种应用广泛的编程语言,可以通过多种方式来实现对文件的操作.如文件名后缀.文件扩展名等.今天我们来看下 Java是如何获取文件名后缀的吧! 1.打开一个空文件,将其复制到一个新的文件夹中. ...

  5. java获取属性工具类,Java中常用的工具类总结

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类. 有了这些轮子,会使代码更加简洁,优美, 但是需要经常看看大佬的源码, 这样才会有进步! 不能光会用 ...

  6. JAVA获取资源的方法

    类名.class=对象.getClass() 获得该类的Class对象 java获取当前工作路径System.getProperty("user.dir"); java获取类所在路 ...

  7. java 获取时间的方法

    Java的时间是通过字节码指令来控制的,所以 java程序的运行时间是通过字节码指令来控制的.但是由于 Java程序在运行时, JVM会产生一些状态,所以在执行 JVM指令时, JVM也会产生一些状态 ...

  8. java获取类与方法的注解、注释

    第一.获取注解 @Test(description = "获取类.方法注解") public void test(){//类注解信息Annotation[] annotations ...

  9. 关于Java 获取时间戳的方法,我和同事争论了半天

    欢迎关注方志朋的博客,回复"666"获面试宝典 Java有两个取时间戳的方法:System.currentTimeMillis() 和 System.nanoTime(),它们的使 ...

最新文章

  1. android 三级界面返回直接到一级界面
  2. Django博客系统项目需求分析
  3. java调用可执行文件
  4. 《花田半亩》有感——午夜静静地震撼着我的生命(不是技术,发在首页,只是因为感动)...
  5. 执行Bean 实例化
  6. FreeSql与SqlSugar性能测试对比
  7. (二分+区间搜索 )Mountain Walking(poj2110/poj2922)
  8. Tensor:Pytorch神经网络界的Numpy
  9. 一个基于 SpringBoot 开源的小说和漫画在线阅读网站,简洁大方、强烈推荐
  10. 11.15PMP试题每日一题
  11. [2019杭电多校第三场][hdu6606]Distribution of books(线段树dp)
  12. 【CAD技巧】CAD字体文字乱码(回复“CAD字体大全”)
  13. liteide 如何进行修改默认快捷键
  14. 我认为还算经典的语录
  15. u盘格式化了怎样恢复还原
  16. 通过Java批量导出带有图片的Excel文件数据
  17. 软件测试人员常用的SQL语句
  18. Linux基本的常用命令
  19. jmeter入门——第一个jmeter脚本
  20. 小白的渗透之旅1-DVWA环境搭建

热门文章

  1. Ionic 更换主题风格方案
  2. 一个简单的自托管图片库HomeGallery
  3. 用python 打印等腰三角形、空心等腰三角形,棱形。空心棱形
  4. 车道线识别(附代码)
  5. 青蛙跳小游戏之python3解法
  6. 海狮号水下机器人_【揭晓】水下机器人哪家强?冠军出炉了!
  7. 常用的Python IDE工具
  8. sql 时间函数(全)
  9. 牛刀小试(牛客小题)
  10. 网易社招一面(Java)