HttpClientPostActivity

package com.example.homework6.internet;

import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.util.EntityUtils;

import com.alibaba.fastjson.JSON;
import com.example.homework6.R;
import com.example.homework6.R.id;
import com.example.homework6.R.layout;
import com.example.homework6.bean.Cai;

import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.TextView;
import android.app.Activity;
public class HttpClientPostActivity extends Activity {

    private TextView textl;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        MyAsyncTask myAsyncTask=new MyAsyncTask();
        myAsyncTask.execute("http://apis.juhe.cn/cook/query?"
                ,"a8cceb02be610927c66a843b6b1421d0","西红柿","10","3");
        textl=(TextView) findViewById(R.id.tv_title);
    }
    class MyAsyncTask extends AsyncTask<String, Integer, String>{
        private String string;
        @Override
        protected String doInBackground(String... params) {
            try {
                HttpPost httpPost=new HttpPost(params[0]);
                HttpParams httpParams=new BasicHttpParams();
                HttpConnectionParams.setConnectionTimeout(httpParams, 5000);
                HttpConnectionParams.setSoTimeout(httpParams, 5000);
                ArrayList<BasicNameValuePair> list=new ArrayList<BasicNameValuePair>();
                list.add(new BasicNameValuePair("key", params[1]));
                list.add(new BasicNameValuePair("menu", params[2]));
                list.add(new BasicNameValuePair("rn", params[3]));
                list.add(new BasicNameValuePair("pn", params[4]));
                HttpEntity httpEntity=new UrlEncodedFormEntity(list, "utf-8");
                httpPost.setEntity(httpEntity);
                HttpClient httpClient=new DefaultHttpClient(httpParams);
                HttpResponse execute = httpClient.execute(httpPost);
                if (execute.getStatusLine().getStatusCode()==200) {
                    HttpEntity entity = execute.getEntity();
                    string = EntityUtils.toString(entity, "utf-8");
                }
            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (ClientProtocolException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return string;
        }
        @Override
        protected void onPostExecute(String result) {
            Cai c=JSON.parseObject(result, Cai.class);
            textl.setText(c.toString());
        }
    }
}

内容概要:本文详细介绍了Java语言的核心特点、集合框架、并发编程、数据库相关知识、Redis、Linux基础、以及Spring和Spring Cloud框架的相关内容。Java语言的核心特点包括面向对象、平台无关性、强类型、垃圾自动管理、支持多线程、安全性、丰富的库、编译与解释并存、支持分布式、健壮性和开源社区支持。Java集合框架部分涵盖了List、Set、Map等常用集合类及其特性,如ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等,并介绍了它们的实现原理和性能特点。并发编程部分探讨了线程、线程池、锁机制等内容,强调了线程安全的重要性。数据库部分详细讲解了MySQL的存储引擎、索引、事务、锁机制等。Redis部分介绍了其数据类型、持久化机制、内存淘汰策略、分布式锁等。Linux部分涵盖了命令行操作、系统日志、安全配置等内容。Spring和Spring Cloud部分则介绍了Spring框架的核心特性(如IoC、AOP)、Spring MVC的工作流程、Spring Boot的自动配置原理,以及Spring Cloud的微服务组件(如Eureka、Ribbon、Hystrix等)。 适合人群:具备一定编程基础,尤其是对Java、数据库、Linux和微服务框架感兴趣的开发者。 使用场景及目标: 1. **Java语言和集合框架**:帮助开发者深入了解Java语言的核心特性和集合框架的使用场景,提升代码编写和优化能力。 2. **并发编程**:适用于需要理解和实现多线程、线程池和锁机制的开发人员,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值