媒介
前面一章节我们主要讲授了关于文件上传的两种方法。本章节继承
web开拓
的相关常识点。凡是对付web开拓
而言,像js
、css
、images
等静态资源版本打点是较量杂乱的,好比Jquery
、Bootstrap
、Vue.js
大概各个前端框架所依赖的自个组件的版本都不尽沟通,一不留意就大概引起差异版本的斗嘴问题。所以,劳务派遣管理系统,是否有一种像后端打点jar
包一样的办理方案呢?谜底虽然是有的,昆山软件开发,本日我们就来重点先容下关于WebJars
的利用。前面我们先容的Swagger2
也是基于webJars
举办页面集成的。
一点常识
原本我们在举办web
开拓时,一般上都是讲静态资源文件安排在webapp
目次下,在SpringBoot
内里,一般是将资源文件安排在src/main/resources/static
目次下。而在Servlet3
中,答允我们直接会见WEB-INF/lib
下的jar
包中的/META-INF/resources
目次资源,昆山软件开发,即WEB-INF/lib/{*.jar}/META-INF/resources
下的资源可以直接会见。
Servlet3静态文件处理惩罚-转自网络
所以其实,WebJars
也是操作了此成果,将所有前端的静态文件打包成一个jar
包,这样对付引用放而言,和普通的jar
引入是一样的,还能很好的对前端静态资源举办打点。
WebJars利用
WebJars
是将web前端资源(如jQuery & Bootstrap)打成jar
包文件。借助版本打点东西(Maven、gradle等)举办版本打点,担保这些Web资源版本独一性。制止了文件杂乱、版本纷歧致等问题。
WebJar布局
开始利用前,我们看下
Jquery
的webjars
,借此来相识下webjars
包的目次布局。以下是基于jquery-3.3.1.jar:
META-INF └─maven └─org.webjars.bower └─jquery └─pom.properties └─pom.xml └─resources └─webjars └─jquery └─3.3.1 └─(静态文件及源码)
jquery-3.3.1目次布局
所以可以看出,静态文件存放法则:META-INF/resources/webjars/${name}/${version}
。这点官网也有说明的:
webjar目次官网说明
WebJars实践
接下来我们以一个简朴的示例,对
webjars
举办简朴的实践下。
0.在src/main/resouces
路径下建设META-INF/resources/webjars/0.0.1
目次,同时为了演示结果,拷贝一个图片到此目次下。
新建目次
1.编写一个简朴的html页面,放在在src/main/resources/static
下(虽然也可以直接放在webjar下了,只需要后头加个映射干系即可),内容如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Hello,WebJars</title> </head> <body> <p>Hello,WebJars</p> <img alt="sprinboot" src="webjars/demo/0.0.1/springboot.jpg"> </body> </html>
2.编写设置类,添加一个资源映射干系.其实也可以不写,因为第十五章节也有说过,springboot
默认的四个资源路径内里就包括了/META-INF/resources/
了。
默认不设置时,从节制台启动项也是可以获悉的:
2018-08-08 23:26:54.874 INFO 5900 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 2018-08-08 23:26:54.874 INFO 5900 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 2018-08-08 23:26:54.917 INFO 5900 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 2018-08-08 23:26:54.941 INFO 5900 --- [ main] oConfiguration$WelcomePageHandlerMapping : Adding welcome page: class path resource [static/index.html]