GetDemo项目目录

一、编写StreamTools.java

  1. /**
  2. *
  3. */
  4. package com.hyzhou.getdemo.utiils;
  5.  
  6. import java.io.ByteArrayOutputStream;
  7. import java.io.InputStream;
  8.  
  9. /**
  10. * @author hyzhou
  11. *
  12. * 2013-11-6
  13. */
  14. public class StreamTools {
  15.  
  16. /**
  17. * 把输入流内容转化成字符串
  18. */
  19. public static String readInputStream(InputStream is) {
  20. try {
  21. ByteArrayOutputStream baos=new ByteArrayOutputStream();
  22. int len=0;
  23. byte[] buffer=new byte[1024];
  24. while ((len=is.read(buffer))!=-1) {
  25. baos.write(buffer,0,len);
  26. }
  27. is.close();
  28. baos.close();
  29. byte[] result=baos.toByteArray();
  30. //试着解析result中的字符串
  31. String temp=new String(result);
  32. return temp;
  33. } catch (Exception e) {
  34. // TODO: handle exception
  35. e.printStackTrace();
  36. return "获取失败";
  37. }
  38.  
  39. }
  40. }

二、编写LoginServer.java

  1. /**
  2. *
  3. */
  4. package com.hyzhou.getdemo.service;
  5.  
  6. import java.io.IOException;
  7. import java.io.InputStream;
  8. import java.net.HttpURLConnection;
  9. import java.net.URL;
  10.  
  11. import com.hyzhou.getdemo.utiils.StreamTools;
  12.  
  13. /**
  14. * @author hyzhou
  15. *
  16. * 2013-11-6
  17. */
  18. public class LoginServer {
  19. public static String loginByGet(String username,String password)
  20. {
  21.  
  22. try {
  23. String path="http://192.168.1.54:8080/web/LoginServlet?username="+username+"&password="+password;
  24. URL url=new URL(path);
  25. HttpURLConnection conn=(HttpURLConnection) url.openConnection();
  26. conn.setConnectTimeout(5000);
  27. conn.setRequestMethod("GET");
  28. int code=conn.getResponseCode();
  29. if (code==200) {
  30. InputStream is=conn.getInputStream();
  31. String text=StreamTools.readInputStream(is);
  32. return text;
  33. }else {
  34. return null;
  35. }
  36.  
  37. } catch (IOException e) {
  38. // TODO Auto-generated catch block
  39. e.printStackTrace();
  40. }
  41. return null;
  42. }
  43. }

三、编写MainActivity.java

  1. package com.hyzhou.getdemo;
  2.  
  3. import com.hyzhou.getdemo.service.LoginServer;
  4.  
  5. import android.os.Bundle;
  6. import android.app.Activity;
  7. import android.view.Menu;
  8. import android.view.View;
  9. import android.widget.EditText;
  10. import android.widget.Toast;
  11.  
  12. public class MainActivity extends Activity {
  13.  
  14. private EditText et_username, et_password;
  15.  
  16. @Override
  17. protected void onCreate(Bundle savedInstanceState) {
  18. super.onCreate(savedInstanceState);
  19. setContentView(R.layout.activity_main);
  20. et_username = (EditText) findViewById(R.id.et_username);
  21. et_password = (EditText) findViewById(R.id.et_password);
  22. }
  23.  
  24. public void click(View view) {
  25. final String username = et_username.getText().toString().trim();
  26. final String password = et_password.getText().toString().trim();
  27. new Thread(new Runnable() {
  28.  
  29. @Override
  30. public void run() {
  31. // TODO Auto-generated method stub
  32. final String result = LoginServer
  33. .loginByGet(username, password);
  34. if (result != null) {
  35. runOnUiThread(new Runnable() {
  36.  
  37. @Override
  38. public void run() {
  39. // TODO Auto-generated method stub
  40. Toast.makeText(MainActivity.this, result, 0).show();
  41. }
  42. });
  43. } else {
  44. runOnUiThread(new Runnable() {
  45.  
  46. @Override
  47. public void run() {
  48. // TODO Auto-generated method stub
  49. Toast.makeText(MainActivity.this, "请求失败", 0).show();
  50. }
  51. });
  52. }
  53. }
  54. }).start();
  55. }
  56.  
  57. @Override
  58. public boolean onCreateOptionsMenu(Menu menu) {
  59. // Inflate the menu; this adds items to the action bar if it is present.
  60. getMenuInflater().inflate(R.menu.activity_main, menu);
  61. return true;
  62. }
  63.  
  64. }

注意:因为要请求网络,所以要在AndroidManifest.xml注册请求网络权限<uses-permission android:name="android.permission.INTERNET"/>

