private String strUrl = "http://baidu.con";
URL url= null;
public static String sCookie;
public static Boolean req = false;//作为全局变量 用来保证每次只能有一个进程在获取服务端请求,以免出现多个进程同时执行操作 导致冲突
public String getData(String para1,String para2){
String Res = "";
while(true){
if(req){
req = false;//一个进程进入时关闭系统开关禁止其他进程进入
try{
//基础配置
String strUrl1 = strUrl+para1;
url = new URL(strUrl1);
HttpURLConnection urlConn = (HttpURLConnection)url.openConnection();
urlConn.setDoInput(true);
urlConn.setDoOutput(true);
if(sCookie!=null&&sCookie.length()>0){
urlConn.setRequestProperty("Cookie",sCookie);
}
urlConn.setRequestMethod("POST");
urlConn.setUseCaches(false);
urlConn.setRequestProperty("Content-type","application/x-www-from-urlencoded");
urlConn.setRequestProperty("Charset","utf-8");
urlConn.connect();
DataOutputStream dop = new DataOutputStream(urlConn.getOutputStream());
//参数配置
dop.writeByte(para2);
dop.close();
//接收工作
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(urlConn.getInputStream()));
String result = "";
String readLine = null;
while((readLine = bufferedReader.readLine())! = null){
result +=readLine;
}
bufferedReader.close();
urlConn.disconnect();
Res = URLDecoder.decode(result,"UTF-8");
String cookie = urlConn.getHeaderField("set-cokkie");
if(cookie!= null&&cookie.length()>0){
sCookie = cookie;
}
}
catch(IOException e){
e.printStackTrace();
}
finally{
req = true;//释放服务,允许其他进程访问服务器
}
return Res;
}
}
}