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.client.methods.HttpUriRequest;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.conn.DefaultClientConnection;
import org.apache.http.util.EncodingUtils;
import org.apache.http.util.EntityUtils;
import com.example.httpcilent_get.bean.Bean;
import com.google.gson.Gson;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.R.color;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
private TextView tv_show;
private EditText ed;
private String ed_info;
int count = 0;
private String key = "3ac9f31ff66b9746539472887b3799c3";
String path = "http://web.juhe.cn:8080/constellation/getAll?";
String[] xingzuo = new String[] { "白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "处女座",
"天秤座", "天蝎座", "射手座", "摩羯座", "水瓶座", "双鱼座" };
Handler handler = new Handler() {
public void handleMessage(Message msg) {
Bean bean = (Bean) msg.obj;
tv_show.setText(bean.toString());
};
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 寻找控件
findwidget();
}
// 点击按钮
public void search(View view) {
ed_info = ed.getText().toString();
new Thread() {
public void run() {
if (!ed_info.equals("")) {
//
find_get(ed_info);
} else {
// 子线程中更新主线程的控件
runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(MainActivity.this, "输入框为空!", 3)
.show();
}
});} } }.start();
};
// get请求方式获取资源
private void find_get(String ed_info) {
try {
// 与12星座数组进行比较
for (int i = 0; i < xingzuo.length; i++) {
if (ed_info.equals(xingzuo[i])) {
count++; }}
if (count != 0) {
// HttpClient得到HttpClient对象
// DefaultHttpClient()是HttpClient的实现类 (HttpClient是接口)
HttpClient hc = new DefaultHttpClient();
// get请求方式 (括号里填写路径)
HttpGet httpget = new HttpGet(path + "consName=" + ed_info
+ "&type=year&key=3ac9f31ff66b9746539472887b3799c3");
// 连接网络请求数据,请求到的数据在httpResponse对象里
HttpResponse httpResponse = hc.execute(httpget);
int statusCode = httpResponse.getStatusLine().getStatusCode();
if (statusCode == 200) {
System.out.println("连接成功!");
// 服务器返回的内容在HttpEntity
HttpEntity entity = httpResponse.getEntity();
// 转换成String类型
String json = EntityUtils.toString(entity);
System.out.println(json);
Gson gson = new Gson();
Bean bean = gson.fromJson(json, Bean.class);
Message msg = Message.obtain();
msg.obj = bean;
handler.sendMessage(msg);
} else { System.out.println("连接失败!"); }
} else {
runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(MainActivity.this, "输入星座错误", 3).show(); } }); }
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
// 寻找控件
private void findwidget() {
ed = (EditText) findViewById(R.id.editText1);
tv_show = (TextView) findViewById(R.id.text_show);
}
}
------------------------------------------------------------------------------
/**
*
*/
package com.example.httpcilent_get.bean;
import java.util.List;
/**
* @author WJL
*
*/
public class Bean {
public List<String> career;
public List<String> finance;
public List<String> future;
public List<String> health;
public List<String> love;
public String date;
public String error_code;
public String luckyStone;
public String name;
public String resultcode;
public String year;
public Mima mima;
@Override
public String toString() {
return "Bean [career=" + career + "\n finance=" + finance + "\n future="
+ future + "\n health=" + health + "\n love=" + love + "\n date="
+ date + "\n error_code=" + error_code + "\n luckyStone="
+ luckyStone + "\n name=" + name + "\n resultcode=" + resultcode
+ "\n year=" + year + "\n mima=" + mima + "]";
}
}
-------------------------------------------------------------------------------------------
/**
*
*/
package com.example.httpcilent_get.bean;
import java.util.List;
/**
* @author WJL
*
*/
public class Mima {
public String info;
public List<String> text;
@Override
public String toString() {
return "Mima [info=" + info + ", text=" + text + "]";
}
}