HttpClient请求数据

</pre>package com.example.bean;public class Bean {    public String error_code;    public String reason;    public Result result;    public String resultcode;    @Override    public String toString() {        return "result=" + result ;    }}<pre name="code" class="java">

package com.example.bean;

import java.util.List;

public class Data {

    public List<String> albums ;

    public String burden;

    public String id;

    public String imtro;

    public String ingredients;

    public List<Steps> steps ;

    public String tags;

    public String title;

    @Override
    public String toString() {
        return "Data [albums=" + albums + ", burden=" + burden + ", id=" + id
                + ", imtro=" + imtro + ", ingredients=" + ingredients
                + ", steps=" + steps + ", tags=" + tags + ", title=" + title
                + "]";
    }

}


package com.example.bean;

import java.util.List;

public class Result {

    public List<Data> data;
    public String pn;
    public String rn;
    public String totalNum;
    @Override
    public String toString() {
        return "Result [data=" + data + ", pn=" + pn + ", rn=" + rn
                + ", totalNum=" + totalNum + "]";
    }
}

package com.example.bean;

public class Steps {

    public String img;

    public String step;

    @Override
    public String toString() {
        return "Steps [img=" + img + ", step=" + step + "]";
    }
}

package com.example.httpclient;

import java.io.IOException;
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.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import com.example.bean.Bean;
import com.google.gson.Gson;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.app.Activity;

public class MainActivity extends Activity {

    String url = "http://apis.juhe.cn/cook/query?key=adcc00d2a93058b3dbb4530000f5525d";
    String pathName = "&menu=";
    String path = "&rn=10&pn=3";

    private EditText ed;
    private TextView tv;

    Handler hand = new Handler() {

        @Override
        public void handleMessage(Message msg) {
            Bean bean = (Bean) msg.obj;
            tv.setText(bean.toString()+"\n");
        }
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tv = (TextView) findViewById(R.id.textView1);
        ed = (EditText) findViewById(R.id.ed);
    }

    public void getData(String name) {

        HttpClient httpClient = new DefaultHttpClient();
        HttpGet httpGet = new HttpGet(url + pathName + name + path);
        try {
            HttpResponse response = httpClient.execute(httpGet);
            HttpEntity httpEntity = response.getEntity();
            String string = EntityUtils.toString(httpEntity);

            Gson gson = new Gson();
            Bean bean = gson.fromJson(string, Bean.class);
            Message msg = Message.obtain();
            msg.obj = bean;
            hand.sendMessage(msg);
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public void sel(View v) {
        final String name = ed.getText().toString().trim();
        if (!TextUtils.isEmpty(name)) {
            new Thread() {
                public void run() {
                    getData(name);
                };
            }.start();
        } else {
            Toast.makeText(MainActivity.this, "请输入菜名", 0).show();
        }
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值