webjars学习

webjars介绍

官网:WebJars - Web Libraries in Jars

github: WebJars · GitHub

文档:WebJars - Documentation

WebJAR 是一个用于管理Web前端依赖的工具。它允许开发者将特定的客户端库(如JavaScript、CSS等)打包成JAR(Java Archive)文件,并将其包含在Java Web应用程序中。这样做的目的是为了简化依赖管理,使得在不同的Java Web项目中使用相同的客户端库变得更加容易。

WebJARs通常遵循Maven的依赖管理机制,这意味着你可以通过在项目的pom.xml文件中添加相应的依赖来引入WebJAR。一旦添加了依赖,Maven就会自动下载所需的WebJAR文件,并将其包含在构建过程中。

官网截图:

GitHub截图:

WebJars 有四种风格
NPM WebJars
Bower GitHub WebJars
经典 WebJars
Bower 原创 WebJars

Webjar 的关键特点

  1. 兼容性:Webjar 使得在 Java 项目中使用流行的前端库(如 jQuery、Bootstrap、React 等)变得容易。

  2. 版本管理:通过 Maven 或 Gradle,可以轻松地管理这些库的版本。

  3. 依赖管理:Webjar 允许开发者声明对特定前端库的依赖,构建工具会自动处理这些依赖的下载和更新。

  4. 可移植性:Webjar 可以被不同的 Java 应用共享,这提高了代码的可移植性。

  5. 简化部署:所有前端资源都作为 Java 库的一部分被打包,简化了部署过程。

  6. 安全性:使用构建工具管理 Webjar 可以确保使用的是经过验证的、安全的库版本。

WebJars 的结构

WebJars 的目录结构遵循特定的规则,通常位于 JAR 文件的路径下1。

 /META-INF/resources/webjars/${groupId}/${artifactId}/${version} 

如何使用 WebJars

  1. 添加依赖:在项目的 pom.xml 或 build.gradle 文件中添加对应的 WebJar 依赖。
  2. 配置资源路径:在某些情况下,可能需要配置资源路径以确保应用程序可以正确地访问 WebJar 资源。
  3. 访问资源:在 HTML 或 JSP 页面中,通过特定的路径引用 WebJar 资源,如 :
    /webjars/jquery/3.1.1/jquery.min.js3

使用实例:

pom.xml配置
<dependency><groupId>org.webjars</groupId><artifactId>bootstrap</artifactId><!-- 当前最新版本--><version>5.3.3</version>
</dependency>
在springboot项目还会用thymeleaf
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
Thymeleaf的功能
<link href="../asserts/css/bootstrap.min.css" th:href="@{/webjars/bootstrap/5.3.3/css/bootstrap.css}" rel="stylesheet"><link rel="stylesheet" href="/webjars/bootstrap/css/bootstrap.css"  th:href="@{/webjars/bootstrap/5.3.3/css/bootstrap.css}"/>




本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/691037.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LVDS 接口标准和规范

低压差分信号具有传输速率快、抗干扰性强的特点&#xff0c;是现在广泛应用的数据接口标准之一。Xilinx FPGA支持LVDS电平标准&#xff0c;并提供了动态相位调整解决方案&#xff0c;解决了基于LVDS源同步传输时存在的数据偏斜问题。 1 LVDS 技术规范简介 随着接口和背板信号…

AI语音模型PaddleSpeech踩坑(安装)指南

PaddleSpeech简介 PaddleSpeech 是基于飞桨 PaddlePaddle 的语音方向的开源模型库&#xff0c;用于语音和音频中的各种关键任务的开发&#xff0c;包含大量基于深度学习前沿和有影响力的模型。 PaddleSpeech安装步骤 提示&#xff1a;要找到一个合适的PaddleSpeech版本与pad…

软件测试报告(交付文档支撑word原件)

