Во -первых, давайте опубликуем соответствующую среду:
Конфигурация:
Eclipse4.3.2
JDK1.7_45
MySQL 5.0+
Тогда доберитесь до точки:
1. Вход
В основном, вы можете использовать тег OGNL или использовать форму формы HTML, чтобы вызовать логинзацию и передавать его в посте.
После суждения в LoginaAction будет представлено быстрое сообщение, которое необходимо отобразить с помощью <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> <html> <html> <html> <html> <html> http-equiv = "content-type" content = "text/html; charset = utf-8"> <title> login </title> </head> <body> <center> Пожалуйста, войдите в систему <!-this.addactionError ("Имя пользователя или пароль неверно!"); Действие. Информация о отображении, установленная в HTML, должна ссылаться на выражение ognl-> <S: ActionError /> <%-<S: Fielderror />-%> <S: Form Action = "loginAction.Action" Method = "> <S: Значение метки =" userName: " /> <S: Textfield name =" onsername " /> <br /> <s: label value =" value = "value =" value = "strablire" /> " name = "userpwd" /> <br /> <s: отправить значение = "loginaction" /> < /s: форма> < /center> < /body> 2. struts.xml
Конфигурация <br /> Пространство имен-« /», наследуя "Dreats-Default"
Вход успешно, перейдите к index.jsp
Вход не удастся, вход в систему. JSP будет возвращен
<pre name = "code"> <? xml version = "1.0" Encoding = "UTF-8"?> <! Doctype Struts Public "-// Apache Software Foundation // Configuration struts 2.3 // en" "http://struts.apache.org/dtds/3.d.dtd"> <struts> <struts> <struts> <! по умолчанию. Struts2 будет обработан и будет более отформатирован. Если вы не ссылаетесь на это, вы можете добавить это свойство-> <constant name = "struts.ui.teme" value = "simple"/> <name = "default" namespace = "/" extends = "struts-default"> <name = "gouginaction"> <result name = "успех">/index.jsp </result> <sult> name = "input">/resultIn. </struts>
3. loginaction.java
Логин
Унаследовать метод действий и переопределить методы exepute () и validate ():
выполнить метод вызовите значение базы данных, вызываемой из фона
Метод Validate используется для определения того, пустым ли имя пользователя и ввод пароля, и напомнить вам, что метод вызывается в login.jsp. Вы можете позвонить в настройку информации напрямую по умолчанию, не настраивая ее, если вы не установите ее на strtus.xml.
пакет com.tikitoo.action; Import Com.OpensyMphony.xwork2.ActionsUpport; импорт com.tikitoo.service.userinfoservice; импорт com.tikitoo.service.userinfoserviceimpl; / ** * @author tikitoo1 * @see com.opensymphony.xwork2.actionsupport * @see com.opensymphony.xwork2 / *** СТРУД2 Метод вызова по умолчанию* @return struts2 Результат возвращаемый значение*/ @override public String execute () Throws Exception {userInfoService userInfoService = new userInfoServiceImpl (); Boolean Flag = userInfoService.loginbyusernameandduserpwd (имя пользователя, userpwd); String msg = ""; if (flag == true) {this.addfielderror ("true", "login успешно"); msg = "успех"; } else {this.addfieldnerror ("Имя пользователя или пароль неверно!"); msg = "input"; } вернуть MSG; } // execute () end/ *** Verification* rewrite actionsupport метод*/ @@override public void validate () {// определить, является ли имя пользователя пустым, если (getusername () == null || ".. equals (getusername (). trim ()) {this.addfielderror (" username ", username"); } // Определите, является ли пароль пустым if (getUserpwd () == null || "" .equals (getUserpwd (). Trim ())) {this.addfielderror ("userpwd", "пароль не может быть пустым"); }} // validate () end частная строка 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; }}Имя пользователя и пароль введены неправильно:
Если имя пользователя введено правильно, логин будет успешным:
Выше приведено в этой статье, я надеюсь, что это будет полезно для каждого обучения.