Spring Boot入門-基礎編(5)-WebJarsを使う

3592 ワード

WebJarsは、jQuery、Bootstrapなど、OSSをサポートするJavaScriptライブラリ/CSSライブラリにMavenの依存管理をサポートします.
(1)jsまたはcssライブラリの追加
pom.xml
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>bootstrap</artifactId>
    <version>3.3.7-1</version>
</dependency>
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>jquery</artifactId>
    <version>3.1.1</version>
</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 Demo</title>
        <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
<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>webjars-locator</artifactId>
    <version>0.31</version>
</dependency>

src/main/resources/static/demo.html
参照


WebJars Demo

->


WebJars Demo

アプリケーション再アクセスの開始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ファイル
                    ...
参照
jquery-3.1.1.jar
└─ META-INF
    └─ resources
        └─ webjars
            └─ jquery
                └─ 3.1.1
                    ├─ jquery.min.js
                    ...