HttpUriConnection

Get和POST方式有什么

GET请求是从服务器上获取数据,POST请求是向服务器传送数据。
GET的请求参数放在URL链接中,POST的请求参数放在body中。
GET的URL会有长度上的限制,则POST的数据则可以非常大。
POST比GET安全,因为数据在地址栏上不可见。

HttpUriConnection请求网络数据实例

try {
            //创建URL地址对象
            URL url = new URL("https://www.baidu.com/");
            //创建Connection对象
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            //创建输入流对象
            InputStream inputStream = connection.getInputStream();
            //创建Reader对象
            InputStreamReader reader = new InputStreamReader(inputStream);
            //创建BufferedReader对象
            BufferedReader bufferReader = new BufferedReader(reader);
            //开始读取
            String temp = "";
            StringBuffer stringBuffer = new StringBuffer();
            while ((temp = bufferReader.readLine()) != null) {
                stringBuffer.append(temp);
                Log.e(stringBuffer.toString(),"大笨妞");
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

网络请求是一个耗时操作,所以不能写到主线程中,我们通过子线程来调用

new Thread(new Runnable() {
                    @Override
                    public void run() {
                        getWeb();

                    }
                }).start();

HttpUriConnection加载网络图片实例

布局文件:

android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:id="@+id/img_main"/> 

方法文件:

try {

            URL url=new URL("http://img4.duitang.com/uploads/item/201209/14/20120914194440_vJwWL.thumb.700_0.jpeg");
            HttpURLConnection connection= (HttpURLConnection) url.openConnection();
            InputStream inputDtream=connection.getInputStream();
            Bitmap bitmap= BitmapFactory.decodeStream(inputDtream);
            Message message=handler.obtainMessage();
            message.obj=bitmap;
            handler.sendMessage(message);

        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

String/StringBuffer/StringBuilder的区别

String 字符串常量
StringBuffer 字符串变量(线程安全)
StringBuilder 字符串变量(非线程安全)

你可能感兴趣的:(android)