ejemplos - Cómo subcadenas en jsp?
jsp ejemplos (5)
¿Hay alguna manera de subscribir en archivos JSP, utilizando tecnologías struts2? Quiero decir, struts2 tiene su propio taglib y también usa ognl. ¿Cómo puedo obtener una subcadena de un valor apilado o de un bean?
http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/index.html
Busque fn: subcadena y sus variantes.
He usado Struts 1, pero no 2.
¡Tenga cuidado con la biblioteca de funciones en ciertas situaciones, especialmente cuando usa Websphere para implementar! La empresa para la que trabajo se implementa en Websphere 6.0 versión 11, que no admite la biblioteca de funciones correctamente (no funciona correctamente cuando se coloca dentro de un cuerpo de etiqueta). Recuerdo que en algún lugar lo arreglaron en la versión 13. Sin embargo, siempre puedes crear tu propia etiqueta JSP para hacer cualquier cosa, así que puedes hacer eso para evitar el problema.
No lo hagas
Si necesita analizar datos (subcadena) en su JSP, entonces probablemente esté mezclando la lógica de negocios (cómo funciona) con su lógica de presentación (cómo se muestra); deben estar separados. Si está haciendo muchos condicionales, cálculos, análisis sintácticos, etc. en sus JSP, entonces está creando mucho dolor (futuro) para usted.
En su lugar, separe esas preocupaciones: haga que el JSP sea simple, sin más lógica que visualizar los datos como están o no, más bucles simples donde sea necesario. Coloque toda la lógica no trivial en una clase Java que empuje los datos al JSP, donde tendrá toda la potencia de Java disponible. Tanto como pueda, haga que los JSP sean simplemente una "máscara" delgada sobre su aplicación basada en Java.
Para una discusión detallada, vea el libro blanco de Terence Parr en http://www.cs.usfca.edu/~parrt/papers/mvc.templates.pdf . Ahórrese muchos dolores de cabeza y mantenimiento.
Struts2 usa OGNL . Eso significa que puede llamar a métodos de objetos directamente en etiquetas S2.
Al igual que:
<s:property value="str.substring(0, 5)"/>
fn:substring(YOUR_FIELD, START_INDEX, END_INDEX)
por ejemplo, si desea obtener los primeros 3 caracteres de una cadena, puede hacer esto:
${fn:substring(''scrooge'', -1, 3)}
aquí está el espacio de nombres XML que puede usar, debe ser la misma dirección para una declaración <% include%>
xmlns:fn="http://java.sun.com/jsp/jstl/functions"