这几天不太忙,就自己写了一个登录的接口,是为了让Android客户端通过volley框架调用来实现登录的,自己也是初学java。写了这篇博客来记录自己的学习以便以后可以用到
第一步
1.eclipse配置好tomcat的前提下,首先创建自己的一个工程并且创建一个类去继承servlet。如下;
2.创建一个Dynamic Web Project项目

这里的Dynamic web module version的版本选2.4的

点击完成后创建了自己的HelloSeverlet然后在项目的Java Resources的rsc目录下创建severlet项目,如下图:


创建的工程项目如下

具体代码如下,这里我的代码很简单就是一个用户名(username)和密码(password)。

public class LoginServlet extends HttpServlet {    protected void doGet(HttpServletRequest request,    HttpServletResponse response) throws ServletException, IOException {            doPost(request, response);    }    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        String username=request.getParameter("username");        String password=request.getParameter("password");        PrintWriter  out=response.getWriter();        if ("admin".equals(username)&&"123".equals(password)) {            out.println("succse");        }else{            out.println("buzhidao");        }    }}

这样就把一个简单的登录的代码写完了,接下来就是用浏览器去访问以上写好的登录,
第二步
1.在刚才创建好的目录下创建两个jsp文件如下

具体的代码fzp.jsp代码如下

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title heretitle>head><body>                   这是我自己的页面     <a href="login.jsp">登录a>              body>html>

login.jsp代码如下

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title heretitle>head><body>    <form action="http://localhost:8080/HelloSverlet/LoginServlet" method="get">                     用户名:<input type="text" name="username"/><br>                     密码:    <input type="password" name="password"/><br>            <input type="submit" value="登录"/>     form>body>html>

写好这些以后我启动自己在eclipse上的tomcat然后运行项目图如下

点击登录的运行如下:

ok这就完成了一个小之又小的登录
3.好了现在开始用Android 调用此接口(使用volley框架)我用的是AS工具
(1)首先创建好自己的工程后要导入volley.jar包把下载的volley.jar包复制到lib文件夹中



好了这就成功把框架导入了,接下来就是编码了
activity_main.xml

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="cn.com.armedpoliceapp.android80test.MainActivity">    <Button        android:id="@+id/button"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentBottom="true"        android:layout_alignParentStart="true"        android:layout_marginBottom="212dp"        android:text="登录"        android:layout_alignParentEnd="true" />RelativeLayout>

MainActivity的代码

public class MainActivity extends AppCompatActivity {   private EditText textView,textView2;    private Button button;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        textView= (EditText) findViewById(R.id.textView);        textView2= (EditText) findViewById(R.id.textView2);        button= (Button) findViewById(R.id.button);        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                requestJava();            }            private void requestJava() {                {                    String phpUrl = "http://这里写自己的ap地址:8080/HelloSverlet/LoginServlet";                    //volley框架                    RequestQueue queue;                    //获取方法名                    String methodName = "LoginServlet";                    //psot请求的参数                    final Map postParams = new HashMap();                    postParams.put("username", "admin");                    postParams.put("password", "123");                    //用post请求服务器(volley)框架                    RequestQueue requestQueue = Volley.newRequestQueue(MainActivity.this);                    StringRequest stringRequest = new StringRequest(                            Request.Method.POST,                            phpUrl,                            new Response.Listener() {                                @Override                                public void onResponse(String response) {                                    System.out.println("登录结果" + response);                                }                            },                            new Response.ErrorListener() {                                @Override                                public void onErrorResponse(VolleyError error) {                                }                            }                    ) {                        @Override                        protected Map getParams() throws AuthFailureError {                            Map map = new HashMap();                            map = postParams;                            System.out.println("服务器的请求Map" + map);                            return map;                        }                    };                    //volley框架请求时间的重写                    stringRequest.setRetryPolicy(new RetryPolicy() {                        @Override                        public int getCurrentTimeout() {                            return 1000 * 60;                        }                        @Override                        public int getCurrentRetryCount() {                            return 1000 * 60;                        }                        @Override                        public void retry(VolleyError volleyError) throws VolleyError {                        }                    });                    requestQueue.add(stringRequest);                }            }        });    }

好了这样就完成了用浏览器请求java(jsp)和Android请求java的登录接口了。但是这里用到的tomcat是eclipse中配置好的tomcat并不是本地服务器的tomcat如果想用本地的tomcat只需要把Java项目弄成war包放到本地tomcat的webapps目录下即可访问

更多相关文章

  1. ListView设置分割线颜色
  2. Android(安卓)Camera 的架构简单简析1
  3. android http通过post请求发送一个xml
  4. Android之TextView设置String文本颜色
  5. 第一行代码 Android(安卓)第 2 版 读书笔记
  6. afinallogoAndroid的快速开…
  7. android studio 删除、导入jar包
  8. Android(安卓)查看pdf文档——PDFView
  9. Android中实现Native与H5的通信方案汇总

随机推荐

  1. 修改android4.2系统源码实现system组和ro
  2. Android之“只是想来谈谈Handler机制”
  3. Android中的属性动画(Property Animation
  4. 2018-08-07
  5. AndroidStudioTip--用Builder模式替代构
  6. 查看Android应用包名package和入口activi
  7. Android开发 VideoView视频播放详解
  8. android studio导入eclipse项目方式及相
  9. android学习——NDK入门 windows下安装cy
  10. Mac下用cmake编译 Android用libjpeg-turb