文档章节

post用户登录模板

hlxxjava
 hlxxjava
发布于 2016/11/13 22:37
字数 344
阅读 4
收藏 0
    import java.io.InputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.net.URLEncoder;

    import android.app.Activity;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.text.TextUtils;
    import android.view.View;
    import android.widget.EditText;
    import android.widget.TextView;
    import android.widget.Toast;

    public class MainActivity extends Activity {
        protected static final int SUCCESS = 1;
        protected static final int ERROR = 2;
        private EditText et_qq;
        private EditText et_pwd;
        private TextView tv_status;

        private Handler handler = new Handler(){
            public void handleMessage(android.os.Message msg) {
                switch (msg.what) {
                case ERROR:
                    Toast.makeText(MainActivity.this, "请求失败,请检查网络和服务器的状态", 0).show();
                    break;
                case SUCCESS:
                    Toast.makeText(MainActivity.this, (String)msg.obj, 0).show();
                    tv_status.setText("当前状态:"+ (String)msg.obj);
                    break;
                }
            };
        };

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            et_qq = (EditText) findViewById(R.id.et_qq);
            et_pwd = (EditText) findViewById(R.id.et_pwd);
            tv_status = (TextView) findViewById(R.id.tv_status);
        }
        public void login(View view){
            //http://localhost:8080/web/LoginServlet?qq=10000&pwd=abcde
            final String qq = et_qq.getText().toString().trim();
            final String pwd = et_pwd.getText().toString().trim();
            if(TextUtils.isEmpty(qq)||TextUtils.isEmpty(pwd)){
                Toast.makeText(this, "qq或者密码不能为空", 0).show();
                return;
            }
            new Thread(){
                public void run() {
                    String path = "http://192.168.1.103:8080/web/LoginServlet";
                    try {
                        URL url = new URL(path);
                        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
                        //1.设置请求方式为POST
                        conn.setRequestMethod("POST"); //注意单词必须大写.
                        conn.setConnectTimeout(5000);
                        //2.设置http请求数据的类型为表单类型
                        conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
                        //3.设置给服务器写的数据的长度
                        //qq=10000&pwd=abcde
                        String data = "qq="+URLEncoder.encode(qq, "utf-8")+"&pwd="+URLEncoder.encode(pwd, "utf-8");
                        conn.setRequestProperty("Content-Length", String.valueOf(data.length()));
                        //4.记得指定要给服务器写数据
                        conn.setDoOutput(true);
                        //5.开始向服务器写数据
                        conn.getOutputStream().write(data.getBytes());
                        int code = conn.getResponseCode();
                        if(code == 200){
                            InputStream is = conn.getInputStream();
                            String result = StreamTools.readStream(is);
                            Message msg = Message.obtain();
                            msg.what = SUCCESS;
                            msg.obj = result;
                            handler.sendMessage(msg);
                        }else{
                            Message msg = Message.obtain();
                            msg.what = ERROR;
                            handler.sendMessage(msg);
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                        Message msg = Message.obtain();
                        msg.what = ERROR;
                        handler.sendMessage(msg);
                    }
                };
            }.start();
        }
    }

 

© 著作权归作者所有

共有 人打赏支持
hlxxjava
粉丝 1
博文 7
码字总数 1481
作品 0
武汉
私信 提问
2014-02-26 杂谈 . 用户登录 . 对模板引擎的理解

杂谈 session 在英语中指会话期,在php中常用于记录登陆状态等信息,因为你不可能让用户每打开一个页面都登陆一次,于是就用session保存用户的信息。网站中,每一页的变量只能当前页使用,但...

YYCRiver
2014/02/26
0
0
使用ecgo框架编写demo

需求简述 支持多用户的TODO系统,核心需求包括: 用户管理(注册、登录、退出、修改密码) 任务管理(列表、新增、修改、删除) 前端页面 注册页面 登录页面 修改密码 任务列表页 总体设计 注册、...

TimWong
2016/04/01
57
0
Flask框架 —— 从入门到精通

更新日期 :2016 - 2 - 26 有开源网友提醒,故为了可阅读性更新排版。 Hello World 作者背景 应用程序简介 要求 安装 Flask 在 Flask 中的 “Hello, World” 下一步? 模板 回顾 为什么我们需...

水果糖
2016/02/26
402
0
Play Scala 2.5.x - Play Web开发基础

介绍 本文的目标是通过一个用户登录示例,简要的介绍使用Play进行Web开发的基本流程。本文并不会手把手教你如何创建一个Play应用,而是通过核心的代码片段传递Play的一些设计理念,为不熟悉P...

joymufeng
2016/12/26
67
0
【Django】@login_required用法简介

在django项目中,经常会看到下面这样的代码: 里面有一个@login_required标签。其作用就是告诉程序,使用这个方法是要求用户登录的。 1.如果用户还没有登录,默认会跳转到‘/accounts/login...

晨曦之光
2012/03/01
2.4K
0

没有更多内容

加载失败,请刷新页面

加载更多

windows10小鹤双拼注册表

《安全第一》直接发文本内容,自己建文本,改文本后缀reg。 使用方法: 1.复制下示文本内容,打开你的文本编辑器(#记事本notepad或其他++),粘贴文本内容并保存在任意位置(不影响使用) ...

漫步海边小路
2分钟前
0
0
一、数据挖掘

数据挖掘的发展动力---需要是发明之母 数据爆炸问题 自动数据收集工具和成熟的数据库技术使得大量的数据被收集,存储在数据库、数据仓库或其他信息库中以待分析。我们拥有丰富的数据,但却缺...

凯文加内特
5分钟前
0
0
Java线程池ThreadPoolExecutor

线程池 ThreadPoolExecutor 线程池是ExecutorService的实现,可以通过Executors执行工厂构造不同类型的执行服务(线程池)。 ThreadPoolExecutor线程池使用的是阻塞队列BlockingQueue。 用于...

器石_
6分钟前
0
0
Mybatis 实现SQL拦截并在控制台打印SQL和参数

注:可以拦截sql 执行时间,优化sql。并打印sql 以及参数 第一步:创建类: SqlPrintInterceptor 并实现 Interceptor 该类如下: package com.ra.common.plugin;import org.apache.ibati...

轻量级赤影
9分钟前
1
0
Log4j2 配置

config: <?xml version="1.0" encoding="UTF-8"?><!-- http://logging.apache.org/log4j/2.x/manual/appenders.html --><!-- status 负责打印日记系统的 WARN 级别以及以上的日记 --><C......

Credo-Zhao
10分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部