WebJars能使Maven的依赖管理支持OSS的JavaScript库/CSS库,比如jQuery、Bootstrap等。
(1)添加js或者css库
pom.xml
- <dependency>
- <groupId>org.webjarsgroupId>
- <artifactId>bootstrapartifactId>
- <version>3.3.7-1version>
- dependency>
- <dependency>
- <groupId>org.webjarsgroupId>
- <artifactId>jqueryartifactId>
- <version>3.1.1version>
- dependency>
src/main/resources/static/demo.html
- <html>
- <head>
- <script src="/webjars/jquery/3.1.1/jquery.min.js">script>
- <script src="/webjars/bootstrap/3.3.7-1/js/bootstrap.min.js">script>
- <title>WebJars Demotitle>
- <link rel="stylesheet" href="/webjars/bootstrap/3.3.7-1/css/bootstrap.min.css" />
- head>
- <body>
- <div class="container"><br/>
- <div class="alert alert-success">
- <a href="#" class="close" data-dismiss="alert" aria-label="close">×a>
- Hello, <strong>WebJars!strong>
- div>
- div>
- body>
- html>
启动应用后可以看到以下log:
引用
2017-02-09 13:52:48.117 INFO 6188 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
启动应用访问 http://localhost:8080/demo.html
(2)省略版本号
很少在代码中硬编码版本号,所以需要隐藏它。
pom.xml添加webjars-locator
org.springframework.web.servlet.resource.WebJarsResourceResolver
-
org.webjars -
webjars-locator -
0.31
src/main/resources/static/demo.html
引用
->
启动应用再次访问 http://localhost:8080/demo.html 结果和上边一样。
引入的开源JavaScript库/CSS库将会以jar的形式被打包进工程!
spring-boot-demo1-0.0.1-SNAPSHOT.jar\BOOT-INF\lib
引用
bootstrap-3.3.7-1.jar
└─ META-INF
└─ resources
└─ webjars
└─ bootstrap
└─ 3.3.7-1
├─ css
| ├─ bootstrap.min.css
| ├─ bootstrap.min.css.gz # Gzip文件
...
└─ META-INF
└─ resources
└─ webjars
└─ bootstrap
└─ 3.3.7-1
├─ css
| ├─ bootstrap.min.css
| ├─ bootstrap.min.css.gz # Gzip文件
...
引用
jquery-3.1.1.jar
└─ META-INF
└─ resources
└─ webjars
└─ jquery
└─ 3.1.1
├─ jquery.min.js
...
└─ META-INF
└─ resources
└─ webjars
└─ jquery
└─ 3.1.1
├─ jquery.min.js
...