zoukankan      html  css  js  c++  java
  • 安卓开发使用get请求想服务器发送数据

    经过今天的学习,成功实现了安卓使用get请求想服务器发送数据,具体操作如下:

    1.使用eclipse写一个简单的servlet

    在doget方法里面写上类似于javaweb那样从前端获取的数据的方法

    使用request.getParameter("title"),获取Android中组件输入的值,这是第一步

    2.使用Android studio写一个简单的布局文件,例如添加两个输入框,一个按钮

    并获取到输入的值转换为String类型

    3.编写Android向服务器发送请求的工具类

    建议搜索“Android HTTP请求方式:HttpURLConnection”,这一段内容有非常详细的教程

    在编写这个工具类的时候,主要有

    第一:需要声明HttpURLConnection对象

    第二:编写url,也就是请求地址,这里就用到了第一步中写的servlet,这里需要提示的地方就是

    比如在eclipse中运行一个servlet,会有下面的效果:

    这里在测试编写的servlet的时候需要我们手动添加数据

    http://localhost:8081/WangLuoText01/GetContext?name=liang&pass=2

    这里的localhost需要改成电脑的ip,具体的属性名称需要自己进行添加

    例如,我今天写的url是这样的:

    String address = "name="+name+"&age="+sex;
    System.out.println(address);
    //创建一个URL对象URL url = new URL("http://192.168.1.6:8081/WangLuoText01/TextGet?"+address);

    然后需要我们对这个HttpURLConnection对象对象进行一些设置

    //有了地址之后需要对connection进行设置
    connection = (HttpURLConnection)url.openConnection();//调用URL对象的openConnection( )来获取HttpURLConnection对象实例
    //设置请求方式
    connection.setRequestMethod("Get");
    //设置连接超时,读取超时的毫秒数,以及服务器希望得到的一些消息头
    connection.setConnectTimeout(10000);// 5秒 连接主机的超时时间(单位:毫秒)
    connection.setReadTimeout(5000);//5秒 从主机读取数据的超时时间(单位:毫秒)
    之后在调用.getResponseCode()这个方法判断是否等于200 //200   (成功)  服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页
    到这里我们需要做的工作已经完成了
    4.剩下的就是在activity中进行只用之前创建的get请求工具类
    这里需要提示一点就是,安卓开发中的线程
    访问网络要在子线程中实现,使用get取数据
    具体思路就是这样了,但是还是有不足的地方就是在之前学习Java基础的时候,在线程这一块是草草了事,导致今天编程的时候出现了一些问题。



  • 相关阅读:
    (转)搜索Maven仓库 获取 groupid artifactId
    idea自用快捷键(非常实用)
    (2)一起来看下使用mybatis框架的insert语句的源码执行流程吧
    (1)复习jdbc操作,编译mybatis源码,准备为你的简历加分吧
    关于CPU核心,线程,进程,并发,并行,及java线程之间的关系
    数组排序
    泛型类、泛型方法、类型通配符的使用
    数组的三种声明方式总结、多维数组的遍历、Arrays类的常用方法总结
    Java基本数据类型总结、类型转换、常量的声明规范,final关键字的用法
    JAVA基础语法——标识符、修饰符、关键字(个人整理总结)
  • 原文地址:https://www.cnblogs.com/lianggegege123/p/13407530.html
Copyright © 2011-2022 走看看