采用get方式提交数据到服务器实例的更多相关文章

  1. Android 采用post方式提交数据到服务器

    接着上篇<Android 采用get方式提交数据到服务器>,本文来实现采用post方式提交数据到服务器 首先对比一下get方式和post方式: 修改布局: <LinearLayout ...

  2. Android 采用get方式提交数据到服务器

    首先搭建模拟web 服务器,新建动态web项目,servlet代码如下: package com.wuyudong.web; import java.io.IOException; import ja ...

  3. Android(java)学习笔记210:采用post请求提交数据到服务器(qq登录案例)

    1.POST请求:  数据是以流的方式写给服务器 优点:(1)比较安全 (2)长度不限制 缺点:编写代码比较麻烦   2.我们首先在电脑模拟下POST请求访问服务器的场景: 我们修改之前编写的logi ...

  4. Android(java)学习笔记153:采用post请求提交数据到服务器(qq登录案例)

    1.POST请求:  数据是以流的方式写给服务器 优点:(1)比较安全 (2)长度不限制 缺点:编写代码比较麻烦   2.我们首先在电脑模拟下POST请求访问服务器的场景: 我们修改之前编写的logi ...

  5. Android(java)学习笔记209:采用get请求提交数据到服务器(qq登录案例)

    1.GET请求:    组拼url的路径,把提交的数据拼装url的后面,提交给服务器. 缺点:(1)安全性(Android下提交数据组拼隐藏在代码中,不存在安全问题)  (2)长度有限不能超过4K(h ...

  6. Android(java)学习笔记152:采用get请求提交数据到服务器(qq登录案例)

    1.GET请求:    组拼url的路径,把提交的数据拼装url的后面,提交给服务器. 缺点:(1)安全性(Android下提交数据组拼隐藏在代码中,不存在安全问题)  (2)长度有限不能超过4K(h ...

  7. httpclient方式提交数据到服务器

    get方式: //使用HttpClient请求服务器将用户密码发送服务器验证 try{ String path = "http://192.168.13.83:8080/xuexi/serv ...

  8. 采用Post方式提交数据实例

    项目目录 一.编写MainActivity.java package com.hyzhou.getdemo; import com.hyzhou.getdemo.service.LoginServer ...

  9. 采用get的方式提交数据到服务器

    1  效果演示:

随机推荐

  1. PHP的Try, throw 和 catch

    PHP的Try, throw 和 catch   Try, throw 和 catch Try - 使用异常的函数应该位于 "try" 代码块内.如果没有触发异常,则代码将照常继续 ...

  2. spring mvc中关于url中传递中文乱码的解决方法

    在传值过程中,也是乱码出现的频繁地.先不说到底是什么场景了,通常常用的方案有如下几个 配置指定的filter <!-- 配置请求过滤器,编码格式设为UTF-8,避免中文乱码--> < ...

  3. Qt中与文件目录相关操作

    一.与文件目录操作有关操作. Qt中与文件目录相关的操作在QDir中,需加入#include <QDir>语句. QDir::drives()是列出电脑根目录下的所有目录,返回的是QFil ...

  4. 编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。

    题目描述 编写一个函数,计算字符串中含有的不同字符的个数.字符在ACSII码范围内(0~127).不在范围内的不作统计. 输入描述: 输入N个字符,字符在ACSII码范围内. 输出描述: 输出范围在( ...

  5. 关于Unity中GrabPass截屏的使用和Shader的组织优化

    GrabPass截屏 可以用来截屏,截屏后把纹理传给下一个通道使用. 1:使用抓屏通道, GrabPass {} 或 GrabPass { “ 纹理名称”}; 使用GrabPass {}后,可以用_G ...

  6. nodemon是个好东西

    不说话,直接上图: 安装 使用

  7. JAR 文件格式提供了许多优势和功能

    JAR 文件格式提供了许多优势和功能,其中很多是传统的压缩格式如 ZIP 或者 RAR 所没有提供的.它们包括: 安全性 可以对 JAR 文件内容加上数字化签名.这样,能够识别签名的工具就可以有选择地 ...

  8. 创建Swing的步骤

    (1)导入Swing包 (2)选择界面风格 (3)设置顶层容器 (4)设置按钮和标签 (5)将组件放到容器上 (6)为组件增加边框 (7)处理事件 (8)辅助技术支持 package Com.MySw ...

  9. Python学习注脚

    python版本:2.7.6 Python基础学习书摘. 变量命名规范: python的变量名只能由字母和数字组成,且必须以字母开头. python的变量名不能使用系统已有的关键字,包括: and c ...

  10. linq join 左连接 leftjoin 多个on条件 where 条件

    var haveChange = from newScore in newScoreList join oldScore in oldScoreList on new{newScore.ExamId, ...