3 Asurplus、

尚未进行身份认证

我要认证

书山有路勤为径,学海无涯苦作舟!

等级
TA的排名 1k+

【SpringBoot】三十六、SpringBoot整合Redis实现发布/订阅

一、简介1、发布订阅SUBSCRIBE, UNSUBSCRIBE 和 PUBLISH 实现了 发布/订阅消息范例,发送者 (publishers) 不用编程就可以向特定的接受者发送消息 (subscribers). Rather, 发布的消息进入通道,不需要知道有没有订阅者. 订阅者发表感兴趣的一个或多个通道,并且只接受他们感兴趣的消息,不管发布者是不是存在. 发布者和订阅者的解耦可以允许更大的伸缩性和更多动态的网络拓扑。2、说明本篇文章是继:【SpringBoot】三十四、SpringBoot

2020-10-23 11:31:12

【SpringBoot】三十五、SpringBoot整合Redis监听Key过期事件

在实际的开发项目中,监听 key 的过期事件,应用非常广泛,例如:订单超时未支付,优惠券过期等等一、修改 Redis 配置文件1、在 Redis 的安装目录2、找到 redis.windows.conf 文件,搜索 “notify-keyspace-events”修改为 “notify-keyspace-events Ex”,这样我们的 Redis 就支持 key 过期事件的监听了二、注入redisMessageListenerContainer注意:本偏文章衔接与上篇文章:【Sprin

2020-10-23 11:04:33

【SpringBoot】三十四、SpringBoot整合Redis实现序列化存储Java对象

前面我们已经介绍过【SpringBoot】十七、SpringBoot 中整合 Redis,我们可以看出,在 SpringBoot 对 Redis 做了一系列的自动装配,使用还是非常方便的一、背景1、思考‘通过我们前面的学习,我们已经可以往 Redis 中存入字符串,那么我们要往 Redis 中存入 Java 对象该怎么办呢?2、方案我们可以将 Java 对象转化为 JSON 对象,然后转为 JSON 字符串,存入 Redis,那么我们从 Redis 中取出该数据的时候,我们也只能取出字符串,并转

2020-10-23 10:27:23

Redis的基本用法以及场景分析

Redis(Remote Dictionary Server)简介:Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。Redis 与其他 key - value 缓存产品有以下三个特点:1、Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。2、Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。3、Redis支持数据的备份,即master-sla

2020-10-19 14:12:39

MySQL中的only_full_group_by模式

一、背景ERROR 1055 (42000): Expression #7 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘postscan.verifyDelayLog.auditor’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_f

2020-09-23 10:30:22

【SpringBoot】三十三、SpringBoot+LayUI后台管理系统开发脚手架

