android通过http访问mysql或者sqlserver,oracle数据库

表单提交中get和post方式的区别有5点
1.get是从服务器上获取数据,post是向服务器传送数据。
2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3.对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4.get 传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5.get安全性非常低,post安全性较高。

 

看到网上很多童鞋都在问这个东东,我就发上来算了,哥都搞EE了,算了,为了方便大家还是给发布一下:

 

package com.shuangchuan;

 

import java.io.DataInputStream;

import java.io.DataOutputStream;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.URL;

 

import org.apache.http.HttpResponse;

import org.apache.http.client.HttpClient;

import org.apache.http.client.methods.HttpPost;

import org.apache.http.impl.client.DefaultHttpClient;

 

public class MyData {

 

         public void post(String []str){

                   /**

                     * 使用httpclent

                     * 直接通过HTTP协议提交数据到服务器,实现如下面表单提交功能:

 

                     * @paramactionUrl 上传路径(注:避免使用localhost127.0.0.1这样的路径测试,由于它会指向手机模拟器,

 

                     * 你可以使用 itcast.cn 192.168.1.10:8080这样的路径测试)

 

                     *@paramparams 请求参数 key为参数名,value为参数值

 

                     *@paramfile 上传文件

 

                     **/

                   try {

                            String s="http://192.168.1.105:8080/yingyong/servlet/accessData";

                            s=s+"?name=wei";

                            URL url=new URL(s);

                            HttpURLConnection con=(HttpURLConnection )url.openConnection();

 

                            con.setConnectTimeout(5*1000);//设置超时时间

                            con.setDoInput(true);//答应输进

                            con.setDoOutput(true);//答应输出

                            con.setUseCaches(false);//不使用Cache

                            con.setRequestMethod("POST");

                            con.setRequestProperty("Charaset", "UTF-8");

                           

                           

                            StringBuilder sb=new StringBuilder();

                            sb.append("--start".getBytes());

                            sb.append(str[0]);

                            sb.append(str[1]);

                            sb.append(str[2]);

                           

                            DataOutputStream out=new DataOutputStream(con.getOutputStream());

                            out.write(sb.toString().getBytes());

                           

                            out.write("--end".getBytes());

                           

                            int cah=con.getResponseCode();

 

                            if(cah!=200)throw new RuntimeException("请求url失败");

                            out.close();

                            con.disconnect();

                            out.flush();

                   } catch (Exception e) {

                            e.printStackTrace();

                   }

         }

}

 

package com.shuangchuan;

 

import java.net.URL;

import java.util.ArrayList;

import java.util.List;

 

import android.app.Activity;

import android.os.Bundle;

 

public class HttpActivity extends Activity {

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        String str[]=new String[]{"yang","wei","dong"};

        MyData data=new MyData();

        data.post(str);

        

    }

}

 

package com.shuangchuan;

 

import java.io.IOException;

import java.io.UnsupportedEncodingException;

import java.net.URL;

import java.util.List;

 

import org.apache.http.HttpResponse;

import org.apache.http.NameValuePair;

import org.apache.http.client.ClientProtocolException;

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.protocol.HTTP;

import org.apache.http.util.EntityUtils;

 

public class aaaa {

         // 通过POST将本地数据发送给服务器,string参数表

         public static String sendDataByPost(String url, List datas){

                  

         org.apache.http.client.HttpClient client = new DefaultHttpClient();

         HttpPost post = new HttpPost(url);

         HttpResponse resp = null;

         String result = "";

         // post data

         try {

         post.setEntity(new UrlEncodedFormEntity(datas,HTTP.UTF_8));

         resp = client.execute(post);

         sendDataByPost(url, datas);

         result = EntityUtils.toString(resp.getEntity());

         } catch (UnsupportedEncodingException e) {

         e.printStackTrace();

         } catch (ClientProtocolException e) {

         e.printStackTrace();

         } catch (IOException e) {

         e.printStackTrace();

         }

         return result;

         }

}

猜你喜欢

转载自bcf.iteye.com/blog/1868703