Quelques requêtes de base concernant la pile de valeur dans Struts 2?
-
30-10-2019 - |
Question
Je suis nouveau dans Strut 2 bien que j'ai travaillé sur Struts 1.2. Dans l'un des fichiers JSP du projet Pexisting, j'ai le code suivant:
<script type="text/javascript">
var relationshipData = { // line1
page : '<s:property value="displayPage" />', // line2
records : '<s:property value="customerRelations.size" />', // line3
rows : [ <s:iterator value="customerRelations" status="iterStatus"> // line4
{ id : '<s:property value="relationId" />',
cell : [ '<s:property value="relationDesc" escapeJavaScript="true" />' ] } <s:if test="!#iterStatus.last">,</s:if> //line5
</s:iterator>] // line6
};
</script>
La demande arrive CustomerRelationAction.java
qui a une méthode getCustomerRelations()
et getRelationId()
.
Voici les questions: -
Je mets la méthode à l'intérieur de l'arrêt
getCustomerRelations()
.Je vois que le flux arrive quatre fois à l'intérieur de cette méthode. Deux fois à la ligne 3 et deux fois deux fois à la ligne 4. Selon ma compréhension, le flux ne devrait venir qu'une seule fois à la ligne 3. Une fois qu'il termine GetCustomErrelations à la ligne 3, ne devrait pas mettre sa valeur dans la pile de valeur afin qu'elle puisse se référer à Il est ensuite référé (comme s'il était à nouveau réaffirmé à la ligne 14)?getCustomerRelations()
la méthode renvoie la liste deCustomerRelationData
objets oùCustomerRelationData
La classe contient également legetRelationId()
Méthode.Wow à la ligne 5, nous faisons référence à valeur = "RelationId à la ligne 5. sur quel objet (CustomEntrElationAction.Java ou CustomErrelationData), GetRelationId () sera appelé? pile de valeur ou non? Si oui à quelle ligne il sera placé dans la pile de valeur?Maintenant, l'itérateur se termine à la ligne 6.Après cela, maintenant je renvoie le code
<s:property value="relationId" />
Encore une fois, sur quel objet (CustomEnterrelationAction.java ou CustomErrelationData), la méthode getRelationId () sera appelée?
Pas de solution correcte