一种Java Web程序资源的优化方法

简介: 要怎样组织和优化CSS和脚本文件资源?很多CSS和JavaScript资源分散在不同的文件中,可能对网页的载入速度有影响。WRO4J是一个很有用的API,可以最小化和压缩Web资源文件,包括CSS和JavaScript文件。
要怎样组织和优化CSS和脚本文件资源?

很多CSS和JavaScript资源分散在不同的文件中,可能对网页的载入速度有影响。

WRO4J是一个很有用的API,可以最小化和压缩Web资源文件,包括CSS和JavaScript文件。WRO4J可以在建立时进行配置——使用适当的Maven插件,也可以在运行时通过过滤器进行配置。



本文讲述怎样在构建应用程序时,配置和使用WRO4J。

第一步是需要定义分组——创建和包含的资源,这通过创建wro.xml配置文件实现,此文件放入WEB-INF目录。如下:

[html]   view plain copy print ?
  1. xml version="1.0" encoding="UTF-8"?>  
  2. groups xmlns="http://www.isdc.ro/wro">  
  3.   group name="javaonly-base-scripts">  
  4.     js minimize="false">/scripts/jquery-1.6.1.min.jsjs>  
  5.     js minimize="false">/scripts/jqXMLUtils.pack.jsjs>  
  6.     js minimize="false">/scripts/cufon/cufon-yui.jsjs>  
  7.     js minimize="false">/scripts/cufon/font.jsjs>  
  8.     js minimize="false">/scripts/cufon/replace.jsjs>  
  9.   group>  
  10.   group name="javaonly-scripts">  
  11.     js>/scripts/scriptFile1.jsjs>  
  12.     js>/scripts/scriptFile2.jsjs>    
  13.   group>  
  14.   group name="javaonly-debugging">  
  15.     js minimize="false">/scripts/scriptDebug1.jsjs>  
  16.     js minimize="false">/scripts/scriptDebug1.jsjs>  
  17.   group>  
  18.     
  19.   group name="javaonly-styles">  
  20.     css>/styles/screen/base.csscss>  
  21.     css>/styles/screen/layout.csscss>  
  22.     css>/styles/screen/content.csscss>  
  23.     css>/styles/screen/menu.csscss>  
  24.     css>/styles/screen/footer.csscss>  
  25.     css>/styles/screen/login.csscss>  
  26.     css>/styles/screen/tooltip.csscss>   
  27.     css>/styles/screen/homepage.csscss>  
  28.       
  29.   group>  
  30. groups>  
  31. pre>  


随后,我们在Maven配置文件中添加WRO4J插件。如下:

[html]   view plain copy print ?
  1. plugin>  
  2.     groupId>ro.isdc.wro4jgroupId>  
  3.     artifactId>wro4j-maven-pluginartifactId>  
  4.     version>${wro4j.version}version>  
  5.     executions>  
  6.         execution>  
  7.             id>optimize-web-resourcesid>  
  8.             phase>compilephase>  
  9.             goals>  
  10.                 goal>rungoal>  
  11.             goals>  
  12.         execution>  
  13.     executions>  
  14.     configuration>  
  15.         ignoreMissingResources>falseignoreMissingResources>  
  16.         jsDestinationFolder>  
  17.             project.build.directory/{project.build.finalName}/scripts/wro/  
  18.         jsDestinationFolder>  
  19.         cssDestinationFolder>  
  20.             project.build.directory/{project.build.finalName}/styles/wro/  
  21.         cssDestinationFolder>  
  22.         wroManagerFactory>  
  23.             ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory  
  24.         wroManagerFactory>  
  25.     configuration>                
  26. plugin>  


最后,我们在网页上添加最小化后的资源文件,如下:

[html]   view plain copy print ?
  1. link rel="stylesheet" type="text/css" href="/wro/javaonly-styles.css" />  
  2. script type="text/javascript" src="/wro/javaonly-base-scripts.js">script>  



WRO4J的主页:http://code.google.com/p/wro4j/wiki/GettingStarted

