SpringBoot学习笔记:Redis缓存】的更多相关文章

SpringBoot学习笔记:Redis缓存 关于Redis Redis是一个使用ANSI C语言编写的免费开源.支持网络.可基于内存亦可以持久化的日志型.键值数据库.其支持多种存储类型,包括String(字符串).List(链表).Set(集合).有序集合.Hash(哈希类型). 用Redistemplate操作Redis 在Java中操作Redis可以使用Jedis.Spring Data Redis是基于Redis来实现的,它在Jedis上面封装了一层,让我们操作Redis更加简单. 连接…
SpringBoot个人感觉比SpringMVC还要好用的一个框架,很多注解配置可以非常灵活的在代码中运用起来: springBoot学习笔记: .一.aop: 新建一个类HttpAspect,类上添加两个注解:@Aspect (这个是说明aop文件)@Component(这个加载到spring容器内), HttpAspect添加日志方法: @Before("execution(public * com.imooc.controller.GirlController.*(..))")p…
前言 前面写过一个Springboot学习笔记(一)-线程池的简化及使用,发现有个缺陷,打个比方,我这个线程池写在一个公用服务中,各项参数都定死了,现在有两个服务要调用它,一个服务的线程数通常很多,而另一个则很少,那么线程多的服务会感觉这个线程池小,另一个又觉得浪费资源,这样很不灵活,所以希望将这个线程池被引用的时候可以自定义配置.比如在配置文件中写下线程池的核心线程数,最大线程数等等,根据不同的需要配置不同的参数. 实现 思路 前面学过[转]Spring Boot干货系列:(二)配置文件解析和…
SpringBoot学习笔记(14):使用SpringBootAdmin管理监控你的应用 Spring Boot Admin是一个管理和监控Spring Boot应用程序的应用程序.本文参考文档: 官方文档:http://codecentric.github.io/spring-boot-admin/1.5.6 GITHUB仓库:https://github.com/codecentric/spring-boot-admin 纯洁的微笑:http://www.ityouknow.com/spri…
SpringBoot学习笔记(3):静态资源处理 在web开发中,静态资源的访问是必不可少的,如:Html.图片.js.css 等资源的访问. Spring Boot 对静态资源访问提供了很好的支持,基本使用默认配置就能满足开发需求. 本文转自互联网,仅供学习参考!原文链接 一.默认静态资源映射 Spring Boot 对静态资源映射提供了默认配置Spring Boot 默认将 /** 所有访问映射到以下目录: classpath:/static classpath:/public classp…
SpringBoot学习笔记(2):用Spring Security来保护你的应用 快速开始 本指南将引导您完成使用受Spring Security保护的资源创建简单Web应用程序的过程. 参考资料: SpringSecurity中文参考文档:点击进入 IBM参考文档:点击进入 使用Maven进行构建 首先,设置一个基本的构建脚本.在使用Spring构建应用程序时,您可以使用任何您喜欢的构建系统,但此处包含了使用Maven所需的代码.如果您不熟悉Maven,请参阅使用Maven构建Java项目.…
SpringBoot学习笔记(7):Druid使用心得 快速开始 添加依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>${druid-version}</version> </dependency> 配置属性 JDBC配置 spring.datasource.druid.url= # 或…
SpringBoot学习笔记(4):与前端交互的日期格式 后端模型Date字段解析String 我们从前端传回来表单的数据,当涉及时间.日期等值时,后端的模型需将其转换为对应的Date类型等. 我们可以使用DateTimeFormat注解,在对应模型的字段上标注: public class MyModel{ @DateTimeFormat(pattern = "yyyy-MM-dd") private Datebegin_date; ... } 返回数据Date字段格式化 当我们查出来…
SpringBoot:学习笔记(4)——添加自定义的过滤器 引入自定义过滤器 SpringBoot提供的前端控制器无法满足我们产品的需求时,我们需要添加自定义的过滤器. SpringBoot添加过滤器的注解方式 1.编写过滤器代码 package com.mrsaber.security; import org.springframework.core.annotation.Order; import javax.servlet.*; import javax.servlet.annotatio…
SpringBoot学习笔记(13):日志框架——SL4J 快速开始 说明 SpringBoot底层选用SLF4J和LogBack日志框架. SLF4J的使用 SpringBoot的底层依赖关系 1.SpringBoot底层使用Slf4j+LogBack的方式进行日志记录. 2.SpringBoot将其他日志框架替换成了SLF4J. 如果我们要引入其他框架,一定要把这个框架的默认日志依赖移除掉! 比如SpringBoot基于Spring实现,但是将Spring的默认日志框架移除了. <depen…
SpringBoot学习笔记(12):计划任务 计划任务 在企业的实践生产中,可能需要使用一些定时任务,如月末.季末和年末需要统计各种各样的报表,每周自动备份数据等. 在Spring中使用定时任务 1.加入@EnableScheduling注解,以启用定时任务机制 @EnableScheduling @SpringBootApplication public class Application { public static void main(String[] args) { SpringAp…
SpringBoot学习笔记(11):使用WebSocket构建交互式Web应用程序 快速开始 本指南将引导您完成创建“hello world”应用程序的过程,该应用程序在浏览器和服务器之间来回发送消息. WebSocket是一个非常薄,轻量级的TCP层.它使得非常适合使用“子协议”来嵌入消息.在本指南中,我们将深入研究并使用Spring的STOMP消息来创建交互式Web应用程序. 我们将建立一个服务用来接收一个携有用户名称的消息,然后作为回应,推送一个问候语到客户订阅的队列中. 本节内容的思维…
SpringBoot学习笔记(10):使用MongoDB来访问数据 快速开始 本指南将引导您完成使用Spring Data MongoDB构建应用程序的过程,该应用程序将数据存储在MongoDB(基于文档的数据库)中并从中检索数据.关于MongoDB的相关教程可以参考其官方文档或者笔者的相关教程,我们主要探讨在SpringBoot中快速开始MongoDB数据库服务的相关操作. 本节内容的思维导图大致如下: 参考教程: https://spring.io/guides/gs/accessing-d…
SpringBoot学习笔记(1):配置Mybatis 反思:如果自己写的笔记自己都看不懂,那就不要拿出来丢人现眼! IDEA插件 Free MyBatis Plugin插件可以让我们的MyBatis开发更加便捷. XML版本配置 我们在开发Mapper时可以将SQL语句放到XML中编写,来实现一些更复杂的操作,如动态SQL.结果集映射等. 配置XML路径 我们首先需要在SpringBoot的配置文件中配置一些属性,首先是XML文件的位置: mybatis.mapper-locations=cl…
SpringBoot学习笔记(8):事物处理 快速入门 在传统的JDBC事务代码开发过程中,业务代码只有一部分,大部分都是与JDBC有关的功能代码,比如数据库的获取与关闭以及事务的提交与回滚.大量的try..catch..finally语句. Spring Boot利用AOP为我们提供了一个数据库事务的约定流程.通过这个约定流程就可以减少大量的冗余代码和一些没必要的异常捕获语句,让开发者更加集中于业务的开发,而不是反复编写如数据库的获取与关闭以及事务的提交与回滚.大量的try..catch..f…
springboot 学习笔记(二) 快速创建一个springboot工程,并引入所需要的依赖 1.利用Spring initializr 来创建一个springboot项目,登陆http://start.spring.io/,看到如下界面 2.根据需要选择是maven或gradel,选择springboot版本时不建议选择snapshot版本,要选择稳定的发行版本,然后填写我们的项目包名.项目名称:group  artifact ,选择需要的依赖包,web项目常用的有  web.mybatis…
背景 在springboot中使用redis缓存结合spring缓存注解,当缓存成功后使用gui界面查看redis中的数据 原因 springboot缓存默认的序列化是jdk提供的 Serializable 方式 解决方法 如果想要序列化成json格式的缓存数据,可以自定义一个redis的config类,设置序列化规则即可,如下: @Configuration public class RedisConfig extends CachingConfigurerSupport { @Autowir…
SpringBoot学习笔记:Swagger实现文档管理 Swagger Swagger是一个规范且完整的框架,用于生成.描述.调用和可视化RESTful风格的Web服务.Swagger的目标是对REST API定义一个标准且和语言无关的接口,可以让人和计算机拥有无须访问源码.文档或网络流量监测就可以发现和理解服务的能力. 集成Swagger管理API文档 项目中集成Swagger 首先是添加swagger的依赖: <!--swagger-spring-boot-starter --> <…
SpringBoot学习笔记:读取配置文件 配置文件 在以往的项目中,我们主要通过XML文件进行框架配置,业务的相关配置会放在属性文件中,然后通过一个属性读取的工具类来读取配置信息.在SpringBoot中,我们只需要将配置放在application.properties中,然后用以下的三种方式即可轻松读取. 需要注意的是,在application.properties中,所有的配置都是以key=value的形式定义的,如下 server.port=9090 server.servlet.con…
SpringBoot学习笔记:自定义拦截器 快速开始 拦截器类似于过滤器,但是拦截器提供更精细的的控制能力,它可以在一个请求过程中的两个节点进行拦截: 在请求发送到Controller之前 在响应发送到Client之前 例如,你可以使用拦截器在将请求发送到控制器之前添加请求头,并在将响应发送到客户端之前添加响应标头. 创建拦截器 创建一个拦截器,需要实现HandlerInterceptor接口,他有三个方法来完成拦截 preHandle(): 用于在将请求发送到控制器之前执行操作.此方法应返回t…
SpringBoot学习笔记:单元测试 单元测试 单元测试(英语:Unit Testing)又称为模块测试,是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部件.在过程化编程中,一个单元就是单个程序.函数.过程等:对于面向对象编程,最小单元就是方法,包括基类(超类).抽象类.或者派生类(子类)中的方法. 引入单元测试 SpringBoot的单元测试是基于JUnit的. Spring Boot中单元测试类写在在src/test/java目录下. 加入依赖…
SpringBoot学习笔记:动态数据源切换 数据源 Java的javax.sql.DataSource接口提供了一种处理数据库连接的标准方法.通常,DataSource使用URL和一些凭据来建立数据库连接. SpringBoot默认提供了针对内存数据库的数据源,如H2.hqldb.Derby等. 配置数据源信息 当我们引入spring-boot-start-jdbc时,SpringBoot会默认使用其绑定的Tomcat-JDBC的数据源. DataSource可由spring.datasour…
本文承接上一篇文章:springboot学习笔记:8. springboot+druid+mysql+mybatis+通用mapper+pagehelper+mybatis-generator+freemarker+layui 请确保根据上一篇文章的源代码完成所有测试之后,再跟随本文,继续配置多数据源: 1.数据库准备 数据库表我们在springboot-mybatis数据之外,新建数据库springboot-mybatis2: springboot-mybatis数据库中有t_class表:…
https://blog.csdn.net/a67474506/article/details/52608855 Spring定义了org.springframework.cache.CacheManager和org.springframework.cache.Cache接口来统一不同的缓存技术,而SpringBoot为我们提供了自动配置多个CacheManager的实现 在不适用任何额外配置的情况下,默认使用SimpleCacheConfiguration SpringBoot通过spring…
1. 使用Redis 在使用redis之前,首先要保证安装或有redis的服务器,接下就是引入redis依赖. pom.xml文件如下 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 由于在SpringBoot中默认提供了一套配置,…
一.整合Druid数据源 Druid是一个关系型数据库连接池,是阿里巴巴的一个开源项目,Druid在监控,可扩展性,稳定性和性能方面具有比较明显的优势.通过Druid提供的监控功能,可以实时观察数据库连接池和SQL查询的工作情况.使用Druid在一定程度上可以提高数据库的访问技能. 1.1 在pom.xml中添加依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artif…
SpringBoot不像之前用spring+springMVC做项目的时候,他不需要配置大量的看上去很乱很复杂的xml配置文件.在SpringBoot中你可以通过java代码和注解配置项目,也可以通过简单的几个配置文件来配置项目. 这篇学习笔记只记录下配置文件的使用,至于用java代码配置的内容下次再写. SpringBoot配置文件 spring的配置文件有两种格式: 1.application.properties 2.application.yml 这两种文件可以选择一种来当作你项目的配置…
@ 目录 一.MongoDB存储文件 1.MongoDB存储小文件 2.MongoDB存储大文件 2.1.GridFS存储原理 2.2.GridFS使用 2.2.1.使用shell命令 2.2.2.使用API 二.SpringBoot整合MongoDB存储文件 1.MongoDB存储小文件 1.1.添加依赖 1.2.配置 1.3.模型层 1.4.持久层 1.5.服务层 1.6.控制层 1.7.工具类 1.8.前端页面 1.9.运行效果 2.MongoDB存储大文件 2.1.依赖 2.2.启动类…
@ 目录 一.OAuth 简介 1.什么是OAuth 2.OAuth 角色 3.OAuth 授权流程 4.OAuth授权模式 4.1.授权码 4.2.隐藏式 4.3.密码式 4.4.凭证式 二.实践 1.密码模式 1.1.授权服务器 1.1.1.依赖 1.1.2.授权服务器配置 1.1.3.Spring Security配置 1.2.资源服务器 1.2.1.资源服务器配置 1.2.2.资源服务接口 1.3.测试 1.3.1.获取token 1.3.2.使用获取到的token访问资源接口 2.授权…
@ 目录 1.@EnableAsync 2.@Async 2.1.无返回值的异步方法 2.1.有返回值的异步方法 3. Executor 3.1.方法级别重写Executor 3.2.应用级别重写Executor 3.3.自定义线程池配置 4.异常处理 5.总结 "异步调用"对应的是"同步调用", 在实际开发中,有时候为了及时处理请求和进行响应,我们可能使用异步调用,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行:异步调用指程…