Red de conocimiento del abogados - Preguntas y respuestas jurídicas - La diferencia entre directiva de inclusión y acción de inclusión en JSP

La diferencia entre directiva de inclusión y acción de inclusión en JSP

La directiva de inclusión es una directiva en la fase de compilación, es decir, el contenido del archivo incluido en la inclusión se inserta en el archivo JSP durante la compilación. El motor JSP determina que la página JSP no ha sido. modificado, en caso contrario se considerará modificado. Dado que los archivos incluidos se insertan durante la compilación, si solo modifica el contenido del archivo incluido sin modificar el JSP, la estructura resultante no cambiará, por lo que el archivo de código de bytes existente se ejecutará directamente sin volver a compilar. Por lo tanto, para el contenido que no cambia con frecuencia, es apropiado utilizar la directiva include. Si el contenido requerido cambia con frecuencia, el elemento de acción lt;jsp:includegt se distinguirá a continuación.

1.include. La directiva

include puede insertar código JSP en la página JSP antes de convertirla en un servlet. Su principal ventaja es que es potente y el código que contiene puede contener construcciones JSP que generalmente afectan a la página principal, como la definición de propiedades, métodos y la configuración de tipos de documentos.

Su desventaja es que es difícil de mantener. Mientras las páginas incluidas cambien, se debe cambiar la página principal. Esto se debe a que la página principal no verificará automáticamente si las páginas incluidas han cambiado.

Sintaxis:

1

lt; @include file="sample.jsp" gt;

2.incluir acción

p>

jsp: La acción de inclusión es incluir la salida de la página secundaria cuando se solicita la página principal. Aunque la salida de las páginas incluidas no puede contener JSP, estas páginas pueden ser el resultado de otros recursos. El servidor interpreta la URL que apunta al recurso contenido de forma normal, por lo que la URL puede ser un servlet o una página JSP.

El servidor ejecuta la página incluida de la forma habitual y coloca el resultado resultante en la página principal, de forma coherente con el método de inclusión de la clase RequestDispatcher. Su ventaja es que cuando cambian las páginas incluidas, no es necesario modificar la página principal. Su desventaja es que lo que se incluye es la salida de la página secundaria, no el código real de la página secundaria, por lo que cualquier construcción JSP que pueda afectar a la página principal en su conjunto no se puede utilizar en la página incluida.

Sintaxis:

lt; jsp: incluir página="sample.jsp" flux="true"gt

lt; name" value="value"/gt;

lt;/jsp:includegt;

No puede haber ninguna configuración de parámetros. Si no hay ninguna configuración de parámetros, lt;jsp:include debe usarse. page="sample.jsp" flux="true"/gt; form

3. ¿Usar acción de inclusión o directiva de inclusión?

Usando la directiva include, si el archivo incluido cambia, entonces todas las páginas Jsp que lo usan deben actualizarse.

Debemos utilizar la directiva include sólo cuando la acción include no pueda cumplir los requisitos.

Algunos desarrolladores creen que el código generado por la directiva de inclusión se ejecuta más rápido que el código que utiliza la acción de inclusión. Aunque esto puede ser cierto en principio, la diferencia en el rendimiento es tan pequeña que es difícil de medir. Al mismo tiempo, las ventajas de mantenimiento de la acción de inclusión son tan grandes que cuando se pueden utilizar ambos métodos, la acción de inclusión casi lo es. sin duda el método preferido.

Para la inclusión de archivos, se debe utilizar la acción de inclusión siempre que sea posible.

La directiva de inclusión solo debe usarse cuando los campos o métodos que usará la página principal están definidos en el archivo incluido, o cuando el archivo incluido establece el encabezado de respuesta de la página principal.

Dado que la directiva include produce código que es difícil de mantener, ¿por qué la gente todavía la usa?

Porque la directiva include es más poderosa. La directiva de inclusión permite que los archivos incluidos contengan código Jsp que afecta a la página principal, como la configuración del encabezado de respuesta y las definiciones de campos y métodos.

Ejemplo: //subpage.jsp

lt;! int num=0; gt;

//mainpage.jsplt;htmlgt;

lt; cuerpogt;

lt; @ incluir archivo="subpage.jsp" gt;

lt; = num gt; bodygt;lt;

/htmlgt;

Por supuesto, esto no es posible cuando se utiliza la acción de inclusión, porque la variable num no está definida y la página principal no se puede convertir correctamente en una servlet.