利用HttpClient or HttpURLConnection 借助tomcat实现在本地进行网络数据的访问
2016-05-11 19:09
681 查看
在Android中的大部分app都是需要联网的,这里我们就可以在本地先模拟一下从本地的服务器来获得服务器中的数据
1)准备工作:tomcat,EMS员工管理系统(作为一个服务器中的服务)
1)tomcat的启动——>将tomcat的zip等文件解压到任意盘符的根目录(或者可以在没有任何中文的文件目录中)---->bin---->startup.bat(window环境下)-->开启服务器---->打开浏览器————>http://ip:host/path-->可以访问本地服务器的网页
2)EMS的文件处理,将EMS.war---cv到apache-tomcat目录下的webapps下,---->解压到ems
note01:在配置tomcat的时候,在点击startup的时候会出现闪退的情况,这种情况就是环境变量没有配置好
解决办法就是
[/code]
1)准备工作:tomcat,EMS员工管理系统(作为一个服务器中的服务)
1)tomcat的启动——>将tomcat的zip等文件解压到任意盘符的根目录(或者可以在没有任何中文的文件目录中)---->bin---->startup.bat(window环境下)-->开启服务器---->打开浏览器————>http://ip:host/path-->可以访问本地服务器的网页
2)EMS的文件处理,将EMS.war---cv到apache-tomcat目录下的webapps下,---->解压到ems
note01:在配置tomcat的时候,在点击startup的时候会出现闪退的情况,这种情况就是环境变量没有配置好
解决办法就是
Tomcat点击startup.bat闪退的解决方法 一般都是JDK的环境变量配置有问题 要配置三个变量 JAVA_HOME jdk的安卓路径,一般为 C:\Program Files (x86)\Java\jdk1.7.0 CLASSPATH 编译时JAVA编译器的路径,写一个点(.)就可以 Path Path环境变量原先就有很多内容,不要去删除原有的内容。确认Path中有如下内容C:\Program Files (x86)\Java\jdk1.7.0\bin或者%JAVA_HOME%\bin note02:在配置tomcat的时候,有时候会出现port被占用的情况,这就需要需改端口号 改Tomcat的默认Http访问端口号 安装目录/conf/server.xml 里面有一个定义Http访问使用的端口号标签,默认内容为: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 如果需要修改,就将port属性从8080改为你需要的端口号 2)[code] 1)HttpClient (apache开发) 2)HttpURLConnection(google在发布安卓时在Java基础上修改得到的) 使用HC(HttpClient)/UC(HttpURLConnection)进行网络访问的基本步骤: 0. 申请权限 INTERNET访问权限 1. 任何网络访问的相关代码,必须在工作线程中执行! 2. 创建HC/UC对象 3. 声明发起网络访问的方式(GET/POST) 4. 进行网络连接 5. 获得服务器响应的结果 6. 解析结果,提取需要的内容 7. 解析结果要提交到UI线程进行呈现 3)利用HttpClient的POST方式发起带参数的请求 利用POST方式发起请求,参数要放到请求实体中,并且在请求头中添加对实体中参数的说明。 添加说明: post.setHeader("Content-Type", "application/x-www-form-urlencoded"); 添加参数: List<NameValuePair> parameters = new ArrayList<NameValuePair>();//这是逻辑的第三步 parameters.add(new BasicNameValuePair("loginname", user.getName()));//这是逻辑的第二步 parameters.add(new BasicNameValuePair("password", user.getPassword())); parameters.add(new BasicNameValuePair("realname", user.getRealname())); parameters.add(new BasicNameValuePair("email", user.getEmail())); HttpEntity entity = new UrlEncodedFormEntity(parameters);//这是逻辑的第一步 post.setEntity(entity);//
[/code]
相关文章推荐
- 三步解决网络稳定加载图片:使用到谷歌开源的Volley
- socket(TCP)
- 网络编程知识(12)--ISO/OSI七层模型和TCP/IP四层网络模型
- C#:一个增强的TcpListener(二)线程池
- C#:一个增强的TcpListener(一)构造函数
- C#:一个增强的TcpListener(*)服务器演示程序及源代码下载
- WEB/HTTP 调试利器 Fiddler 的一些技巧分享
- 【HTTP】POST 与 PUT 方法区别
- 学习笔记之网络访问基础
- 《TCP/IP详解》学习笔记-第6/7/8章 ICMP/Ping/Traceroute
- httpclient4.3发送post和get实例代码
- 【网络编程】——connect函数遇见EINTR的处理
- iOS开发之处理网络图片的步骤
- 【转载】JMeter学习(三十六)发送HTTPS请求
- OKHttp源码解析好文连接
- 自动匹配HTTP请求中对应实体参数名的数据(性能不是最优)
- 网游中的网络编程3:在UDP上建立虚拟连接
- 一个自己整合的访问网络的类
- HttpUtility.UrlEncode 和 HttpUtility.Encode 一个大深坑
- eclipse中jsp页面<%@page import="javax.servlet.http.*"%>报错