Android 中tomcat搭建本地服务器

1,先google一下下载一个tomcat,我下载的是这个版本apache-tomcat-6.0.30

 

2,再次google一下百度也行,下载一个eclipse的tomcat插件,我用的是tomcatPluginV32.zip。解压之后直接放入eclipse的plugin文件夹下面,然后重启eclipse(之后觉的这个步骤好像没什么用)

 

3,然后启动tamcat,即运行bin文件夹下的startup.bat文件, 我的目录是D:/Download/Tomcat/apache-tomcat-6.0.30/apache-tomcat-6.0.30/bin/startup.bat

 

4,然后把要从服务器读取的文件放到webapps文件夹下面,我的存放目录是D:/Download/Tomcat/apache-tomcat-6.0.30/apache-tomcat-6.0.30/webapps/

       1)这个目录是tomcat默认的访问地址当然自己也可以指定,修改tomcat下conf文件夹下的server.xml, 即    D:/Download/Tomcat/apache-tomcat-6.0.30/apache-tomcat-6.0.30/conf/server.xml,

  修改server.xml中 <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

  为

   <Host name="localhost" appBase="D:/360Downloads/tomcat/"
    unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">

    appBase=""这里面的值可以修改为自己电脑的任何地方,我的就放在了D:/360Downloads/tomcat/下


     2)修改之后,在代码中通过Url = "http://localhost:8080/"l就直接可以访问D:/360Downloads/tomcat/下的文件了,比如访问D:/360Downloads/tomcat/tomcat.svg, url="http://localhost:8080/tomcat.svg"就可以从本地服务器读取该文件了

 

     3)为了确保通过此地址可以访问该文件,可以在浏览器中输入"http://localhost:8080/tomcat.svg"验证一下,前提是tomcat已经启动,第3点中已经说过

 

5,别忘了在Project工程中的AndroidManifest.xml中加上这个权限:<uses-permission android:name="android.permission.INTERNET" ></uses-permission> 这个权限我开始没加浪费我10多分钟

 

6,联网代码是这样写的

 

[java]  view plain copy
  1. public static String getContent(String url) throws Exception{  
  2.            StringBuilder sb = new StringBuilder();  
  3.            HttpClient client = new DefaultHttpClient();  
  4.            HttpParams httpParams = client.getParams();  
  5.            //设置网络超时参数  
  6.            HttpConnectionParams.setConnectionTimeout(httpParams, 3000);  
  7.            HttpConnectionParams.setSoTimeout(httpParams, 5000);  
  8.            HttpResponse response = client.execute(new HttpGet(url));  
  9.            HttpEntity entity = response.getEntity();  
  10.            if (entity != null) {  
  11.                BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent(), "UTF-8"), 8192);  
  12.                  
  13.                String line = null;  
  14.                while ((line = reader.readLine())!= null){  
  15.                    sb.append(line + "/n");  
  16.                }  
  17.                reader.close();  
  18.            }  
  19.              
  20.            return sb.toString();  
  21.        }   

 

 

7, 在点击run运行工程之前要把代码中的url="http://localhost(或者127.0.0.1):8080/tomcat.svg"改为url="http://10.0.0.2:8080/tomcat.svg"

如果不修改会报一个错,描述为连接被拒绝,为什么?问题是这样的,android模拟器(simulator)把它自己作为了localhost,也就是说,代码中使用localhost或者127.0.0.1来访问,都是访问模拟器自己!这是不行的!

如果你想在模拟器simulator上面访问你的电脑,那么就使用android内置的IP 10.0.2.2 吧, 10.0.2.2 是模拟器设置的特定ip,是你的电脑的别名alias记住,在模拟器上用10.0.2.2访问你的电脑本机.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值