您的位置:首页技术文章
文章详情页

Springboot WebJar打包及使用实现流程解析

【字号: 日期:2023-04-29 18:07:07浏览:3作者:猪猪

前言

WebJar官网:https://www.webjars.org/,对于任何与Servlet 3兼容的容器,WEB-INF/lib目录中的webjar都会自动作为静态资源提供。这是因为WEB-INF/lib中的JAR中的META-INF/resources目录中的任何内容都会自动公开为静态资源。

官网上面已经有很多热门webjar,但有时候还是不能满足我们的需要,我们需要自己打包WebJar,本文记录如何WebJar的打包、使用

打包

首先创建一个maven工程,干干净净什么都没有

Springboot WebJar打包及使用实现流程解析

把一下常用的web资源(比如:jquery、bootstrap前端框架、layer弹出层、jqgrid分页插件)放在resources文件夹下面,为了更直观的区分,我们先新建一个plugin文件夹

Springboot WebJar打包及使用实现流程解析

编写pom.xml,指定打包方式,以及构建工具

<?xml version='1.0' encoding='UTF-8'?><project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <!-- 打包方式 --> <packaging>jar</packaging> <groupId>cn.huanzi</groupId> <artifactId>webjar</artifactId> <version>1.0.1</version> <!-- 构建工具 --> <build> <resources> <resource><directory>${project.basedir}/src/main/resources</directory><targetPath>META-INF/resources/</targetPath> </resource> </resources> </build></project>

打开maven工具栏,package打包

Springboot WebJar打包及使用实现流程解析

打包成功

Springboot WebJar打包及使用实现流程解析

target目录下面就会生成jar包

Springboot WebJar打包及使用实现流程解析

jar包结构是这样子滴

Springboot WebJar打包及使用实现流程解析

有了jar包后我们就可以引入jar使用这些web静态资源了,上传到maven私服使用maven引入或者直接引入jar文件都行

使用

首先需要引入jar,如果是直接把jar放在项目里面就不多说了直接复制进去就行,如果是要maven引入,则先需要把jar包发到maven私服,在pom中配置私服地址,然后引入

<!-- 配置私服地址 --> <repositories> <repository> <id>XXXXXXX</id> <name>XXXXXX</name> <url>XXXXXX</url> </repository> </repositories> <!-- 引入webjar --> <dependency> <groupId>cn.huanzi</groupId> <artifactId>webjar</artifactId> <version>1.0.1</version> </dependency>

使用方式就跟我们使用resources下面的资源一样,我们看一下thymeleaf引入例子:

<!-- jquery --><script th:src='https://www.haobala.com/bcjs/@{/plugin/jquery.min.js}'></script>

总结

使用WebJar有什么好处呢?

1、打成jar包方便管理,统一资源版本,如需升级资源版本,修改webjar工程、升级版本号,重新打包上传maven私服即可,项目无需做修改

2、减少项目大小,提高打包、部署项目是的效率,例如本例中:

没打包之前 14.4MB

打包之后 5.62MB,减少8.78MB

Springboot WebJar打包及使用实现流程解析 Springboot WebJar打包及使用实现流程解析

如果使用maven引入,则一点空间都不占,项目大小减少14.4MB

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。

标签: Spring
相关文章: