webjars

Springboot 系列(五)Spring Boot web 开发之静态资源和模版引擎

核能气质少年 提交于 2020-05-05 19:14:07
前言 Spring Boot 天生的适合 web 应用开发,它可以快速的嵌入 Tomcat, Jetty 或 Netty 用于包含一个 HTTP 服务器。且开发十分简单,只需要引入 web 开发所需的包,然后编写业务代码即可。 自动配置原理? 在进行 web 开发之前让我再来回顾一下自动配置,可以参考系列文章第三篇。Spring Boot 为 Spring MVC 提供了自动配置,添加了如下的功能: 视图解析的支持。 静态资源映射,WebJars 的支持。 转换器 Converter 的支持。 自定义 Favicon 的支持。 等等 <!-- more --> 在引入每个包时候我们需要思考是如何实现自动配置的,以及我们能自己来配置哪些东西,这样开发起来才会得心应手。 关于 Spring Boot Web 开发的更详细介绍可以参考官方文档。 1. JSON 格式转换 Spring Boot 默认使用 Jackson 进行 JSON 化处理,如果想要切换成 FastJson 可以首先从 官方文档 里查询信息。从这里知道对于 ResponseBody 的渲染主要是通过 HttpMessageConverters, 而首先引入FastJson Pom依赖并排除 Spring Boot 自带的 Jackson。 <dependency> <groupId>org

SpringBoot集成百度UEditor图片上传后直接访问404解决办法

大兔子大兔子 提交于 2020-05-04 00:54:16
SpringBoot项目上传图片一般是上传至远程服务器存储,开发过程中可能会上传至当前项目的某个静态目录中,此时就会遇到这个问题,文件在上传之后直接访问并不能被访问到,必须重新加载项目。 首先分析一下原因: 我们知道,如果使用类似 /upload/image/1.jpg 这种格式进行图片的访问的时候,SpringBoot读取的并不是本项目中直接的静态目录,而是在进行编译的时候生成target目录下的文件,如下图所示: 那么问题就来了,我们在运行的过程中上传一个图片的话,并不能重新加载当前这个项目,也就是target目录下的文件一直是之前的文件,尽管有人说我进行了SpringBoot热部署(dev-tools),能够自动重新加载项目,但是问题是热部署也需要一定的时间去分析和重新加载项目,所以上传文件后直接进行访问肯定就不能实现了。 简单来说:文件只是单纯的上传到项目的文件夹中,并没有在target目录下生成对应的文件,导致访问不到。 在网上看了一个博客,说可以在将文件复制到本地的时候也将文件复制到项目的target目录下,这样就可以访问了,听着也非常的有道理,但是实践出真知,经过我的测试,并不能实现,不知道是因为我的问题还是什么,所以并不推荐大家使用这个方法,当然感兴趣的也可以测试一下,毕竟这个听着是真的很有道理。 解决办法:配置映射路径拦截器,将虚拟路径映射为真是图片地址

SpringBoot日记——Web开发篇

大兔子大兔子 提交于 2020-04-30 14:05:44
准备开始实战啦!~~~~ 我们先来看,SpringBoot的web是如何做web开发的呢?通常的步骤如下: 1.创建springboot应用,指定模块; 2.配置部分参数配置; 3.编写业务代码; 为了更好的用好SpringBoot,那么我们需要重点了解,关于它的 自动配置原理 。 HELLO WORLD! 关于原理,自己去研究,这里不做深究,毕竟小白也看不懂,一两句也说不清的…… @Controller public class HelloController { @GetMapping( "/hello" ) @ResponseBody public String hello() { return "hello ONE PEACE" ; } } 如上的,代码,我们写在controller包中,并执行application的main方法,然后从页面上访问以下,我们来看看结果 浏览器就给我们直接展示了打印结果,成功~! WebJars及静态资源规则 既然是web开发,肯定需要一些webjar包的。通常的web开发是在webApp中加载,而SpringBoot可以直接从resource的webjars中取得,同样,我们可以在maven中添加所需的webjar包,这里有一个网站可以看一下 WebJars包管理站 可以看到,常用的一些前端webjar包这里都可以通过maven等方式拉取

Spring Boot WebFlux 2.1.7 中文翻译文档

混江龙づ霸主 提交于 2020-04-18 00:27:17
1. 前言 从一开始学习 Netty 到 rxjava、Rector,再到 java8 的 CompletableFuture,就深深的为响应式编程着迷,这种区别于传统的顺序式编程,没准未来能在编程世界开辟一片天地呢! 然后接触到了 WebFlux 框架,也是充满了浓厚的兴趣,想好好琢磨一番,奈何中文资料实在太少,就打起了英文文档的主意,可惜英文水平实在捉急,总是看下一句,忘了上一句。诶,要不咱一句句翻译出来吧,这样读起来就通顺了,顺便可以造福下后来学习者(想着翻译的东西要被人看,也是一份坚持的动力)。 翻译并没有逐字逐句去纠结,力求语义通顺,有理解错误的地方,还麻烦大家指出,一起学习探讨。另外,文中还补充了一些自己练习的 demo。 原文链接: https://docs.spring.io/spring-boot/docs/2.1.7.RELEASE/reference/htmlsingle/#boot-features-webflux github 练习 demo: https://github.com/JMCuixy/webflux <b style="color:red">tips:</b>翻译是一项提高英语和学习技能一举两得的事呀! 2. WebFlux 简介 Spring WebFlux 是 Spring 5.0 引入的新的响应式框架,区别于 Spring MVC

