今天来聊聊 Spring Boot 整合 Freemarker。 Freemarker 简介 这是一个相当老牌的开源的免费的模版引擎。 好了,这是一个简单的介绍,接下来我们来看看 Freemarker 和 Spring Boot 的一个整合操作。 1.创建工程 首先创建一个 Spring Boot 工程,引入 Freemarker 依赖,如下图: ? <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker 结语 本文和大家简单聊一聊 Spring Boot 整合 Freemarker,算是对 Spring Boot2 教程的一个补充(后面还会有一些补充),有问题欢迎留言讨论。
今天松哥就来和大家聊聊 Spring Boot 中使用 Ehcache 的情况。 相信看完本文,大家对于[Spring Boot2 系列教程(二十六)Spring Boot 整合 Redis]一文中的第二种方案会有更加深刻的理解。 项目创建 首先,来创建一个 Spring Boot 项目,引入 Cache 依赖: ? 工程创建完成后,引入 Ehcache 的依赖,Ehcache 目前有两个版本: ? > <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId Boot 整合 Ehcache 的用法,其实说白了还是 Spring Cache 的用法。
项目创建成功之后,记得添加 Druid 数据库连接池依赖(注意这里可以添加专门为 Spring Boot 打造的 druid-spring-boot-starter,而不是我们一般在 SSM 中添加的 Druid),所有添加的依赖如下: <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter </groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId >org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency 2.
早期的 Spring Boot 中还支持使用 Velocity 作为页面模板,现在的 Spring Boot 中已经不支持 Velocity 了,页面模板主要支持 Thymeleaf 和 Freemarker ,当然,作为 Java 最最基本的页面模板 Jsp ,Spring Boot 也是支持的,只是使用比较麻烦。 今天我们主要来看看 Thymeleaf 在 Spring Boot 中的整合! 整合 创建项目 Spring Boot 中整合 Thymeleaf 非常容易,只需要创建项目时添加 Thymeleaf 即可: ? >spring-boot-starter-web</artifactId> </dependency> 当然,Thymeleaf 不仅仅能在 Spring Boot 中使用,也可以使用在其他地方,只不过
今天要和大家聊的是在 Spring Boot 项目中,如何开启 https 配置,为我们的接口保驾护航。 将上面生成的 javaboy.p12 拷贝到 Spring Boot 项目的 resources 目录下。 配置完成后,就可以启动 Spring Boot 项目了,此时如果我们直接使用 Http 协议来访问接口,就会看到如下错误: ? 改用 https 来访问 ,结果如下: ? 请求转发 考虑到 Spring Boot 不支持同时启动 HTTP 和 HTTPS ,为了解决这个问题,我们这里可以配置一个请求转发,当用户发起 HTTP 调用时,自动转发到 HTTPS 上。 结语 Spring Boot 中加入 https 其实很方便。
回顾热部署 Spring Boot 中的热部署相信大家都用过吧,只需要添加 spring-boot-devtools 依赖就可以轻松实现热部署。 Spring Boot 中热部署最最关键的原理就是两个不同的 classloader: base classloader restart classloader 其中 base classloader Spring Boot 中热部署的原理就是当代码发生变化时,base classloader 不变,而 restart classloader 则会被废弃,被另一个新的 restart classloader 打开 LiveReload 之后,我们启动一个加了 devtools 依赖的 Spring Boot 项目: <dependency> <groupId>org.springframework.boot 整个过程中,我的 Spring Boot 项目并没有重启。
在 Spring Boot 中做权限管理,一般来说,主流的方案是 Spring Security ,但是,仅仅从技术角度来说,也可以使用 Shiro。 今天松哥就来和大家聊聊 Spring Boot 整合 Shiro 的话题! 在 Spring Boot 中,由于 Spring Boot 官方提供了大量的非常方便的开箱即用的 Starter ,当然也提供了 Spring Security 的 Starter ,使得在 Spring Boot 中使用 Spring Security 变得更加容易,甚至只需要添加一个依赖就可以保护所有的接口,所以,如果是 Spring Boot 项目,一般选择 Spring Security 。 原生的整合 创建项目 创建一个 Spring Boot 项目,只需要添加 Web 依赖即可: ?
这我们就不得不提 Spring Boot 项目中一个默认的插件配置 spring-boot-maven-plugin ,这个打包插件存在 5 个方面的功能,从插件命令就可以看出: ? : BOOT-INF/classes/ Spring-Boot-Lib: BOOT-INF/lib/ Build-Jdk-Spec: 1.8 Spring-Boot-Version: 2.1.6.RELEASE Start-Class,这就是可执行 jar 的入口类,Spring-Boot-Classes 表示我们自己代码编译后的位置,Spring-Boot-Lib 则表示项目依赖的 jar 的位置。 一次打包两个 jar 一般来说,Spring Boot 直接打包成可执行 jar 就可以了,不建议将 Spring Boot 作为普通的 jar 被其他的项目所依赖。 如果非要将 Spring Boot 打包成一个普通 jar 被其他项目依赖,技术上来说,也是可以的,给 spring-boot-maven-plugin 插件添加如下配置: <build> <plugins
前面和大伙聊了 Spring Boot 项目的三种创建方式,这三种创建方式,无论是哪一种,创建成功后,pom.xml 坐标文件中都有如下一段引用: <parent> <groupId>org.springframework.boot 基本功能 当我们创建一个 Spring Boot 工程时,可以继承自一个 spring-boot-starter-parent ,也可以不继承自它,我们先来看第一种情况。 \.m2\repository\org\springframework\boot\spring-boot-starter-parent\2.1.7.RELEASE\spring-boot-starter-parent 最后,我们再根据它的 parent 中指定的 spring-boot-dependencies 位置,来看看 spring-boot-dependencies 中的定义: ? 总结 好了,一篇简单的文章,向大伙展示一下 Spring Boot 项目中 parent 的作用,有问题欢迎留言讨论。 ?
搞 Spring Boot 的小伙伴都知道,Spring Boot 中的配置文件有两种格式,properties 或者 yaml,一般情况下,两者可以随意使用,选择自己顺手的就行了,那么这两者完全一样吗 狡兔三窟 首先 application.yaml 在 Spring Boot 中可以写在四个不同的位置,分别是如下位置: 项目根目录下的 config 目录中 项目根目录下 classpath 下的 config 当然这是在 IntelliJ IDEA 中直接配置的,如果项目已经打成 jar 包了,则在项目启动时加入如下参数: java -jar myproject.jar --spring.config.name 当然这四个位置也不是一成不变的,也可以自己定义,有两种方式,一个是使用 spring.config.location 属性,另一个则是使用 spring.config.additional-location SingleRedisConfig> redisConfigs; //省略getter/setter } 优缺点 不同于 properties 文件的无序,yaml 配置是有序的,这一点在有些配置中是非常有用的,例如在 Spring
经过 Spring Boot 的整合封装与自动化配置,在 Spring Boot 中整合Redis 已经变得非常容易了,开发者只需要引入 Spring Data Redis 依赖,然后简单配下 redis Spring3.1 中开始引入了令人激动的 Cache,在 Spring Boot 中,可以非常方便的使用 Redis 来作为 Cache 的实现,进而实现数据的缓存。 工程创建 首先创建一个 Spring Boot 工程,注意创建的时候需要引入三个依赖, web、cache 以及 redis,如下图: ? 对应的依赖内容如下: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache >spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.springframework.boot
声明 本系列第 24、25 两篇文章,分别是 Spring Boot+Jpa 以及 Spring Boot+Jpa 多数据源,不知触发了什么关键字,一直无法发送,找了半天也没找到违规的字词,所以,这两篇文章大家有兴趣可以去我的博客上查看 ,尚不了解 Redis 的小伙伴可以参考这个教程: Redis 教程合集 使用 Java 操作 Redis 的方案很多,Jedis 是目前较为流行的一种方案,除了 Jedis ,还有很多其他解决方案,如下 这是 Spring Data 擅长的事情,那么接下来我们就来看看 Spring Boot 中 Spring Data Redis 的具体用法。 Object k1 = ops.get("k2"); System.out.println(k1); } } 另外需要注意 ,Spring Boot 的自动化配置,只能配置单机的 Spring Boot中,Redis缓存还能这么用!。
Spring Boot 系列教程: Spring Boot:快速入门教程 Spring Boot:整合Swagger文档 Spring Boot:整合MyBatis框架 Spring Boot:实现MyBatis 分页 Spring Boot:集成Druid数据源 Spring Boot:实现MyBatis动态数据源 Spring Boot:实现MyBatis动态创建表 Spring Boot:整合JdbcTemplate Spring Boot:整合Spring Data JPA Spring Boot:整合Shiro权限框架 Spring Boot:整合Spring Security Spring Boot:使用Memcached 缓存 Spring Boot:使用Redis存储技术 源码下载 码云:https://gitee.com/liuge1988/spring-boot-demo.git ---- 作者:朝雨忆轻尘 出处:
Spring Boot 继承自 Spring + SpringMVC, SpringMVC 中对于 RESTful 支持的特性在 Spring Boot 中全盘接收,同时,结合 Jpa 和 自动化配置, 接下来,松哥通过一个简单的案例,来向大家展示 Spring Boot 对于 RESTful 的支持。 > <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-rest 是的,啥都没写,啥都不用写,一个 RESTful 风格的增删改查应用就有了,这就是 Spring Boot 的魅力! ,或者在松哥个人网站 www.javaboy.org 上搜索 JPA,有相关教程参考)。
1、Spring Boot2 系列教程(一)纯 Java 搭建 SSM 项目 2、Spring Boot2 系列教程(二)创建 Spring Boot 项目的三种方式 3、Spring Boot2 系列教程 5、Spring Boot2 系列教程(五)Spring Boot中的 yaml 配置 6、Spring Boot2 系列教程(六)自定义 Spring Boot 中的 starter 7、Spring Boot2 系列教程(七)理解自动化配置的原理 8、Spring Boot2 系列教程(八)Spring Boot 中配置 Https 9、Spring Boot2 系列教程(九)Spring Boot 整合 Thymeleaf 10、Spring Boot2 系列教程(十)Spring Boot 整合 Freemarker 11、Spring Boot2 系列教程(十一)Spring Boot 中的静态资源配置 12、Spring Boot2 系列教程(十二)@ControllerAdvice 的三种使用场景
1 实战 1.1 创建工程 首先 创建一个 Spring Boot 工程,引入 Web、Spring Session 以及 Redis: ? </artifactId> </dependency> </dependencies> 注意: 这里我使用的 Spring Boot 版本是 2.1.4 ,如果使用当前最新版 Spring Boot2.1.5 Boot 将以集群的方式启动 ,为了获取每一个请求到底是哪一个 Spring Boot 提供的服务,需要在每次请求时返回当前服务的端口号,因此这里我注入了 server.port 。 配置完成后,将本地的 Spring Boot 打包好的 jar 上传到 Linux ,然后在 Linux 上分别启动两个 Spring Boot 实例: nohup java -jar sessionshare 2 总结 本文主要向大家介绍了 Spring Session 的使用,另外也涉及到一些 Nginx 的使用 ,虽然本文较长,但是实际上 Spring Session 的配置没啥。
1、Spring Boot2 系列教程(一)纯 Java 搭建 SSM 项目 2、Spring Boot2 系列教程(二)创建 Spring Boot 项目的三种方式 3、Spring Boot2 系列教程 Boot2 系列教程(七)理解自动化配置的原理 8、Spring Boot2 系列教程(八)Spring Boot 中配置 Https 9、Spring Boot2 系列教程(九)Spring Boot Boot2 系列教程(十四)CORS 解决跨域问题 15、Spring Boot2 系列教程(十五)定义系统启动任务的两种方式 16、Spring Boot2 系列教程(十六)定时任务的两种实现方式 多数据源 21、Spring Boot2 系列教程(二十一)整合 MyBatis 22、Spring Boot2 系列教程(二十二)整合 MyBatis 多数据源 23、Spring Boot2 系列教程 32、Spring Boot2 系列教程(三十二)Spring Boot 整合 Shiro 33、Spring Boot2 系列教程(三十三)整合 Spring Security 34、Spring Boot2
Spring Security 是 Spring 家族中的一个安全管理框架,实际上,在 Spring Boot 出现之前,Spring Security 就已经发展了多年了,但是使用的并不多,安全管理这个领域 自从有了 Spring Boot 之后,Spring Boot 对于 Spring Security 提供了 自动化配置方案,可以零配置使用 Spring Security。 因此,一般来说,常见的安全管理技术栈的组合是这样的: SSM + Shiro Spring Boot/Spring Cloud + Spring Security 注意,这只是一个推荐的组合而已,如果单纯从技术上来说 1.项目创建 在 Spring Boot 中使用 Spring Security 非常容易,引入依赖即可: ? >spring-boot-starter-security</artifactId> </dependency> 只要加入依赖,项目的所有接口都会被自动保护起来。
准备 开始本教程的时候希望对下面知识点进行粗略的了解。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web $10$8nMJR6r7lvh9H2INtM2vtuA156dHTcQUyU.2Q2OK/7LwMd/I.HM12", getGrants("ROLE_EDITOR Ehcache 2 的,所以大家可能在参照网上的教程会遇到很多坑。 项目地址及来源:https://github.com/Smith-Cruise/Spring-Boot-Security-JWT-SPA
1、Spring Boot2 系列教程(一)纯 Java 搭建 SSM 项目 2、Spring Boot2 系列教程(二)创建 Spring Boot 项目的三种方式 3、Spring Boot2 系列教程 (三)理解 spring-boot-starter-parent 4、Spring Boot2 系列教程(四)理解配置文件 application.properties ! 5、Spring Boot2 系列教程(五)Spring Boot中的 yaml 配置 6、Spring Boot2 系列教程(六)自定义 Spring Boot 中的 starter 7、Spring Boot2 系列教程(七)理解自动化配置的原理 8、Spring Boot2 系列教程(八)Spring Boot 中配置 Https 9、Spring Boot2 系列教程(九)Spring Boot 整合 Thymeleaf 10、Spring Boot2 系列教程(十)Spring Boot 整合 Freemarker