struts 2+jquery ajax 로그 인 사례 상세 설명
1.웹 항목 을 새로 만 들 고 test 라 는 이름 을 지 었 습 니 다.struts 2 환경 을 설정 하고 Jquery 의 js 파일 을 이 항목 으로 가 져 옵 니 다.
2.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;
}
}
3.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>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
apache struts2 취약점 검증이번에는 보안 캠프의 과제였던 apache struts2의 취약성에 대해 실제로 손을 움직여 실행해 보고 싶습니다. 환경 VirtualBox에서 브리지 어댑터 사용 호스트:macOS 10.12 게스트:ubuntu 1...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.