`
wangmengbk
  • 浏览: 292420 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

wro4j:Java Web资源压缩

 
阅读更多

wro4j是一个Web资源优化工具。众所周知,到服务器加载一个大的文件比加载两个小的文件快,因为会增加HTTP交互的次数并且大部分浏览器在任何时候对于同一个服务器,只保持两个连接。开发wro4j项目的目的是减少加载一个页面的请求次数和传输的数据量.

WRO4j最大限度地减少和压缩CSS和JavaScript等web资源,WRO4j可以在编译时配置一个非常有用的API - 与适当的maven插件一起运行时。
有两种办法使用,一个在运行时混合,一个是使用Maven编译时混合。

运行时混合:
第一步在web.xml加入wrofilter:

<filter>
      <filter-name>WebResourceOptimizer</filter-name>
      <filter-class>
        ro.isdc.wro.http.WroFilter
      </filter-class>
    </filter>

    <filter-mapping>
      <filter-name>WebResourceOptimizer</filter-name>
      <url-pattern>/wro/*</url-pattern>
    </filter-mapping>

第二步在WEB-INF 目录下配置一个wro.xml文件,如下:

  <groups xmlns="http://www.isdc.ro/wro">
      <group name="all">
        <css>/asset/*.css</css>
        <js>/asset/*.js</js>
      </group>
    </groups>      


在页面使用:
<link rel="stylesheet" type="text/css" href="/wro/all.css" />

这种方式会耗费一些服务器CPU。

编译时混合,使用Maven,需要多Maven熟悉:
wro.xml文件如下

<?xml version="1.0" encoding="UTF-8"?>
<groups xmlns="http://www.isdc.ro/wro">
  <group name="javaonly-base-scripts">
    <js minimize="false">/scripts/jquery-1.6.1.min.js</js>
    <js minimize="false">/scripts/jqXMLUtils.pack.js</js>
    <js minimize="false">/scripts/cufon/cufon-yui.js</js>
    <js minimize="false">/scripts/cufon/font.js</js>
    <js minimize="false">/scripts/cufon/replace.js</js>
  </group>
  <group name="javaonly-scripts">
    <js>/scripts/scriptFile1.js</js>
    <js>/scripts/scriptFile2.js</js>  
  </group>
  <group name="javaonly-debugging">
    <js minimize="false">/scripts/scriptDebug1.js</js>
    <js minimize="false">/scripts/scriptDebug1.js</js>
  </group>
  
  <group name="javaonly-styles">
    <css>/styles/screen/base.css</css>
	<css>/styles/screen/layout.css</css>
	<css>/styles/screen/content.css</css>
	<css>/styles/screen/menu.css</css>
	<css>/styles/screen/footer.css</css>
	<css>/styles/screen/login.css</css>
	<css>/styles/screen/tooltip.css</css> 
	<css>/styles/screen/homepage.css</css>
	
  </group>
</groups>
</pre>



然后在pom.xml中增加wro4j插件:“

<plugin>
 <groupId>ro.isdc.wro4j</groupId>
<artifactId>wro4j-maven-plugin</artifactId>
<version>${wro4j.version}</version>
<executions>
 <execution>
<id>optimize-web-resources</id>
	 <phase>compile</phase>
		 <goals>
		<goal>run</goal>
		</goals>
		</execution>
		</executions>
		<configuration>
	<ignoreMissingResources>false</ignoreMissingResources>
<jsDestinationFolder>
${project.build.directory}/${project.build.finalName}/scripts/wro/</jsDestinationFolder>
<cssDestinationFolder>
${project.build.directory}/${project.build.finalName}/styles/wro/</cssDestinationFolder>
 <wroManagerFactory>
ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory</wroManagerFactory>
  </configuration>			    
/plugin>



最后我们在页面可以得到最小化的资源,如:

<link rel="stylesheet" type="text/css" href="/wro/javaonly-styles.css" />

 

下载地址:https://github.com/alexo/wro4j/

分享到:
评论

相关推荐

    wro4j 1.7.2 发布,Web 资源优化工具

    wro4j是一个Web资源优化工具。众所周知,到服务器加载一个大的文件比加载两个小的文件快,因为会增加HTTP交互的次数并且大部分浏览器在任何时候对于同一个服务器,只保持两个连接。开发wro4j项目的目的是减少加载一...

    wro4j-spring-boot-starter:Spring Boot启动器和wro4j的自动配置(http:alexo.github.iowro4j)

    wro4j-spring-boot-starter Spring Boot启动程序和wro4j的自动配置: 是用于分析和优化Web资源的工具。 它汇集了几乎所有现代Web工具:JsHint,CssLint,JsMin,Google Closure压缩器,YUI Compressor,UglifyJs,...

    wro4j-boot:Spring Boot Wro4j配置样本

    wro4j引导Spring Boot Wro4j配置样本为了避免wro4j尝试从/WEB-INF/加载wro.xml问题,请检查Wro4jCustomXmlModelManagerFactory ,它直接从/wro.xml加载它。 其他详细信息可以在找到

    wro4j:从 code.google.compwro4j 自动导出

    适用于 Java 的 Web 资源优化器wro4j 是一个免费的开源 Java 项目,它将帮助您Web 应用程序页面的加载时间。 它可以帮助您保持静态资源(js 和 css),在(使用简单的过滤器)或(使用 maven 插件)合并和缩小它们,...

    wro4j-core-1.8.0.jar

    Wro4j是用于分析和优化Web资源的工具,它汇集了几乎所有现代Web工具:JsHint,CssLint,JsMin,Google Closure压缩器,YUI Compressor,UglifyJs,Dojo Shrinksafe,Css变量支持,JSON压缩,Less,Sass,...

    Web资源优化工具wro4j.zip

    wro4j是一个Web资源优化工具。众所周知,到服务器加载一个大的文件比加载两个小的文件快,因为会增加HTTP交互的次数并且大部分浏览器在任何时候对于同一个服务器,只保持两个连接。开发wro4j项目的目的是减少加载一...

    spring-boot-autoconfigure-wro4j:一个spring-boot-autoconfigure库,它简化了https上wro4j库的使用

    该库当前依赖于wro4j-extension库,该库包含用于处理和处理Web资源的多个框架。 如果要排除某些框架,当前必须使用构建系统排除传递依赖项的方式自行完成。 用法 如果您在类路径上使用Groovy,则库将类路径中的文件...

    wro4j-core-1.7.9.jar

    wro4j-core-1.7.9.jar 是基于mmseg算法的一个轻量级开源中文分词器所需要的jar,已经测验过,欢迎下载!

    mvn-wro4j-angular:maven,wro4j amd 角度

    总的来说,"mvn-wro4j-angular"项目展示了现代Web开发中的最佳实践,通过Maven、WRO4J和Angular的结合,实现了高效的项目构建、前端资源优化和功能丰富的用户界面。对于任何想要学习和掌握这些技术的开发者来说,这...

    hedwig-server-4.2.1.zip

    这些标签会自动处理wro4j配置文件中定义的资源合并和压缩,减轻了开发者的工作负担。例如,通过`&lt;wro:css groups="common"/&gt;`,我们可以轻松引入名为"common"的资源组,这个组包含了多个CSS文件的合并结果。 此外,...

    nfsdb-guice-1.0.2.zip

    wro4j是一个免费的开源java项目,它汇集了几乎所有的现代web工具:jshint、csslint、jsmin、google closure compressor、yui compressor、uglifyjs、dojo shrinksafe、css变量支持、json压缩、less、sass、...

    WebRex:WebRex是用于在运行时进行Web资源聚合和优化的工具。 与wro4j等其他开放源代码优化器相比,它的突出优点是聚合和优化是动态的,而不是静态的

    WebRex目录包括WebRex标签库在JSP页面中定义一个插槽将资源分配到插槽其他... 有许多开源解决方案可以处理资源聚合,例如Google Wro4j和JAWR,但是这些开源解决方案大多数都是“静态”聚合解决方案。 对于静态聚合,

    dspace-services-3.0.zip

    WRO4J 是一个用于优化 Web 资源(如 CSS、JavaScript 文件)的工具,它可以合并、压缩和缓存这些资源,以提高网页加载速度和减少网络请求。 【标签】"开源项目" 表明这两个软件都是遵循开源许可证的,允许用户自由...

    less.ruble:适用于 Wro4j Runner 的 Aptana Studio 3x 捆绑包

    适用于 Wro4j Runner 的 Aptana Studio 3x 捆绑包 使用 Wro4j Runner 优化和/或最小化基于 Eclipse 的 IDE 中的 CSS/JS 文件。 作者 学分 链接 执照 此捆绑包在 MIT 和 GPL 许可下获得双重许可:

    web代码混淆方案.混淆js代码,压缩css代码

    例如,WRO4J是一个自动化资源管理工具,它可以将多个CSS文件合并为一个,并进行压缩。这样可以减少HTTP请求的数量,提高页面加载速度。另外,Yahoo!的YUI Compressor也是一个常用的CSS和JavaScript压缩工具,它能...

    wro标准车型.pdf

    wro

    应用级产品开发平台APDPlat.zip

    23)、Web资源优化使用wro4j。 24)、日志拦截使用AspectJ。 25)、上传备份文件到FTP使用Commons Net。 26)、JSON处理使用Jackson。 27)、分布式搜索和实时分析使用elasticsearch 标签:APDPlat Web框架

    WRO-Score-Calculator:在线WRO得分表

    非官方的WRO分数计算器(请访问 !) 这是世界机器人奥林匹克竞赛的非官方在线成绩表。 目前,存在针对2019年和2020年常规类别大多数挑战的分数表。 今年挑战的分数表仍在进行中,完成后将在此处发布。

    icampus-console

    Wro4j是一个Web资源优化工具,它可以合并、压缩和最小化JavaScript和CSS文件,以提高网页加载速度。在"icampus-console"项目中,wro4j被用来优化AngularJS的资源,减少HTTP请求的数量,从而提升用户体验。通过...

    Wro.Professional.ASP.NET.2.0.AJAX.June.2007.chm

    通过阅读这本《Wro Professional ASP.NET 2.0 AJAX June 2007》,开发者不仅可以深入了解ASP.NET 2.0与AJAX的结合使用,还能获取到当时最先进的Web开发技术知识,从而提升其在Web开发领域的专业技能。

Global site tag (gtag.js) - Google Analytics