کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش سیستم لاگین در Spring

مثال login

مثال برنامه ورود(login application) ادغام Spring و struts2

برای یک برنامه ورود ساده با استفاده از Spring و struts2 فایل های زیر را باید ایجاد کنید :

  1. index.jsp
  2. web.xml
  3. struts.xml
  4. applicationContext.xml
  5. Login.java
  6. login_success.jsp
  7. login_error.jsp

index.jsp :

این صفحه نام و رمز عبور را از کاربر می گیرد.

<%@ taglib uri="/struts-tags" prefix="s"%>  
  
< s:form action="login">  
< s:textfield name="name" label="Username">< /s:textfield>  
< s:password name="password" label="Password">< /s:password>  
< s:submit value="login">< /s:submit>  
< /s:form>  

web.xml :

کلاس کنترلر برای struts2 و کلاس شنونده ContextLoaderListener برای ایجاد ارتباط بین برنامه Spring و struts2 را تعریف می کند.

< ?xml version="1.0" encoding="UTF-8" ?>
  
< web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
   < welcome-file-list>  
      < welcome-file>index.jsp< /welcome-file>  
   < /welcome-file-list>  
   < filter>  
      < filter-name>struts2< /filter-name>  
      < filter-class>  
           org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  
      < /filter-class>  
   < /filter>  
     
< listener>   
< listener-class>org.springframework.web.context.ContextLoaderListener< /listener-class>   
< /listener>   
    
  < filter-mapping>  
     < filter-name>struts2< /filter-name>  
     < url-pattern>/*< /url-pattern>  
  < /filter-mapping>  
    
  < /web-app>  

struts.xml :

پکیج را با action و result تعریف می کند. در اینجا، نام کلاس action ، login است که در فایل applicationContext.xml مورد جستجو واقع می شود.

< ?xml version="1.0" encoding="UTF-8" ?>
  
< !DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd">
  
< struts>  
< package name="abc" extends="struts-default">  
< action name="login" class="login">  
< result name="success">login_success.jsp< /result>  
< result name="error">login_error.jsp< /result>  
< /action>  
   
< /package>  
   
< /struts> 

applicationContext.xml :

یک bean با شناسه ورود تعریف می کند. این bean ها با کلاس com.javatpoint.Login مطابقت دارد. در اینجا به عنوان کلاس action در نظر گرفته می شود.

< ?xml version="1.0" encoding="UTF-8" ?>
  
< beans 
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">  
  
< bean id="login" class="com.javatpoint.Login">  
< property name="successmessage" value="You are successfully logged in!">< /property>  
< property name="errormessage" value="Sorry, username or password error!">< /property>  
< /bean>  
   
< /beans>  

Login.java :

چهار خصیصه نام، رمز عبور، پیام موفقیت(successmessage) و پیام خطا(errormessage) را به همراه متد execute که در شرایطی که رمز عبور javatpoint باشد، success را باز میگرداند، تعریف می کند :

package com.javatpoint;  
  
public class Login {  
private String name,password,successmessage,errormessage;  
//setters and getters  
  
public String execute(){  
    if(password.equals("javatpoint")){  
        return "success";  
    }  
    else{  
        return "error";  
    }  
}  
}

login_success.jsp :

مقادیر خصیصه های نام کاربری و پیام را چاپ می کند.

<%@ taglib uri="/struts-tags" prefix="s"%>  
${successmessage}  
< br />

Welcome, < s:property value="name" />< br />

login_error.jsp :

صفحه خطا است. اما در این مثال مورد نیاز نیست زیرا هیچ منطقی(logic) را در متد execute از کلاس action تعریف نمی کنیم.

${errormessage}  
< jsp:include page="index.jsp">< /jsp:include>  

1399/01/27 1821 611
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...