目录
打赏
0
0
0
0
10
分享
相关文章
消防救援支队消防员单兵装备智能养护舱点击驱动java版程序(一)
智能消防作战服架通过电机驱动系统提升消防员作业效率和安全性。本文介绍基于Java的电机驱动程序开发,涵盖硬件准备、软件环境搭建及驱动程序实现。重点包括串口通信配置、电机控制类设计与控制逻辑实现,确保电机高效稳定运行。通过正确配置通信协议和串口参数,并添加异常处理机制,保障系统的安全性和可靠性。
消防救援支队消防员单兵装备智能养护舱电机驱动java版程序(二)
本文探讨消防救援中智能养护舱电机驱动的Java程序设计,作为系列文章第二部分。通过自动化和智能化手段,智能养护舱提升了装备维护效率与准确性。文章详细介绍了电机驱动模块的设计与实现,包括硬件选型、PID控制策略、安全保护机制及Java程序架构,确保电机精确控制、稳定性和安全性。未来将优化功能并引入智能算法和物联网技术,进一步提升装备维护智能化水平。
小团队 CI/CD 实践:无需运维,Java Web应用的自动化部署
本文介绍如何使用GitHub Actions和阿里云Kubernetes(ACK)实现Java Web应用的自动化部署。通过CI/CD流程,开发人员无需手动处理复杂的运维任务,从而提高效率并减少错误。文中详细讲解了Docker与Kubernetes的概念,并演示了从创建Kubernetes集群、配置容器镜像服务到设置GitHub仓库Secrets及编写GitHub Actions工作流的具体步骤。最终实现了代码提交后自动构建、推送镜像并部署到Kubernetes集群的功能。整个过程不仅简化了部署流程,还确保了应用在不同环境中的稳定运行。
51 9
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
89 6
Spring Boot 入门:简化 Java Web 开发的强大工具
Java 异常处理:筑牢程序稳定性的 “安全网”
本文深入探讨Java异常处理,涵盖异常的基础分类、处理机制及最佳实践。从`Error`与`Exception`的区分,到`try-catch-finally`和`throws`的运用,再到自定义异常的设计,全面解析如何有效管理程序中的异常情况,提升代码的健壮性和可维护性。通过实例代码,帮助开发者掌握异常处理技巧,确保程序稳定运行。
65 2
开发 Java 程序一定要安装 JDK 吗
开发Java程序通常需要安装JDK(Java Development Kit),因为它包含了编译、运行和调试Java程序所需的各种工具和环境。不过,某些集成开发环境(IDE)可能内置了JDK,或可使用在线Java编辑器,无需单独安装。
119 1
Java Web 应用中,资源文件的位置和加载方式
在Java Web应用中,资源文件如配置文件、静态文件等通常放置在特定目录下,如WEB-INF或classes。通过类加载器或Servlet上下文路径可实现资源的加载与访问。正确管理资源位置与加载方式对应用的稳定性和可维护性至关重要。
76 6
使用Maven进行项目管理:提高Java Web开发的效率
Maven 是一款强大的项目管理和构建自动化工具,广泛应用于Java社区。它通过依赖管理、构建生命周期管理、插件机制和多模块项目支持等功能,简化了项目的构建过程,提高了开发效率。本文将介绍Maven的核心功能及其在Java Web开发中的应用。
82 0
Java程序中如何正确的释放资源(备战2022春招或暑期实习,每天进步一点点,打卡100天,Day2)
Java程序中如何正确的释放资源(备战2022春招或暑期实习,每天进步一点点,打卡100天,Day2)
140 0
Java程序中如何正确的释放资源(备战2022春招或暑期实习,每天进步一点点,打卡100天,Day2)
Java程序中如何正确的释放资源
在Java开发中,程序员经常会遇到各种资源的释放问题。比如最常见的I/O操作,我们往往会通过调用API提供的close方法来关闭流,释放资源。但是追求极致的程序员会发现,这种方式存在不少问题,比如忘记关闭流、代码不美观、异常不好处理等等。
703 0
Java程序中如何正确的释放资源
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等