Diferencia entre revisiones de «Jawr»
De Dos Ideas.
(Página creada con 'JAWR: Empaquetado y compresión de JS y CSS Jawr es una solución de empaquetado para Javascript y CSS, que permite un rápido desarrollo de los recursos en módulos separados.…') |
|||
(No se muestran 2 ediciones intermedias de otro usuario) | |||
Línea 1: | Línea 1: | ||
− | + | [[Jawr]] es una solución de empaquetado para Javascript y CSS, que permite un rápido desarrollo de los recursos en módulos separados. | |
− | |||
Mediante el uso de una biblioteca de etiquetas, Jawr permite el uso de las mismas páginas, sin cambios para el desarrollo y la producción. Jawr también minimiza y comprime los archivos, lo que resulta en una reducción de los tiempos de carga. | Mediante el uso de una biblioteca de etiquetas, Jawr permite el uso de las mismas páginas, sin cambios para el desarrollo y la producción. Jawr también minimiza y comprime los archivos, lo que resulta en una reducción de los tiempos de carga. | ||
Jawr se configura mediante un archivo de properties. | Jawr se configura mediante un archivo de properties. | ||
+ | == Características == | ||
+ | Entre otras cosas, [[Jawr]] permite: | ||
+ | * crear "bundles" de varios archivos [[JavaScript]] o [[CSS]]. Es decir, agrupar muchos archivos en uno único. | ||
+ | * minificar archivos [[JavaScript]] o [[CSS]], quitando espacios, comentarios y otras técnicas para minimizar el tamaño. | ||
+ | * comprimir los archivos usando gzip y enviar el resultado comprimido al navegador. | ||
+ | * leer automáticamente los archivos de un directorio (y subdirectorios), sin necesidad de especificar manualmente cada archivo. | ||
+ | * crear sprites de múltiples imágenes y compactarlas en una única imágen. | ||
+ | |||
+ | == Ejemplo == | ||
+ | |||
+ | A continuación se muestra la esencia de jawr | ||
[[Archivo:jawr.png]] | [[Archivo:jawr.png]] | ||
+ | |||
+ | ejemplo de jawr.properties | ||
+ | # Common properties | ||
+ | jawr.debug.on=false | ||
+ | jawr.gzip.on=false | ||
+ | jawr.gzip.ie6.on=false | ||
+ | jawr.charset.name=UTF-8 | ||
+ | |||
+ | # Javascript properties and mappings | ||
+ | jawr.js.bundle.basedir=/js | ||
+ | |||
+ | # All files within /js/lib will be together in a bundle. | ||
+ | # The remaining scripts will be served sepparately. | ||
+ | jawr.js.bundle.jquery.id=/jquery.js | ||
+ | jawr.js.bundle.jquery.mappings=/js/jquery/** | ||
+ | |||
+ | jawr.js.bundle.jquery-json.id=/jquery-json.js | ||
+ | jawr.js.bundle.jquery-json.mappings=/js/jquery-json/** | ||
+ | |||
+ | # The /bundles/lib.js bundle is global | ||
+ | # (always imported before other scripts to pages using the taglib) | ||
+ | jawr.js.bundle.lib.global=true | ||
+ | |||
+ | |||
+ | # CSS properties and mappings | ||
+ | jawr.css.bundle.basedir=/css | ||
+ | |||
+ | # CSS files will be all bundled together automatically | ||
+ | jawr.css.factory.use.singlebundle=true | ||
+ | jawr.css.factory.singlebundle.bundlename=/default.css | ||
+ | |||
+ | |||
+ | |||
+ | web.xml | ||
+ | <servlet> | ||
+ | <servlet-name>JavascriptServlet</servlet-name> | ||
+ | <servlet-class>net.jawr.web.servlet.JawrServlet</servlet-class> | ||
+ | |||
+ | <!-- Location in classpath of the config file --> | ||
+ | <init-param> | ||
+ | <param-name>configLocation</param-name> | ||
+ | <param-value>/jawr.properties</param-value> | ||
+ | </init-param> | ||
+ | <load-on-startup>1</load-on-startup> | ||
+ | </servlet> | ||
+ | |||
+ | <servlet> | ||
+ | <servlet-name>CSSServlet</servlet-name> | ||
+ | <servlet-class>net.jawr.web.servlet.JawrServlet</servlet-class> | ||
+ | |||
+ | <!-- Location in classpath of the config file --> | ||
+ | <init-param> | ||
+ | <param-name>configLocation</param-name> | ||
+ | <param-value>/jawr.properties</param-value> | ||
+ | </init-param> | ||
+ | <init-param> | ||
+ | <param-name>type</param-name> | ||
+ | <param-value>css</param-value> | ||
+ | </init-param> | ||
+ | <load-on-startup>1</load-on-startup> | ||
+ | </servlet> | ||
+ | |||
+ | <servlet-mapping> | ||
+ | <servlet-name>JavascriptServlet</servlet-name> | ||
+ | <url-pattern>*.js</url-pattern> | ||
+ | </servlet-mapping> | ||
+ | |||
+ | <servlet-mapping> | ||
+ | <servlet-name>CSSServlet</servlet-name> | ||
+ | <url-pattern>*.css</url-pattern> | ||
+ | </servlet-mapping> | ||
+ | |||
+ | |||
+ | ejemplo de un jsp | ||
+ | <%@ taglib uri="http://jawr.net/tags" prefix="jwr"%> | ||
+ | <%@ page contentType="text/html;charset=UTF-8"%> | ||
+ | <html> | ||
+ | <head> | ||
+ | <jwr:script src="/jquery.js" /> | ||
+ | <jwr:script src="/jquery-json.js" /> | ||
+ | <jwr:style src="/default.css" /> | ||
+ | </head> | ||
+ | <body> | ||
+ | |||
+ | <h 2>Hello World!</h 2> | ||
+ | </body> | ||
+ | </html> | ||
+ | |||
+ | == Ver también == | ||
+ | * [http://jawr.java.net/ Web oficial de Jawr] |
Revisión actual del 12:18 23 feb 2012
Jawr es una solución de empaquetado para Javascript y CSS, que permite un rápido desarrollo de los recursos en módulos separados.
Mediante el uso de una biblioteca de etiquetas, Jawr permite el uso de las mismas páginas, sin cambios para el desarrollo y la producción. Jawr también minimiza y comprime los archivos, lo que resulta en una reducción de los tiempos de carga. Jawr se configura mediante un archivo de properties.
Características
Entre otras cosas, Jawr permite:
- crear "bundles" de varios archivos JavaScript o CSS. Es decir, agrupar muchos archivos en uno único.
- minificar archivos JavaScript o CSS, quitando espacios, comentarios y otras técnicas para minimizar el tamaño.
- comprimir los archivos usando gzip y enviar el resultado comprimido al navegador.
- leer automáticamente los archivos de un directorio (y subdirectorios), sin necesidad de especificar manualmente cada archivo.
- crear sprites de múltiples imágenes y compactarlas en una única imágen.
Ejemplo
A continuación se muestra la esencia de jawr
ejemplo de jawr.properties
# Common properties jawr.debug.on=false jawr.gzip.on=false jawr.gzip.ie6.on=false jawr.charset.name=UTF-8 # Javascript properties and mappings jawr.js.bundle.basedir=/js # All files within /js/lib will be together in a bundle. # The remaining scripts will be served sepparately. jawr.js.bundle.jquery.id=/jquery.js jawr.js.bundle.jquery.mappings=/js/jquery/** jawr.js.bundle.jquery-json.id=/jquery-json.js jawr.js.bundle.jquery-json.mappings=/js/jquery-json/** # The /bundles/lib.js bundle is global # (always imported before other scripts to pages using the taglib) jawr.js.bundle.lib.global=true # CSS properties and mappings jawr.css.bundle.basedir=/css # CSS files will be all bundled together automatically jawr.css.factory.use.singlebundle=true jawr.css.factory.singlebundle.bundlename=/default.css
web.xml
<servlet> <servlet-name>JavascriptServlet</servlet-name> <servlet-class>net.jawr.web.servlet.JawrServlet</servlet-class> <init-param> <param-name>configLocation</param-name> <param-value>/jawr.properties</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>CSSServlet</servlet-name> <servlet-class>net.jawr.web.servlet.JawrServlet</servlet-class> <init-param> <param-name>configLocation</param-name> <param-value>/jawr.properties</param-value> </init-param> <init-param> <param-name>type</param-name> <param-value>css</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>JavascriptServlet</servlet-name> <url-pattern>*.js</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>CSSServlet</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping>
ejemplo de un jsp
<%@ taglib uri="http://jawr.net/tags" prefix="jwr"%> <%@ page contentType="text/html;charset=UTF-8"%> <html> <head> <jwr:script src="/jquery.js" /> <jwr:script src="/jquery-json.js" /> <jwr:style src="/default.css" /> </head> <body> <h 2>Hello World!</h 2> </body> </html>