精华内容
下载资源
问答
  • Android连接Tomcat服务器

    千次阅读 2015-11-18 20:23:22
    在保证服务器是正常状态时,将从Android模拟器上发送请求给服务端并接收服务端返回来的响应。 保证HttpServlet配置正常。可以通过在浏览器输入配置的地址,若能正常响应,那么在Android中去请求的话也是能正常响应...

    在保证服务器是正常状态时,将从Android模拟器上发送请求给服务端并接收服务端返回来的响应。

    保证HttpServlet配置正常。可以通过在浏览器输入配置的地址,若能正常响应,那么在Android中去请求的话也是能正常响应的。

    这里列举的Demo是在activity中有两个按钮,分别执行get请求和post请求的同时传递参数到服务端,并将服务端返回的信息显示到textview上。

    客户端

    一、get请求:

    第一步:建立请求,连接服务器。

    <span style="white-space:pre">			</span>String name = URLEncoder.encode("小红", "utf-8");   //中文输入先指定编码,不然会出现乱码
    			//get请求带参数的URL地址   http://192.168.1.112:8080/app/myweb?username=小红&password=abcd  
    			URL url = new URL(httpUrl+"?username="+name+"&password=abcd"); 
    			HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    			conn.setRequestMethod("GET");	//请求方式
    			conn.setConnectTimeout(15000);  //设置连接超时
    			conn.setReadTimeout(10000);  //设置读取超时
    			conn.connect();  //建立连接
    这里已经将参数加进去了。由于get请求的参数是直接加在URL地址之后,形式如同 http://192.168.1.112:8080/app/myweb?username=小红&password=abcd    问号后面就是携带的参数,中文参数需要先指定编码集,防止乱码。若没有参数则构造URL时就只需要协议地址。

    第二步:服务器请求连接成功后,服务器接到参数,并作出响应,客户端只需从连接中的流中读出响应即可。

    <span style="white-space:pre">			</span>InputStream in = conn.getInputStream();
    			BufferedReader br = new BufferedReader(new InputStreamReader(in, "utf-8"));  //得到连接服务器的缓冲流
    			String line;
    			StringBuilder sb = new StringBuilder();
    			while((line=br.readLine()) != null){    //从服务中读取请求返回的数据
    				sb.append(line);
    			}

    最后看看get请求的完整Demo:

    <span style="white-space:pre">	</span>/*get请求方式连接服务器   get请求传递参数在url后面加参数*/
    	public String getHttpDoget(String httpUrl){
    		try {
    			String name = URLEncoder.encode("小红", "utf-8");   //中文输入先指定编码,不然会出现乱码
    			//get请求带参数的URL地址   http://192.168.1.112:8080/app/myweb?username=小红&password=abcd  
    			URL url = new URL(httpUrl+"?username="+name+"&password=abcd"); 
    			HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    			conn.setRequestMethod("GET");	//请求方式
    			conn.setConnectTimeout(15000);  //设置连接超时
    			conn.setReadTimeout(10000);  //设置读取超时
    			conn.connect();  //建立连接
    			
    			InputStream in = conn.getInputStream();
    			BufferedReader br = new BufferedReader(new InputStreamReader(in, "utf-8"));  //得到连接服务器的缓冲流
    			String line;
    			StringBuilder sb = new StringBuilder();
    			while((line=br.readLine()) != null){    //从服务中读取请求返回的数据
    				sb.append(line);
    			}
    			return sb.toString();
    			
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    		return null;
    	}

    按钮监听中,由于请求服务器连接是耗时操作,需要放到子线程中,这里采用的是AsyncTask异步操作实现,若需要学习AsyncTask异步操作请参见:http://blog.csdn.net/tom_xiaoxie/article/details/49803413

    <span style="white-space:pre">		</span>mConnecyBtn = (Button) findViewById(R.id.http_doget_btn);
    		mConnecyBtn.setOnClickListener(new OnClickListener() {
    			String httpUrl = "http://192.168.1.112:8080/app/myweb";
    			@Override
    			public void onClick(View v) {
    				new AsyncTask<String, Void, String>(){
    					@Override
    					protected String doInBackground(String... params) {
    						return getHttpDoget(params[0]);  //调用请求响应方法
    					}
    					protected void onPostExecute(String result) {
    						mShowMsgTxt.setText(result);
    					};
    				}.execute(httpUrl);
    			}
    		});


    二、doPost请求:代码实现Post请求服务器响应跟get请求区别不大,只是Post请求在向服务器传参的时候,需要重新构造流来写入参数。这是由于Get请求只有一个流,参数是直接附加在url后,而Post请求的参数是通过另外的流来传递的,不通过URL,所以可以很大。也可以传递二进制数据。如文件的上传。Post建立连接及上传参数Demo如下:

    <span style="white-space:pre">			</span>URL url = new URL(httpUrl);
    			HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    			conn.setRequestMethod("POST");  //请求方法
    			conn.setConnectTimeout(15000);  //设置连接超时
    			conn.setReadTimeout(10000);  //设置读取超时
    			conn.connect();  //建立连接
    			
    			/*得到流向服务器传数据*/
    			OutputStream out = conn.getOutputStream();
    			PrintWriter pr = new PrintWriter(out);
    			pr.print("username=小明&password=1234");
    			pr.flush();

    获取服务器响应的数据跟gen请求一样。直接获取输入流来读取数据即可。

    <span style="white-space:pre">			</span>/*读取服务端数据*/
    			InputStream in = conn.getInputStream();
    			BufferedReader br = new BufferedReader(new InputStreamReader(in, "utf-8"));  //得到连接服务器的缓冲流
    			String line;
    			StringBuilder sb = new StringBuilder();
    			while((line=br.readLine()) != null){    //从服务中读取请求返回的数据
    				sb.append(line);
    			}

    还是贴上整个方法的Demo和按钮事件Demo:

    post方式请求:

    <span style="white-space:pre">	</span>/*post请求方式连接服务器,给服务器传递参数用流写入的方式*/
    	public String getHttpDopost(String httpUrl){
    		try {
    			URL url = new URL(httpUrl);
    			HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    			conn.setRequestMethod("POST");  //请求方法
    			conn.setConnectTimeout(15000);  //设置连接超时
    			conn.setReadTimeout(10000);  //设置读取超时
    			conn.connect();  //建立连接
    			
    			/*得到流向服务器传数据*/
    			OutputStream out = conn.getOutputStream();
    			PrintWriter pr = new PrintWriter(out);
    			pr.print("username=小明&password=1234");
    			pr.flush();
    			
    			/*读取服务端数据*/
    			InputStream in = conn.getInputStream();
    			BufferedReader br = new BufferedReader(new InputStreamReader(in, "utf-8"));  //得到连接服务器的缓冲流
    			String line;
    			StringBuilder sb = new StringBuilder();
    			while((line=br.readLine()) != null){    //从服务中读取请求返回的数据
    				sb.append(line);
    			}
    			return sb.toString();
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    		return null;
    	}

    按钮监听:

    <span style="white-space:pre">		</span>mDopostBtn = (Button) findViewById(R.id.http_dopost_btn);
    		mDopostBtn.setOnClickListener(new OnClickListener() {
    			String http = "http://192.168.1.112:8080/app/myweb";
    			@Override
    			public void onClick(View v) {
    				new AsyncTask<String, Void, String>(){
    					@Override
    					protected String doInBackground(String... params) {
    						return getHttpDopost(params[0]);
    					}
    					protected void onPostExecute(String result) {
    						mShowMsgTxt.setText(result);
    					};
    				}.execute(http);
    			}
    		});



    服务端

    最后看看服务端做了什么?服务端就是将客服端传来的参数获取到并且返回给客服端。

    package CatServelet;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class WebTestServelet extends HttpServlet {
    	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
    			throws ServletException, IOException {
    		resp.setContentType("text/html;charset=utf-8");  //防止中文乱码
    		String name = req.getParameter("username");
    		//name = new String(name.getBytes("ISO-8859-1"),"UTF-8");   //解决乱码问题方式一
    		System.out.println(name);
    		String password = req.getParameter("password");
    		resp.getWriter().print("password:" + password +"\n" +"username:"+name);
    	}
    	
    	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
    			throws ServletException, IOException {
    		req.setCharacterEncoding("UTF-8");//设定请求编码
    		resp.setContentType("text/html;charset=utf-8");  //设定响应编码 防止中文乱码
    		String name = req.getParameter("username");
    		String password = req.getParameter("password");
    		System.out.println(name);
    		resp.getWriter().print("password:" + password +"\n" +"username:"+name);
    	}
    }
    


    乱码问题:首先肯定是统一所有编译器的编码集如UTF-8.

    解决doGet请求乱码问题,这里设置了两处的编码集,一是在客户端请求服务端是传入的参数先指定编码集UTF-8。

    String name = URLEncoder.encode("小红", "utf-8");   //中文输入先指定编码,不然会出现乱码

    二是服务端响应时设置响应编码集。

    resp.setContentType("text/html;charset=utf-8");  //设置响应编码集 防止中文乱码

    至于doPost请求的乱码,只需要在服务端设定请求编码和响应编码就行了。

    <span style="white-space:pre">		</span>req.setCharacterEncoding("UTF-8");//设定请求编码
    		resp.setContentType("text/html;charset=utf-8");  //设定响应编码 防止中文乱码

    延生:

    get请求和post请求的区别与比较:
    Get请求只有一个流,参数附加在url后面,地址行显示要传送的信息,大小个数有严格的限制且只能是字符串。

    Post请求的参数通过另外的流传递,不通过URL,所以可以很大,也可以传递二进制数据如文件。

    就是参数传递方式,参数大小,参数类型有区别。

    1、安全性:get请求参数显示在url地址后面,可能存在安全性。如密码,post请求可以解决这个问题。

    2、服务器接收方式  服务器随机接收get请求的数据,一旦断电等意外原因,服务器不会知道信息是否传送完毕。而post请求是服务器先接收数据信息长度,在接受数据。

    3、form运行方式。当form框里面的method为get时,执行doGet()方法。为post时,执行doPost()方法。

    4、信息容量限制  get请求的参数信息有限制,post请求没有限制。

    get请求乱码:

    设定接受参数(客服端发送来的参数)编码集有两种方式,一是更改服务器配置文件,打开Tomcat--->conf目录下的server.xml文件

    找到<Connector>标签在里面加一行URIEncoding="UTF-8"设定编码集。

    另一种方式是得到参数后转码

    <span style="white-space:pre">		</span>String name = req.getParameter("username");
    		name = new String(name.getBytes("ISO-8859-1"),"UTF-8");   //解决乱码问题方式一
    而响应请求(发送给客户端的参数)参数则用resp.setContentType("text/html;charset=utf-8");  //防止中文乱码


    post请求乱码:

    设定接受参数(客服端发送来的参数)编码集   req.setCharacterEncoding("UTF-8");//设定请求编码

    响应请求(发送给客户端的参数)参数  resp.setContentType("text/html;charset=utf-8");  //设定响应编码 防止中文乱码


    特别注意在doget()中req.setCharacterEncoding("UTF-8")来设置接收参数编码是没有作用的。还是需要name = new String(name.getBytes("ISO-8859-1"),"UTF-8");   这种方式来转码。req.setCharacterEncoding("UTF-8")只在post()中有作用。



    最后上图并贴上完整代码:


    activity代码:主布局就只有两个按钮加一个textview控件。

    package webview;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    import java.io.PrintWriter;
    import java.net.HttpURLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;
    import java.net.URLEncoder;
    import java.sql.Connection;
    
    import android.app.Activity;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.TextView;
    
    import com.example.call.R;
    
    public class HttpServeletActivity extends Activity {
    	private TextView mShowMsgTxt;
    	private Button mConnecyBtn,mDopostBtn;
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.httpservelet_main_layout);
    		mShowMsgTxt = (TextView) findViewById(R.id.http_text);
    		
    		mConnecyBtn = (Button) findViewById(R.id.http_doget_btn);
    		mConnecyBtn.setOnClickListener(new OnClickListener() {
    			String httpUrl = "http://192.168.1.112:8080/app/myweb";
    			@Override
    			public void onClick(View v) {
    				new AsyncTask<String, Void, String>(){
    					@Override
    					protected String doInBackground(String... params) {
    						return getHttpDoget(params[0]);
    					}
    					protected void onPostExecute(String result) {
    						mShowMsgTxt.setText(result);
    					};
    				}.execute(httpUrl);
    			}
    		});
    		
    		mDopostBtn = (Button) findViewById(R.id.http_dopost_btn);
    		mDopostBtn.setOnClickListener(new OnClickListener() {
    			String http = "http://192.168.1.112:8080/app/myweb";
    			@Override
    			public void onClick(View v) {
    				new AsyncTask<String, Void, String>(){
    					@Override
    					protected String doInBackground(String... params) {
    						return getHttpDopost(params[0]);
    					}
    					protected void onPostExecute(String result) {
    						mShowMsgTxt.setText(result);
    					};
    				}.execute(http);
    			}
    		});
    	}
    	
    	/*post请求方式连接服务器,给服务器传递参数用流写入的方式*/
    	public String getHttpDopost(String httpUrl){
    		try {
    			URL url = new URL(httpUrl);
    			HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    			conn.setRequestMethod("POST");  //请求方法
    			conn.setConnectTimeout(15000);  //设置连接超时
    			conn.setReadTimeout(10000);  //设置读取超时
    			conn.connect();  //建立连接
    			
    			/*得到流向服务器传数据*/
    			OutputStream out = conn.getOutputStream();
    			PrintWriter pr = new PrintWriter(out);
    			pr.print("username=小明&password=1234");
    			pr.flush();
    			
    			/*读取服务端数据*/
    			InputStream in = conn.getInputStream();
    			BufferedReader br = new BufferedReader(new InputStreamReader(in, "utf-8"));  //得到连接服务器的缓冲流
    			String line;
    			StringBuilder sb = new StringBuilder();
    			while((line=br.readLine()) != null){    //从服务中读取请求返回的数据
    				sb.append(line);
    			}
    			return sb.toString();
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    		return null;
    	}
    	
    	
    	/*get请求方式连接服务器   get请求传递参数在url后面加参数*/
    	public String getHttpDoget(String httpUrl){
    		try {
    			String name = URLEncoder.encode("小红", "utf-8");   //中文输入先指定编码,不然会出现乱码
    			//get请求带参数的URL地址   http://192.168.1.112:8080/app/myweb?username=小红&password=abcd  
    			URL url = new URL(httpUrl+"?username="+name+"&password=abcd"); 
    			HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    			conn.setRequestMethod("GET");	//请求方式
    			conn.setConnectTimeout(15000);  //设置连接超时
    			conn.setReadTimeout(10000);  //设置读取超时
    			conn.connect();  //建立连接
    			
    			InputStream in = conn.getInputStream();
    			BufferedReader br = new BufferedReader(new InputStreamReader(in, "utf-8"));  //得到连接服务器的缓冲流
    			String line;
    			StringBuilder sb = new StringBuilder();
    			while((line=br.readLine()) != null){    //从服务中读取请求返回的数据
    				sb.append(line);
    			}
    			return sb.toString();
    			
    		} catch (MalformedURLException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    		return null;
    	}
    }
    

    服务端代码:

    package CatServelet;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class WebTestServelet extends HttpServlet {
    	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
    			throws ServletException, IOException {
    		resp.setContentType("text/html;charset=utf-8");  //防止中文乱码
    		String name = req.getParameter("username");
    		//name = new String(name.getBytes("ISO-8859-1"),"UTF-8");   //解决乱码问题方式一
    		System.out.println(name);
    		String password = req.getParameter("password");
    		resp.getWriter().print("password:" + password +"\n" +"username:"+name);
    	}
    	
    	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
    			throws ServletException, IOException {
    		req.setCharacterEncoding("UTF-8");//设定请求编码
    		resp.setContentType("text/html;charset=utf-8");  //设定响应编码 防止中文乱码
    		String name = req.getParameter("username");
    		String password = req.getParameter("password");
    		System.out.println(name);
    		resp.getWriter().print("password:" + password +"\n" +"username:"+name);
    	}
    }




    展开全文
  • <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container" ... android:layout_width="match_pare...
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context=".MainActivity"
        tools:ignore="MergeRootFrame">
    
        <TextView
            android:text="请输入账号"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content" />
    
        <EditText
            android:id="@+id/username"
            android:text="heyiyong"
            android:layout_height="wrap_content"
            android:layout_width="fill_parent" />
    
        <TextView
            android:text="请输入密码"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content" />
    
        <EditText
            android:text="123"
            android:inputType="textPassword"
            android:id="@+id/password"
            android:layout_height="wrap_content"
            android:layout_width="fill_parent" />
    
        <Button
            android:onClick="click"
            android:text="登陆"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content" />
    
    </LinearLayout>

     

    package com.wuyou.submittoserver;
    
    import android.os.Bundle;
    import android.support.v7.app.ActionBarActivity;
    import android.text.TextUtils;
    import android.view.View;
    import android.widget.EditText;
    import android.widget.Toast;
    
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;
    
    public class MainActivity extends ActionBarActivity {
    
        private static final int OK = 200;
        private EditText usernameEditText;
        private EditText passwrodEditText;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            usernameEditText = (EditText) findViewById(R.id.username);
            passwrodEditText = (EditText) findViewById(R.id.password);
        }
    
    
        public void click(View view) {
            final String username = usernameEditText.getText().toString().trim();
            final String password = passwrodEditText.getText().toString().trim();
            //Android默认模拟器外部的地址为10.0.2.2,而不是localhost和127.0.0.1
            final String serverPath = "http://10.0.2.2:8080/login.jsp";
            if (TextUtils.isEmpty(username) || TextUtils.isEmpty(password)) {
                //给出提示:账号密码不许为空
            } else {
                new Thread(new Runnable() {
                    @Override
                    public void run() {
                        try {
                            //使用GET方式请求服务器只能这样
                            URL url = new URL(serverPath + "?username=" + username + "&password=" + password);
                            HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
                            httpURLConnection.setRequestMethod("GET");
                            httpURLConnection.setConnectTimeout(5000);
                            httpURLConnection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0");
                            int responseCode = httpURLConnection.getResponseCode();
                            if (200 == responseCode) {
                                InputStream inputStream = httpURLConnection.getInputStream();
                                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
                                final String responseMsg = bufferedReader.readLine();
                                runOnUiThread(new Runnable() {
                                    @Override
                                    public void run() {
                                        Toast.makeText(MainActivity.this, responseMsg, Toast.LENGTH_LONG).show();
                                    }
                                });
                            } else {
                                System.out.println("responseCode = " + responseCode);
                                //连接服务器出错,错误代码为:responseCode 根据代码值告诉用户出错的原因
                                //....
                            }
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                }).start();
            }
    
        }
    }

    不要忘记权限:

    <uses-permission android:name="android.permission.INTERNET"/>

     

    jsp页面为:

    <%
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        System.out.println("username = " + username);
        System.out.println("password = " + password);
        if("heyiyong".equals(username) && "123".equals(password)) {
            response.getOutputStream().write("login successful!".getBytes());
        } else {
            response.getOutputStream().write("wrong username or password.".getBytes());
        }
    %>

     

     

    转载于:https://www.cnblogs.com/wuyou/p/3426968.html

    展开全文
  • android本地连接tomcat

    2013-05-24 22:43:05
    没有网的时候如要要与本地tomcat服务器进行数据交换,需要将连接的ip设置为10.0.2.2,相当于电脑上的localhost或者127.0.0.1

    没有网的时候如要要与本地tomcat服务器进行数据交换,需要将连接的ip设置为10.0.2.2,相当于电脑上的localhost或者127.0.0.1

    展开全文
  • android系统应用的自动升级更新,通过http连接tomcat7下载并安装。
  • android访问tomcat服务器

    2014-03-25 19:36:31
    该资源包含了一个用android访问tomcat服务器的小案例,包括用户注册,和用户登录,以及将myqlz中的数据用listview组件显示出来
  • 文章:Android手机连接TOmcat服务器 博文地址:https://blog.csdn.net/monkey_study/article/details/71479019 前提:电脑和手机在同一个网段,比如电脑开wifim手机连接,或者手机电脑连接同一个wifi 一:...

    本文是转载文章,文章的来源:csdn博客
    博主:monkey_study
    文章:Android手机连接到TOmcat服务器
    博文地址:https://blog.csdn.net/monkey_study/article/details/71479019

    前提:电脑和手机在同一个网段,比如电脑开wifim手机连接,或者手机电脑连接同一个wifi

    一:先打开Tomcat

    打开Tomcat可以打开安装路径下bin目录下的startup。bat文件,也可以直接在开始-所有程序-Apache Tomcat 9.0 Tomcat9下打开,成功后


    start按钮为不可选定。或者http://localhost:8080/可以访问,出现

    即成功访问。

    2:打开cmd,输入ipconfig(win系统),查得自己ipv4的地址,如果ip为123.456.12.14,访问http://123.456.12.14:8080/,成功说明ip地址正确。

    3:打开手机浏览器,同样访问访问http://123.456.12.14:8080/。即完成手机访问tomcat服务器

    展开全文
  • 在电脑上部署了tomcat的服务器,电脑ip地址是192.168.191.1,这是android应用里请求的url地址:String URL = "http://192.168.191.1:8080/system_web/server";通过 HttpResponse httpResponse=httpClient.execute...
  • Android直接连接tomcat? 这个实现比较简单,先建立一个工作目录为tomcat。打开命令行切换到该目录。如果是win7需要用管理员身份打开命令行。? 1 生成服务器端私钥(or 公钥?)? keytool -genkey -alias ...
  • 我在Android系统写了一个软件,前几天测试真机是否能连接Tomcat服务器,发现真机如果是2.2或2.3的系统都能连接Tomcat服务器,但是真机如果是4.0以上系统却无法连接Tomcat服务器。而且防火墙我也关了的,就是连接不上...
  • Android客户端连接tomcat时出错:connect failed: ECONNREFUSED (Connection refused),econnrefused   public static final String BASE_URL = "http://127.0.0.1:8090/HelloWord/"...; 会抛异常...
  • 1、在eclipse环境下连接时,没有任何问题 2、直接将服务端发布到tomcat服务下,报timeout 3、查明原因: 3.1打开IE访问,一切正常,可以获取到数据,说明不是服务端的问题 3.2打开android访问,直接TimeOut 3.3...
  • Android - Tomcat服务器返回数据问题
  • 一个用android做为前端,servelt作为后端,tomcat作为服务器的一个小demo,在用之前大家一定要改连接android连接servelet的ip地址
  • 如果想要手机连接电脑上本地tomcat服务器,必须公用一个地址 实现 一、下载猎豹免费wifi(其他的免费wifi也可以) 让手机连接上这个免费wifi 二、在cmd中使用ipconfig命令查看本机的ip地址 三、使用该ip地址来访问...
  • 我的Tomcat服务器,搭建的在本地pc上的,内网测试项目的地址在浏览器是可以连通的,但是用android真机连接地址时却会出现SocketTimeOutException连接超时现象,找了很久没发现有直接解答的答案,有的帖子说解决了,...
  • androidtomcat服务器交互实例

    万次阅读 2012-09-05 11:47:19
    androidtomcat服务器交互实例 一、教程目的。  本教程的目的在于教会怎么完成androidtomcat服务器的数据交互。 二、开发环境。  Myeclipse8.5+jdk1.6+android2.3 三、开发步骤。  (1)新建一...
  • android真机连接pc上的服务器,不需要路由器,只需打开pc自带的wifi功能即可
  • 在使用android真机试图连接本地的tomcat的时候,发现一直没有反应.网上搜了很多资料,加上自己不断测试,后来发现模拟器访问tomcat的时候,ip的概念跟在pc上访问tomcat用的ip,根本就不同,更不用说真机了.怎么说呢?如果...
  • Genymotion连接Tomcat

    2016-06-07 09:41:49
    前段时间忙成狗,各种搞论文,考银行从业资格证。...而且普通的android模拟器访问本地Tomcat服务器使用的是10.0.2.2,不过对于Genymotion来说,访问本地Tomcat服务器使用的是10.0.3.2,这样连接Tomcat
  • public static final String BASE_URL = "http://127.0.0.1:8090/HelloWord/"...; 会抛异常Caused by: libcore.io.ErrnoException: connect failed: ECONNREFUSED (Connection refused) ...Str...
  • 知道大家是否想试一下用Android模拟器如何访问自己建的Web站点呢?  下面我将讲一下如何实现  Step 1:我用的Tomcat作为本地服务器,在Webapps这个目录里,把我的名为kankong的Web工程放进来,启动Tomcat服务器....
  • public static final String BASE_URL = "http://127.0.0.1:8090/HelloWord/"...; 会抛异常Caused by: libcore.io.ErrnoException: connect failed: ECONNREFUSED (Connection refused) ...String url =
  • androidtomcat数据交互

    千次阅读 2019-01-16 18:34:28
     目前大部分android的APP都具有联网功能,并且能够与服务器进行数据交互,本文采用tomcat作为服务器以实现数据交互,信息交互的前提是android设备和服务器在同一个局域网内。   android设计:  这边需要先说明...
  • Tomcat服务器Http协议通信,一个小demo,适合刚刚接触安卓HTTP协议的新手。
  • android + tomcat + eclipse实现登录

    千次阅读 2018-11-18 12:19:20
    客户端开发平台:Android studio( sdk版本26 ,模拟器 Android7.0) 服务器开发平台:eclipse+tomcat* 服务端 1.新建名为login_server的动态web项目(注意勾选自动添加web.xml配置文件) 2.在项目Java目录中新建包...
  • Androidtomcat搭建本地服务器

    千次阅读 2015-01-01 19:15:00
    1,先google一下下载一个tomcat,我下载的是这个版本apache-tomcat-6.0.30   2,再次google一下百度也行,下载一个eclipse的tomcat插件,我用的是tomcatPluginV32.zip。解压之后直接放入eclips

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,478
精华内容 4,191
关键字:

android连接tomcat