English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
يقدم إطار Spring طريقة سهلة لإدارة الاعتماد. يمكنه التكامل بسهولة مع إطار struts 2.
ContextLoaderListener فئة تستخدم للتواصل مع تطبيق Spring 2. يجب تحديدها في ملف web.xml.
تحتاج إلى تنفيذ الخطوات التالية:
إنشاء تطبيق struts2 وأضف ملف jar لـ spring. في web.xml في ملف، تعريف فئة ContextLoaderListener. في struts.xml في ملف، تعريف اسم bean للفئة العمل. في applicationContext.xml في ملف، أنشئ Bean. يجب أن يكون اسم الفئة اسم فئة العمل (مثل com.w3codebox.Login) و id يجب أن يتطابق مع فئة العمليات في ملف struts.xml (مثل login). في فئة actionفي، تعريف الخصائص الأخرى، مثل الرسالة.
يجب عليك إنشاء الملفات التالية لتسهيل عملية التطبيق المدمج بين spring و struts 2:
index.jsp web.xml struts.xml applicationContext.xml Login.java welcome.jsp error.jsp
1)index.jsp
هذه الصفحة تأخذ الاسم من المستخدم.
<%@ taglib uri="/struts-tags" prefix="s"%> <s:form action="login"> <s:textfield name="userName" label="UserName"></s:textfield> <s:submit></s:submit> </s:form>
2)web.xml
هي لـ struts 2 و ContextLoaderListener مستمع الفئة يعرف الفئة التحكمية لإنشاء اتصال بين struts2 و spring التطبيقات.
<?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>
3)struts.xml
يحدد حزمة تحتوي على عمليات وأجهزة النتائج. هنا، اسم فئة العمل هو 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">welcome.jsp</result> </action> </package> </struts>
4)applicationContext.xml
يحدد بيانًا يحتوي على اسم تسجيل الدخول كـ ID. هذا البيان يتطابق مع فئة mypack.Login.
يتجب أن يكون موجودًا في مجلد WEB-INF.
<?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-2.5.xsd"> <bean id="login" class="mypack.Login"> <property name="message" value="Welcome Spring"></property> </bean> </beans>
5)Login.java
يحددان اثنين من الخاصياتuserName وmessage مع طريقة execute التي تعود بنجاح.
package mypack; public class Login { private String userName,message; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String execute(){ return "success"; } }
6)welcome.jsp
يظهرuserName وقيمة الخاصية message.
<%@ taglib uri="/struts-tags" prefix="s"%> مرحبًا، <s:property value="userName"/><br/> ${message}
7)error.jsp
هذه هي صفحة الخطأ. ولكن هذا ليس ضروري لأننا لم نحدد أي منطق في طريقة execute في فئة العمل.
آسف!
الإخراج