English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Le cadre Spring fournit une méthode simple pour gérer les dépendances. Il peut facilement être intégré avec struts 2integrated.
ContextLoaderListener La classe est utilisée pour intégrer le cadre Struts 2Communiquer avec l'application Spring. Il doit être spécifié dans le fichier web.xml.
Vous devez suivre les étapes suivantes:
Créez struts2Ajoutez le fichier jar Spring à l'application. dans web.xml dans le fichier, définissez la classe ContextLoaderListener. dans struts.xml dans le fichier, définissez le nom du bean pour la classe d'action. dans applicationContext.xml dans le fichier, créez un Bean. Le nom de la classe doit être le nom de la classe d'action, par exemple com.w3codebox.Login et id doivent correspondre à la classe d'action de struts.xml (par exemple login). dans Classe d'actiondans lequel d'autres attributs tels que les messages sont définis.
Vous devez créer les fichiers suivants pour simplifier l'intégration Spring and Struts 2Application:
index.jsp web.xml struts.xml applicationContext.xml Login.java welcome.jsp error.jsp
1)index.jsp
Cette page récupère le nom de l'utilisateur de l'utilisateur.
<%@ 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
elle définit des attributs pour struts 2et ContextLoaderListener La classe d'écouteur définit la classe de contrôleur pour exécuter des actions dans struts2etablir une connexion entre l'application Spring et l'application 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
Il définit un paquet contenant des opérations et des résultats. Ici, le nom de la classe d'action est login, qui sera recherché dans le fichier applicationContext.xml.
<?xml version="1.0" encoding="UTF-8" ?> !DOCTYPE struts public "-//Apache Software Foundation//DTD Configuration Struts 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
Il définit un bean ayant pour ID le nom de connexion. Ce bean correspond à la classe mypack.Login.
Il devrait être situé dans WEB-dans le répertoire 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="Bienvenue Spring"></property> </bean> </beans>
5)Login.java
Il définit deux attributs userName et un message avec la méthode execute, qui retourne succès.
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
Il affiche les valeurs des attributs userName et message.
<%@ taglib uri="/struts-tags" prefix="s"%> Bienvenue, <s:property value="userName"/><br/> ${message}
7)error.jsp
Ceci est une page d'erreur. Mais ce n'est pas nécessaire, car nous n'avons pas défini de logique dans la méthode execute de la classe d'action.
Désolé !
Sortie