SpringBoot进阶

六眼飞鱼酱① 提交于 2020-04-14 07:19:38
【今日推荐】:为什么一到面试就懵逼!>>> 没想到把,SpringBoot虽然简化了开发流程,但要学的东西还有很多 1. Spring Boot简介 采用约定大于配置,简化Spring开发步骤与复杂的部署流程 快速创立可独立运行的Spring项目以及集成主流框架 嵌入式Servlet容器,无需打war包 starter自动依赖与版本控制 大量的自动配置,可修改默认值 需要xml,无代码生成,开箱即用 准生产环境的运行时应用监控 与其他框架天然集成 整合Spring技术栈的大框架 2. 入门解析 1.创建maven工程jar 2.导入父项目与依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> 3.创建主程序 // 标注主程序类

b2b2c系统jwt权限源码分享part2

女生的网名这么多〃 提交于 2020-04-09 18:17:02
  在上一篇《 b2b2c系统jwt权限源码分享part1 》中和大家分享了b2b2c系统中jwt权限的基础设计及源码,本文继续和大家分享jwt和spring security整合部分的思路和源码。 在上一篇文章中已经分享了关键的类图: 如上图所示,权限的校验主要涉及到四个类: AbstractAuthenticationService BuyerAuthenticationService SellerAuthenticationService AdminAuthenticationService AbstractAuthenticationService 对于三端(买家买家管理端)验权的公用部分我们抽象在AbstractAuthenticationService中: public abstract class AbstractAuthenticationService implements AuthenticationService { @Autowired protected TokenManager tokenManager; private final Logger logger = LoggerFactory.getLogger(getClass()); /** * 单例模式的cache */ private static Cache<String, Integer>

Java使用POM一JAR包的形式管理JavaScript文件-WebJars

点点圈 提交于 2020-03-14 03:47:05
说明:原来JS框架还可以使用POM进行管理的。WebJars是一个很神奇的东西,可以让大家以JAR包的形式来使用前端的各种框架、组件。 什么是WebJars 什么是WebJars?WebJars是将客户端(浏览器)资源(JavaScript,Css等)打成jar包文件,以对资源进行统一依赖管理。WebJars的jar包部署在Maven中央仓库上。 为什么使用 我们在开发Java web项目的时候会使用像Maven,Gradle等构建工具以实现对jar包版本依赖管理,以及项目的自动化管理,但是对于JavaScript,Css等前端资源包,我们只能采用拷贝到webapp下的方式,这样做就无法对这些资源进行依赖管理。那么WebJars就提供给我们这些前端资源的jar包形势,我们就可以进行依赖管理。 如何使用 1、 WebJars主官网 查找对于的组件,比如Vuejs <dependency>   <groupId>org.webjars.bower</groupId>   <artifactId>vue</artifactId>   <version>1.0.21</version> </dependency> 2、页面引入 <link th:href="@{/webjars/bootstrap/3.3.6/dist/css/bootstrap.css}" rel="stylesheet

Spring Boot---webjars

允我心安 提交于 2020-03-12 04:40:10
Spring Boot—webjars 可以使用webjars 进行静态资源的引用,如JS,CSS等 引入的资源可以通过/webjars/资源目录来查找 来源: CSDN 作者: qq_44257753 链接: https://blog.csdn.net/qq_44257753/article/details/104804201

以Jar形式为Web项目提供资源文件

橙三吉。 提交于 2020-03-07 13:15:48
以Jar形式为Web项目提供资源文件 http://www.webjars.org/ Web前端使用了越来越多的JS或CSS如jQuery, Backbone.js 和Twitter Bootstrap等等,平时我们是将这些Web资源拷贝到Java的目录下,这种通过人工方式拷贝可能会产生版本误差,拷贝版本错误,前端页面就无法正确展示。 WebJars是以Jar形式为Web项目提供资源文件,然后借助Maven这些依赖库的管理,保证这些Web资源版本唯一性。 Webjars多应用于基于Spring Boot创建微服务项目,需要打包所有资源为可执行的jar。 WebJars是将这些通用的Web前端资源打包成Java的Jar包,然后借助Maven工具对其管理,保证这些Web资源版本唯一性,升级也比较容易。关于webjars资源,有一个专门的网站http://www.webjars.org/,我们可以到这个网站上找到自己需要的资源,在自己的工程中添加入maven依赖,即可直接使用这些资源了 1、使用依赖 <dependency> <groupId>org.webjars</groupId> <artifactId>webjars-locator</artifactId> <version>0.1</version> </dependency> <dependency> <groupId

webjars使用

元气小坏坏 提交于 2020-03-02 22:58:11
目的: Web前端使用了越来越多的JS或CSS,如jQuery,Backbone.js和Bootstrap。一般情况下,我们是将这些Web资源拷贝到Java Web项目的webapp相应目录下进行管理。这种通过人工方式管理可能会产生版本误差,拷贝版本错误,漏拷等现象,导致前端页面无法正确展示,版本不一致,文件混乱等,导致出现一些莫名其妙的错误等。 使用方法: 1.引入maven依赖 <dependency> <groupId>org.webjars.bower</groupId> <artifactId>jquery</artifactId> <version>3.2.1</version> </dependency> 2.增加资源映射, Spring MVC 的入口是 DispatcherServlet,所有的请求都会汇集于该类,而后分发给不同的处理类。如果不做额外的配置,是无法访问静态资源的。 2.1java方式 @Configuration @EnableWebMvc public class WebConfig extends WebMvcConfigurerAdapter { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry