爱问知识人 爱问教育 医院库

java 实现百度地图的地址解析及在数据库的读取存储过程

首页

java 实现百度地图的地址解析及在数据库的读取存储过程


        

提交回答
好评回答
  • 2023-04-17 07:30:00
      package action;
    import java。io。BufferedReader;
    import java。io。InputStreamReader;
    import java。
      net。URL;
    import java。net。URLEncoder;
    import java。util。HashMap;
    import java。util。Map;
    public class LocationUtil {
    private static final String ak = "XG8Ed4Vi6BN67wrmFLc7x63oYOayXIR1";
    /**
    * 返回输入地址的经纬度坐标 key lng(经度),lat(纬度)
    */
    public static Map<String, String> getLatitude(String address) {
    try {
    // 将地址转换成utf-8的16进制
    address = URLEncoder。
      encode(address, "UTF-8");
    // 如果有代理,要设置代理,没代理可注释
    // System。setProperty("http。proxyHost","192。168。172。23");
    // System。
      setProperty("http。proxyPort","3209");
    URL resjson = new URL("http://api。map。baidu。com/geocoder/v2/?callback=renderOption&output=json&address="
    + address + "&city=广州市&output=json&ak=" + ak);
    // System。
      out。println(resjson);
    BufferedReader in = new BufferedReader(new InputStreamReader(resjson。openStream()));
    String res;
    StringBuilder sb = new StringBuilder("");
    while ((res = in。
      readLine()) != null) {
    sb。append(res。trim());
    }
    in。close();
    String str = sb。toString();
    //System。
      out。println("return json:" + str);
    if(str!=null&&str。equals("")){
    Map<String, String> map = null;
    int lngStart = str。
      indexOf("\"lng\"");
    int lngEnd = str。indexOf(",\"lat\"");
    int latEnd = str。indexOf("},\"precise");
    if (lngStart > 0 && lngEnd > 0 && latEnd > 0) {
    String lng = str。
      substring(lngStart + 6, lngEnd);
    String lat = str。substring(lngEnd + 7, latEnd);
    map = new HashMap<String, String>();
    map。
      put("lng", lng);
    map。put("lat", lat);
    return map;
    }
    }
    } catch (Exception e) {
    e。
      printStackTrace();
    }
    return null;
    }
    public static void main(String args[]) {
    Map<String, String> map = LocationUtil。
      getLatitude("越秀区人民中路1号");
    if (null != map) {
    System。out。println(map。get("lng"));
    System。out。
      println(map。get("lat"));
    }
    }
    }package action;
    import java。sql。Connection;
    import java。
      sql。DriverManager;
    import java。sql。ResultSet;
    import java。sql。SQLException;
    import java。sql。
      Statement;
    import java。util。Map;
    public class JDBC {
    public static void main(String[] args) {
    Connection connection = null;
    Statement statement = null;
    try {
    //1、加载数据库驱动
    Class。
      forName("oracle。jdbc。OracleDriver");
    //2、创建数据库连接
    String url = "jdbc:oracle:thin:@localhost:1520:orcl";
    connection = DriverManager。
      getConnection(url, "scot", "tiger");
    //3、进行数据库操作
    statement = connection。createStatement(ResultSet。TYPE_SCROLL_SENSITIVE,ResultSet。
      CONCUR_UPDATABLE);//Oracle数据库需要设置才能进行updata
    ResultSet rs = statement。executeQuery("select djxh,dz,gps from t_location");//sql语句中出现多余的标点符号 ; 会报错无效字符
    LocationUtil locationUtil=new LocationUtil();
    while(rs。
      next()){
    // System。out。println(rs。toString());
    String a=rs。getNString("djxh");
    String bString=rs。
      getNString("dz");
    Map cString=locationUtil。getLatitude(bString);
    String dString =cString 。get("lng")。
      toString()+","+cString。get("lat")。toString();/得到经纬度
    //System。out。println(dString);
    rs。updateString("gps",dString);//存入数据库
    rs。
      updateRow();
    System。out。println(rs。getNString("dz")+" : "+rs。getNString("gps"));
    }
    rs。close();
    } catch (Exception e) {
    e。
      printStackTrace();
    } finally {
    //4、关闭连接
    try {
    if(statement != null){
    statement。
      close();
    }
    if(connection != null){
    connection。close();
    }
    } catch (SQLException e) {
    e。
      printStackTrace();
    }
    }
    }
    }java 实现百度地图的地址解析及在数据库的读取存储过程。

    海***

    2023-04-17 07:30:00

类似问题

换一换
  • 电脑/网络 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

  • 环保废气处理行业最重要的问题

    餐饮业厨房产生的油烟,顾名思义,废气中主要污染物为油烟,一般采用静电除油。 液化气属较清洁能源,废气...

    环境学

  • 小天鹅洗衣机

    嫌麻烦就把你洗衣机的型号或断皮带,拿到维修点去买1个,自己装上就可以了(要有个小扳手把螺丝放松,装上...

    购物

  • 怎样管理好一个班?

    1、以身作则,如果连自己都做不好,还怎么当班长? 2、人缘好,我就是由于人缘不好,才改当副班长的。 ...

    管理学

  • 手机密码错了怎么办?

    你好! 手机密码被锁住了,那么只有拿到客服去解锁了。 如果你使用的是PIN码,被锁,那么去移动营业厅...

    手机/通讯

  • 笔记本电脑永远是解决笔记本故障的卡片屏幕...

    有时,我们的笔记本电脑总是卡住了。我们怎样才能解决这个问题可能有很多不太熟悉的网友。现在让我们告诉你...

    电脑/网络

  • xp电脑显示屏调节屏幕亮度怎么调节_XP...

    XP电脑显示屏亮度调节怎么操作 1、直接在XP系统桌面空白处右键选择属性打开【显示属性】程序。 2、...

    电脑/网络

  • 计算机不能重新启动所有时间重新启动如何解...

    关于计算机不能重启和重启的问题,我相信很多网民以前见过。我们如何解决这个问题这里有一点告诉你,计算机...

    电脑/网络

  • 如果笔记本不能上网,我该怎么办

    也许有些网友对笔记本电脑无法上网的问题了解不多。现在让我们向你介绍一下笔记本电脑不能上网的原因以及如...

    电脑/网络

  • 现在移民需要多少钱(留学移民要多少钱)

    在众多的热门移民国家中,能够同时满足速度快,要求简单且有法案支持的移民国家,目前就只有马耳他,希腊,...

    电脑/网络

  • 高迪安集团公司的实力怎么样?

    高迪安(英文:GOLDIAN,前身:金大元集团),是一个综合性企业集团,致力于真爱人文事业的发展,旗...

    管理学

  • 有人了解高迪安集团这个公司吗?

    高迪安(英文:GOLDIAN,前身:金大元集团),是一个综合性企业集团,成立以来致力于真爱人文事业的...

    产业信息

  • 高迪安集团旗下的人工智能产业发展好吗?

    高迪安集团旗下的元梦智能科技公司,是一家致力于打造以数字智能人为核心的人工智能交互系统,并集研发、生...

    产业信息

  • 高迪安这个公司现在旗下现在主要有哪些产业...

    高迪安旗下产业比较多,涵盖地产、教育、珠宝、智能、金融、互联、健康等多个领域。集团从地产起步,开发了...

    产业信息

  • 高迪安之前开发的第一个新房是哪个楼盘?

    位于浦东川沙的金钟苑,后续集团开发了享誉海内外的上海地标性楼盘——香梅花园。

    购房置业

正在加载...
最新资料 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):