本期给大家推荐我自己写一个开源项目:springboot-mini,本着减少大量重复开发工作的原则,使得在项目中能够实现快速开发1、前言本项目本着避免重复造轮子的原则,建立一套快速开发JavaWEB项目(springboot-mini),能满足大部分后台管理系统基础开发功能,使得开发人员直接可从业务模块开始,减少大量的重复开发工作。前端框架使用 layui-mini(https://gitee.com/zhongshaofa/layuimini)2、项目地址https://gitee.com/asu

2020-09-05 10:06:02

【SpringBoot】三十二、SpringBoot项目Jar包如何瘦身部署

一、背景SpringBoot 为我们快速开发提供了很好的架子,使得我们只需要少量配置就能开始我们的开发工作,但是当我们需要打包上传部署时,却是很神伤的一个问题,因为打出来的 Jar 包少则十几兆,多则一百来兆,我们需要上传至公网服务器时,是非常慢的,这就引出了今天的主题,SpringBoot项目Jar包如何瘦身部署1、思路分析 jar,我们可以看出,jar 包里面分为以下三个模块分为 BOOT-INF,META-INF,org 三个部分,打开 BOOT-INF可以看到有 classes,li

2020-09-04 11:23:45

写给大忙人看的 - Java中图片压缩上传至MinIO服务器(四)

之前文章已经介绍了 MinIO 的环境搭建,已经对文件的上传下载方法,本篇文章一起与大家来学习图片压缩上传的方法1、背景最近客户总抱怨 APP 中图片显示较慢, 升级服务器带宽又没有多的预算,查看原因,是因为现在大家都是用的智能手机拍照,拍出来的照片小则 2-3 M,大则十几 M,所以导致图片显示较慢。思考再三,决定将图片进行压缩再上传图片服务器来解决图片显示慢的问题

2020-08-31 15:39:00

Java中找出List集合中属性名为key属性值为value的对象

前言:在日常开发中,我们需要从一个 List 集合中找出其中某一个对象,下面就介绍如何从 List 集合中找出属性名为 key 属性值为 value 的对象1、方法 getObjectByKeyAndValue/** * 在一个实体list中,找出属性是key,值为value的实体 * * @param list * @param key * @param value * @param <T> * @return */private static <T> T g

2020-08-28 11:20:28

【SpringBoot】三十一、搭建SpringBoot父子Module工程项目

在本系列第一篇文章,我们讲解了如何在 IDEA 中搭建第一个 SpringBoot 项目:【SpringBoot】一、创建第一个SpringBoot项目,本篇文章,我们讲解如何在 IDEA 中搭建 SpringBoot 的父子 Module 工程项目1、Module 工程项目 简介多模块项目,适用于一些比较大的项目,通过合理的模块拆分,实现代码的复用,便于维护和管理。尤其是一些开源框架,也是采用多模块的方式,提供插件集成,用户可以根据需要配置指定的模块。2、创建一个 SpringBoot 项目就是创

2020-08-25 22:09:35

【SpringBoot】三十、SpringBoot中如何启动多个工程实例

最近学习到 SpringCloud,需要进行服务注册,启动多个实例,那么在 IDEA 开发工具中,如何启动多个工程实例,下面一起来看看吧1、IDEA 中我们需要在开发阶段启动多个工程实例,我们可以这样做然后,勾选中 Allow parallel runAllow parallel run – 允许多个相同的实例运行当我们启动了一个实例后,修改 application.yml 中的 server-port# 服务端口server: port: 8762使得不同的工程实例运行在不同的端

2020-08-25 21:24:45

你应该知道的这些Mybatis-Plus使用技巧

最近在用 Mybatis-Plus,嗯,真香!!!今天就来说说 Mybatis-Plus 的那些使用技巧1、条件查询(QueryWrapper)QueryWrapper<UserInfo> queryWrapper = new QueryWrapper<>();queryWrapper.eq("age", 20);List<UserInfo> list = userInfoMapper.selectList(queryWrapper );以上就是查询用户表,用

2020-08-19 10:17:07

Java中SpringContext工具类

Java中SpringContext工具类代码如下:import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework.stereotype.Component;import org.sprin

2020-08-11 15:22:32

Java中根据IP地址获取地理位置

Java中根据IP地址获取地理位置代码如下:import cn.hutool.http.HttpRequest;import cn.hutool.http.HttpResponse;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import org.apache.commons.lang3.StringUtils;/** * 获取地址工具类 * * @Author Lizhou

2020-08-11 15:19:20

Java中获取客户端真实IP地址

获取IP地址在做登录日志的时候会用到,Java中获取客户端真实IP地址代码如下:import org.apache.commons.lang3.StringUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import javax.servlet.http.HttpServletRequest;/** * 获取IP地址 * * @Author Lizhou */public class IPUtils {

2020-08-11 15:17:20

Ifram框架如何在登录过期后跳出Ifram框架

1、文章背景我们在做后台项目管理时,常用 Ifram 框架来加载页面,即:<iframe src="url"></iframe>我们使用 iframe 标签来加载页面,该 src 可以指向不同的页面,从而我们可以在一个网页中打开更多的页面,但是我们也尽可能地需要控制同事打开的网页数,避免客户端消耗太大导致网页崩溃,如下:2、问题描述那上一步,我们已经了解了 Ifram 框架,整体大概分为:菜单栏,导航栏,和主体 Ifram 内容,那么当我们登录信息过期的时候,系统会进行

2020-08-11 15:11:52

【SpringBoot】廿九、SpringBoot中定制异常页面

定制异常页面,可以避免用户产生恐慌心理,使得产品有更好的用户体验。今天来学习在 SpringBoot 中如何定制开发异常页面一、历史回顾在 SpringMVC 年代,我们的异常页面一般配置在 web.xml 文件中,如下:<!-- 配置404页面 --><error-page> <error-code>404</error-code> <location>/error/404.html</location>

2020-08-07 15:44:20

写给大忙人看的 - Java中从MinIO服务器下载文件(三)

前面两章介绍了 MinIO 文件服务器的环境搭建,以及在 Java 中上传文件至 MinIO 文件服务器中,现在,一起来看下如何从 MinIO 文件服务器中下载文件吧1、获取文件对象我们在 MinIO 工具类中,获取文件对象的方法,即获取文件的输入流对象/** * 获取文件 * * @param bucketName bucket名称 * @param objectName 文件名称 * @return 二进制流 */@SneakyThrowspublic InputStream ge

2020-08-06 10:59:18

【SpringBoot】廿八、SpringBoot中使用JeecgBoot的Autopoi导出Excel

说到导出 Excel,我们首先会想到 poi、jsxl 等,使用这些工具会显得笨重,学习难度大。今天学习使用 JeecgBoot 中的 Autopoi 导出 Excel,底层基于 easypoi,使用简单,还支持数据字典方式一、开发前戏1、引入 maven 依赖<!-- AutoPoi Excel工具类--><dependency> <groupId>org.jeecgframework</groupId> <artifactId

2020-08-05 20:51:39

【SpringBoot】廿七、SpringBoot中使用Ehcache

EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点,是 Hibernate 中默认的CacheProvider。用惯了 Redis,很多人可能已经忘记了还有 EhCache 这么一个缓存框架一、简介EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点,是 Hibernate 中默认CacheProvider。Ehcache 是一种广泛使用的开源 Java 分布式缓存。主要面向通用缓存,Java EE 和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,

2020-07-24 15:01:03

查看更多

勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获得
  • 签到王者
    签到王者
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 原力探索
    原力探索
    参与《原力计划【第二季】——打卡挑战》的文章入选【每日精选】的博主将会获得此勋章。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。
  • 分享小兵
    分享小兵
    成功上传3个资源即可获取