Struts2是優秀的MVC框架,結合Ajax,用戶會有很好的體驗。今天錯新技術頻道小編將模擬一個簡單的登錄操作來實現Ajax異步請求,本文是錯新技術頻道小編為大家搜集的詳解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>
好啦,以上就是錯新技術頻道小編給大家分享的詳解struts2+jquery實現ajax登陸實例的相關內容,我們按以上步驟完成操作后,就可以實現了。?
新聞熱點
疑難解答