Android通过POST方式传递数据到服务器简单demo
来源:互联网 发布:旅游策划师 知乎 编辑:程序博客网 时间:2024/05/17 20:13
通过Post方式传递数据给服务器是Android应用程序中的开发提交数据给服务器的一种主要方式,适用于数据量大、数据类型复杂、数据安全要求比较高的场合。
服务器端代码,该处主要编写doGet方法既可:
package com.wangjialin.internet.servlet;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;@WebServlet("/ServletForPOSTMethod")public class ServletForPOSTMethod extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name= request.getParameter("name"); String age= request.getParameter("age"); System.out.println("name from POST method: " + name ); System.out.println("age from POST method: " + age ); }}
客户端代码:
业务逻辑代码:
package com.wangjialin.internet.userInformation.service;import java.io.OutputStream;import java.net.HttpURLConnection;import java.net.URL;import java.net.URLEncoder;import java.util.HashMap;import java.util.Map;public class UploadUserInformationByPostService { public static boolean save(String title, String length) throws Exception{ String path = "http://192.168.1.100:8080/ServerForPOSTMethod/ServletForPOSTMethod"; Map<String, String> params = new HashMap<String, String>(); params.put("name", title); params.put("age", length); return sendPOSTRequest(path, params, "UTF-8"); } /** * 发送POST请求 * @param path 请求路径 * @param params 请求参数 * @return */ private static boolean sendPOSTRequest(String path, Map<String, String> params, String encoding) throws Exception{ // title=liming&length=30 StringBuilder sb = new StringBuilder(); if(params!=null && !params.isEmpty()){ for(Map.Entry<String, String> entry : params.entrySet()){ sb.append(entry.getKey()).append("="); sb.append(URLEncoder.encode(entry.getValue(), encoding)); sb.append("&"); } sb.deleteCharAt(sb.length() - 1); } byte[] data = sb.toString().getBytes(); HttpURLConnection conn = (HttpURLConnection) new URL(path).openConnection(); conn.setConnectTimeout(5000); conn.setRequestMethod("POST"); conn.setDoOutput(true);//允许对外传输数据 conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Length", data.length+""); OutputStream outStream = conn.getOutputStream(); outStream.write(data); outStream.flush(); if(conn.getResponseCode() == 200){ return true; } return false; }}
0 2
- Android通过POST方式传递数据到服务器简单demo
- 通过POST方式传递数据给服务器
- 通过GET方式传递 数据到服务器
- Android通过POST方法传递数据给服务器
- 通过POST方式发送数据到远程服务器
- android 通过get,post方式提交数据给服务器
- Android 通过Get/Post提交请求数据到服务器
- 通过GET方式传递数据给服务器
- Post方式发送UIImage数据到服务器
- Post方式发送UIImage数据到服务器 .
- Post方式发送UIImage数据到服务器
- Post方式请求提交数据到服务器
- C++用libcurl通过HTTP以表单的方式Post数据到服务器
- Android 通过Post方式提交数据
- android中get方式和post方式提交数据到服务器的区别
- android采用post方式获取服务器数据
- android采用post方式获取服务器数据
- android采用post方式获取服务器数据
- 使用corosync+pacemaker构建高可用集群(转)
- intent传递对象——序列化
- Loading Large Bitmaps Efficiently
- 点滴积累
- 快餐生活时代
- Android通过POST方式传递数据到服务器简单demo
- bootstrap兼容IE6、7、8版本(IE9以下版本)
- 自测4. Have Fun with Numbers
- SAP NOTE 691154 DATA_TRANSFORM和 HIER_TRANSFORM 的说明
- C++:关于C++的RTTI (运行阶段类型识别)
- openCV学习笔记(7):cvRectangle与cv::rectangle的用法
- 最短路径问题
- 用数组来处理求Fibonacci数列问题
- android动态加载已安装apk中的方法