软件测试报告在软件开发过程中起着至关重要的作用&#xff0c;主要有以下几个主要原因&#xff1a; 1、确保软件质量 2、提供决策支持 3、记录测试过程和结果 4、促进沟通和协作 5、符合标准和法规要求 6、改进测试流程和策略 7、降低风险 软件开发全套资料获取进主页或者本文…

Linux NFS共享目录配置漏洞

Linux NFS共享目录配置漏洞 一、实验目的二、实验原理三、复现准备四、漏洞复现4.1、复现前提4.2、正式复现 一、实验目的 利用 NFS共享目录配置漏洞读取目标主机的 /etc/passwd 文件内容NFS 服务配置漏洞&#xff0c;赋予了根目录远程可写权限&#xff0c;导致 /root/.ssh/au…

【c++】set、map用法详解

set、map用法详解 1. 关联式容器2. 键值对2.1 &#xff1a;pair2.2&#xff1a;make_pair 3. 树形结构的关联式容器3.1&#xff1a;set构造函数find()erase()insert()count()lower_bound()upper_bound() 3.2&#xff1a;multiset3.3&#xff1a;map构造函数insert()operator[] …

how to install Mysql client and desktop version/workbench

6.1 MySQL数据库 MySQL下载与安装 进入mysql官网&#xff0c;找到社区版MYSQL下载地址&#xff1a;https://dev.mysql.com/downloads/ second one.zip for download 使用管理员身份打开cmd&#xff0c;并cd到bin目录下&#xff0c;进行初始化数据库存储文件&#xff1a;mys…

代码+视频,R言语处理数据中的缺失值

在SCI论文中&#xff0c;我们不可避免和缺失数据打交道&#xff0c;特别是在回顾性研究&#xff0c;对于缺失的协变量&#xff08;就是混杂因素&#xff09;&#xff0c;我们可以使用插补补齐数据&#xff0c;但是对于结局变量和原因变量的缺失&#xff0c;我们不能这么做。部分…

VC++ 6.0开发文件重复整理工具开发

开发背景&#xff1a;手机上的文件越来越多&#xff0c;想要备份下文件结果文件太多杂乱无章且重复文件冗余存储造成存储空间滥发&#xff0c;所以决定开发一个小工具来整理重复文件。由于本人电脑运行慢&#xff0c;选择VC6.0作为开发IDE&#xff0c;操作虽然麻烦点&#xff0…

【FPGA/数字IC】Multiport RAM,多读多写寄存器-——基于FPGA BRAM的多端口地址查找表与FPGA BRAM的资源分析

目录 背景 手写Multiport Ram Multiport RAM 代码方案 资源评估 Multiport RAM 资源利用的优化 资源评估 防止读写冲突的组合逻辑设计&#xff08;写优先&#xff09; 仿真和时序 单口写数据 单端口读数据 多口读相同数据 多口同时读不同数据 背景 在多端口交换机的…

商务英语口语成人考级外语培训之BECkao考级口语篇

在口语考试中&#xff0c;不管实际内容你能说出多少&#xff0c;但准备一些套话&#xff0c;至少还能撑撑场子你们说是不是&#xff1f; 内容阐述 描述事实 1.Im going to describe/present/explain/give you some information about... 2.Id like to say a few words about...…

探索全画面塑料焊接透光率检测仪的科技魅力

在精密工业和科研领域中&#xff0c;对材料的光学性能有着严格的要求。全画面塑料焊接透光率检测仪是一种先进的设备&#xff0c;它能够精确测量塑料焊接接头的透光率&#xff0c;确保焊接质量符合高标准。本文将详细介绍这一设备的特点、工作原理以及它在实际应用中的重要性。…

简易留言板

目录 前端实现 数据库的使用 创建数据表 创建项目 连接数据库 后端实现 接口定义 持久层 业务逻辑层 控制层 前端代码完善 留言板是一个常见的功能&#xff0c;在本篇文章中&#xff0c;将实现一个简易的留言板&#xff1a; 页面中能够显示所有留言内容&#xff0c…