• struts2+jquery 实现ajax登陆


    一、新建一个web项目:test,配置好struts2的环境(详细配置见:http://www.cnblogs.com/wuweidu/p/3841297.html)

          导入Jquery的js文件到项目

    二、在com.action包下,新建一个loginAction.java

    loginAction.java的代码如下

    复制代码
    package com.action;
    
    import org.apache.struts2.convention.annotation.Action;
    import org.apache.struts2.convention.annotation.ParentPackage;
    import org.apache.struts2.convention.annotation.Result;
    import org.apache.struts2.convention.annotation.Results;
    
    import com.opensymphony.xwork2.ActionSupport;
    
    @Action("login")
    @ParentPackage(value = "json-default")
    @Results({ @Result(name = "success", type = "json", params = { "data", "flag" }), })
    public class LoginAction extends ActionSupport {
    
        /**
         * 
         */
        private static final long serialVersionUID = 1751244794407005783L;
        private String flag;
        private String username;
        private String password;
    
        public String execute() {
            try {
                if (getUsername() == null || getUsername().trim().equals("")) {
                    setFlag("用户名不能为空");
                    return SUCCESS;
                } else if (getPassword() == null || getPassword().trim().equals("")) {
                    setFlag("密码不能为空");
                    return SUCCESS;
                } else if (getUsername().trim().equals("admin")
                        && getPassword().equals("admin")) {
                    setFlag("登陆成功");
                    return SUCCESS;
                } else {
                    setFlag("用户名或密码错误");
                    return SUCCESS;
                }
            } catch (Exception e) {
                e.printStackTrace();
                setFlag("登陆异常");
                return SUCCESS;
            }
        }
    
        public String getFlag() {
            return flag;
        }
    
        public void setFlag(String flag) {
            this.flag = flag;
        }
    
        public String getPassword() {
            return password;
        }
    
        public void setPassword(String password) {
            this.password = password;
        }
    
        public String getUsername() {
            return username;
        }
    
        public void setUsername(String username) {
            this.username = username;
        }
    
    }
    复制代码

    三、在WebRoot目录下新建index.jsp和success.jsp

    index.jsp登陆界面  success.jsp登陆成功后跳转的界面

    index.jsp内容如下

    复制代码
    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <%
        String path = request.getContextPath();
        String basePath = request.getScheme() + "://"
                + request.getServerName() + ":" + request.getServerPort()
                + path + "/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'index.jsp' starting page</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <script type="text/javascript" src="./resource/js/jquery.min.js"></script>
    </head>
    <script type="text/javascript">
        $(document).ready(function() {
            $(".loginButton").click(function() {
                var name = $("#username").val();//获取登陆用户名
                var password = $("#password").val(); //获取登陆密码
                $.post("login", {
                    username : name,
                    password : password
                }, callback, "json");
            });
    
            function callback(data) {
                var value=data.flag;
                if(value=="登陆成功"){
                location.href="./success.jsp";
                }else{
    alert(value); } }); </script> <body> <input name="username" id="username" type="text" /> <input name="password" id="password" type="password" /> <button class="loginButton" class="btn btn-inverse">登陆</button> </body> </html>
  • 相关阅读:
    高并发第八弹:J.U.C起航(java.util.concurrent)
    高并发第七弹:不可变对象及常用的工具类
    高并发第六弹:线程封闭(ThreadLocal)
    分布式爬取链家网二手房信息
    scrapy CrawlSpider爬取猎云网文章数据
    selenium实现12306网站自动抢票
    王者荣耀官方壁纸爬取
    使用 vsftpd 服务传输文件
    使用 Apache 服务部署静态网站
    iptables 与 firewalld 防火墙
  • 原文地址:https://www.cnblogs.com/felix-/p/4319793.html
Copyright © 2020-2023  润新知