一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語言 - JAVA教程 - Java struts2 validate用戶登錄校驗(yàn)功能實(shí)現(xiàn)

Java struts2 validate用戶登錄校驗(yàn)功能實(shí)現(xiàn)

2020-04-30 09:48Tikitoo JAVA教程

這篇文章主要為大家詳細(xì)介紹了Java struts2 validate用戶登錄校驗(yàn)功能實(shí)現(xiàn)的具體步驟,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

首先貼一下搭配的環(huán)境:

配置:
Eclipse4.3.2
jdk1.7_45
Mysql 5.0+

然后切入正題:
1、login.jsp
主要是使用OGNL 標(biāo)簽 也可使用html form表單,調(diào)用LoginAction.action,以post 方式傳輸。
在LoginaAction 經(jīng)過判斷,然后會(huì)有提示信息,需要用到 <s:fielderror/>來顯示。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>登錄</title>
</head>
<body>
 <center>
  請(qǐng)登錄
  <!--
   this.addActionError( "用戶名或密碼不正確!");
   Action 中設(shè)置的顯示信息
   要在html 中引用 OGNL 表達(dá)式
   -->
  <s:actionerror/>
  <%-- <s:fielderror/>
   --%>
  <s:form action="LoginAction.action" method="post">
   <s:label value="用戶名:" />
   <s:textfield name="userName" />
   <br />
   <s:label value="密碼" />
   <s:textfield name="userPwd" />
   <br />
   <s:submit value="登錄" />
  </s:form>
 </center>
</body>

Java struts2 validate用戶登錄校驗(yàn)功能實(shí)現(xiàn)

2、struts.xml
配置
命名空間為“/”,繼承”struts-default“
登錄成功,則跳轉(zhuǎn)到index.jsp
登錄失敗,則返回login.jsp

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<pre name="code" class="html"><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
 "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
 <!-- 默認(rèn) 使用 Struts2 OGNL 標(biāo)簽,Struts2 會(huì)經(jīng)過處理 會(huì)是更加格式化,如果不行引用可以添加此屬性 -->
 <constant name="struts.ui.theme" value="simple" />
  
 <package name="default" namespace="/" extends="struts-default">
  <action name="LoginAction" class="com.tikitoo.action.LoginAction">
   <result name="success">/index.jsp</result>
   <result name="input">/login.jsp</result>
  </action>
 </package>
</struts>

3、LoginAction.java
LoginAction
繼承 ActionSupport 方法
重寫 execute()  和 validate() 方法:
execute 方法調(diào)用從后臺(tái)調(diào)用的數(shù)據(jù)庫調(diào)用的值
validate 方法用于判斷 用戶名 和 密碼輸入是否為空,并提示
注意:this.addActionError();方法的在login.jsp中調(diào)用<s:fielderror/> 即可調(diào)用,即可將設(shè)置的信息<s:fielderror/>默認(rèn)可以直接調(diào)用,不用設(shè)置,除非在strtus.xml 中設(shè)置<constant name="struts.ui.theme" value="simple" /> 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
package com.tikitoo.action;
 
import com.opensymphony.xwork2.ActionSupport;
import com.tikitoo.service.UserInfoService;
import com.tikitoo.service.UserInfoServiceImpl;
/**
 * @author Tikitoo1
 * @see  com.opensymphony.xwork2.ActionSupport
 * @see  com.opensymphony.xwork2.ActionSupport
 *
 */
public class LoginAction extends ActionSupport {
  
 private static final long serialVersionUID = -4760561602154545441L;
 /**
  * Struts2 默認(rèn)調(diào)用方法
  * @return Struts2 result 返回值
  */
 @Override
 public String execute() throws Exception {
   
  UserInfoService userInfoService = new UserInfoServiceImpl();
  boolean flag = userInfoService.loginByUserNameAndUserPwd( userName, userPwd);
   
  String msg = "";
   
   
  if ( flag == true) {
   this.addFieldError( "true", "登錄成功");
   msg = "success";
  } else {
   this.addFieldnError( "用戶名或密碼不正確!");
   msg = "input";
  }
  return msg;
 }// execute() end
  
 /**
  * 登錄驗(yàn)證
  * 重寫 ActionSupport 方法
  */
 @Override
 public void validate() {
  // 判斷 用戶名 是否為空
  if ( getUserName() == null || "".equals( getUserName().trim() ) ) {
   this.addFieldError( "userName", "用戶名不能為空");
    
  }
   
  // 判斷密碼是否為空
  if ( getUserPwd() == null || "".equals( getUserPwd().trim() )) {
   this.addFieldError("userPwd", "密碼不能為空");
  }
   
   
 }// validate() end
  
 private String tip;
 public String getTip() {
  return tip;
 }
 
 private String userName;
 private String userPwd;
 
 public String getUserName() {
  return userName;
 }
 public void setUserName(String userName) {
  this.userName = userName;
 }
 public String getUserPwd() {
  return userPwd;
 }
 public void setUserPwd(String userPwd) {
  this.userPwd = userPwd;
 
}

用戶名密碼輸入不正確:

Java struts2 validate用戶登錄校驗(yàn)功能實(shí)現(xiàn)

用戶名輸入正確,則登錄成功:

Java struts2 validate用戶登錄校驗(yàn)功能實(shí)現(xiàn)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 添逼逼视频 | 男男18视频免费网站 | 日本久本草精品 | 成人一级黄色大片 | 欧洲一级 | 91精品国产免费久久国语蜜臀 | 色老板在线免费观看 | 国产3p绿奴在线视频 | 国内精品久久久久久不卡影院 | 天天做天天爱天天一爽一毛片 | 蛮荒的童话未删减在线观看 | 91热国内精品永久免费观看 | 亚洲欧美综合区自拍另类 | 国产一卡2卡3卡四卡国色天香 | 亚洲国产精品久久网午夜 | 暴露狂婷婷 | 香蕉久久一区二区三区啪啪 | brazzers办公室| 香蕉久久一区二区三区啪啪 | 国产靠逼视频 | 2021精品国夜夜天天拍拍 | 国产成人精视频在线观看免费 | 国产一区二区三区毛片 | 日出水了特别黄的视频 | 欧美在线视频一区 | 91精品乱码一区二区三区 | 99久久精品国产综合一区 | 高h辣h双处全是肉军婚 | 国产成人精品免费2021 | 日本免费不卡在线一区二区三区 | naruto堂同人本子汉化gg | 久久99精品国产免费观看 | tobu8在线观看免费高清 | 亚洲精品视频一区 | 国产99精品免费视频看6 | 日本激情网站 | 视频一区二区三区在线 | 美女女女女女女bbbbbb毛片 | 免费视频精品一区二区 | 国产精品 色 | 日本无翼乌漫画 |