加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

struts2+jquery实现ajax登陆实例详解

发布时间:2020-12-14 23:14:48 所属栏目:资源 来源:网络整理
导读:文本仪一个实例讲述了struts2+jquery实现ajax登陆的实现方法,具体步骤如下: 一、新建一个web项目,取名test。配置好struts2的环境,并导入Jquery的js文件到该项目。 二、在com.action包下,新建一个loginAction.java loginAction.java的代码如下 package co

文本仪一个实例讲述了struts2+jquery实现ajax登陆的实现方法,具体步骤如下:

一、新建一个web项目,取名test。配置好struts2的环境,并导入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%>" rel="external nofollow" >

<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" rel="external nofollow" ;
      }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>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读