Tout d'abord, publions l'environnement correspondant:
Configuration:
Eclipse4.3.2
JDK1.7_45
Mysql 5.0+
Ensuite, arrivez au point:
1. Login.jsp
Principalement, vous pouvez utiliser la balise OGNL ou utiliser le formulaire HTML pour appeler LoginAction.action et le transmettre dans le post.
Après le jugement dans Loginaaction, il y aura un message rapide, qui doit être affiché en utilisant <S: Fielderror />.
<% @ 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> http-equiv = "content-type" content = "text / html; charset = utf-8"> <tight> Login </ title> </ head> <body> <enter> Veuillez vous connecter <! - this.adDactionError ("username ou mot de passe est incorrect!"); Action L'information d'affichage définie dans le HTML doit référencer l'expression OGNL -> <S: ActionError /> <% - <S: Fielderror /> -%> <S: Form Action = "Loginaction.action" Methode = "Post"> <S: Label Value = "UserName:" /> <S: TextField Name = "TextField" name = "userpwd" /> <br /> <s: soumettre value = "loginaction" /> </ s: form> </ centr> </ body> 2. struts.xml
Configuration <br /> L'espace de noms est "/", hériter "Struts-default"
Connectez-vous avec succès, passez à index.jsp
Login a échoué, Login.jsp sera renvoyé
<pré-nom = "code"> <? xml version = "1.0" Encoding = "UTF-8"?> <! Doctype Struts public "- // APCACH SOFFACE Foundation // Dtd Struts Configuration 2.3 // en" "http://strut.apache.org/dtds/strut-2.3.dtd"> <Struts> défaut. Struts2 sera traité et sera plus formaté. Si vous ne vous y référez pas, vous pouvez ajouter cette propriété -> <constante name = "strut.ui.theme" value = "Simple" /> <package name = "Default" namespace = "/" allsends = "struts-default"> <action name = "loginaction"> <résultat name = "Success"> / index. </rutts>
3. Loginaction.java
Connexion
Hériter de la méthode ActionSupport et remplacer les méthodes EXECUTE () et valider ():
Exécuter la méthode Appelez la valeur de la base de données appelée à partir de l'arrière-plan
La méthode Validate est utilisée pour déterminer si l'entrée du nom d'utilisateur et du mot de passe est vide et vous rappelle que la méthode est appelée dans login.jsp. Vous pouvez appeler directement les informations de réglage par défaut sans les définir, sauf si vous les définissez dans strtus.xml.
package com.tikitoo.action; Importer com.opensymphony.xwork2.actionsupport; Importer com.tikitoo.service.UserInfoservice; Importer com.tikitoo.service.UserInfoserviceImpl; / ** * @author tikitoo1 * @see com.opensymphony.xwork2.actsupport * @see com.opensymphony.xwork2.actionSupport * * / public class Loginaction étend Actionupport {private static final SerialversionUid = -4760561602154545441l; / ** * Struts2 Méthode d'appel par défaut * @return Struts2 Résultat Valeur de retour * / @Override public String EXECUTE () lève exception {userInfoService userInfoService = new UserInfoserviceImpll (); booléen flag = userInfoService.loginByUserNameAndUserPwd (nom d'utilisateur, userPwd); String msg = ""; if (flag == true) {this.addFielDerror ("true", "connecter avec succès"); msg = "succès"; } else {this.addfieldnerror ("nom d'utilisateur ou mot de passe est incorrect!"); msg = "entrée"; } return msg; } // EXECUTE () end / ** * Vérification de connexion * Réécriture de la méthode ActionSupport * / @Override public void validate () {// Déterminez si le nom d'utilisateur est vide if (getUsername () == null || ".equals (getUsername (). Trim ()) {this.addFielDerror (" userName "," Username ne peut pas être vide "); } // Déterminez si le mot de passe est vide if (getuserPwd () == null || "" .equals (getuserPwd (). Trim ())) {this.addFielDerror ("userPwd", "le mot de passe ne peut pas être vide"); }} // validate () finit la chaîne privée; String public gettip () {return tip; } Nom d'utilisateur de chaîne privée; chaîne privée 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; }}Le nom d'utilisateur et le mot de passe sont incorrectement saisis:
Si le nom d'utilisateur est entré correctement, la connexion réussira:
Ce qui précède concerne cet article, j'espère qu'il sera utile à l'apprentissage de tout le monde.