<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fxbar的博客]]></title><description><![CDATA[做一个勤奋刻苦有实干的人]]></description><link>https://blog.youkuaiyun.com/qq_21683643</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_21683643]]></copyright><item><title><![CDATA[统一响应实体]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/120784168</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/120784168</guid><author>qq_21683643</author><pubDate>Fri, 15 Oct 2021 15:23:50 +0800</pubDate><description><![CDATA[统一响应实体
import java.io.Serializable;

/**
 * 统一响应实体
 * &lt;p&gt;
 * &lt;br/&gt;
 * 格式如下
 *
 * &lt;pre&gt;
 * {
 *     "content": "自定义业务Response",
 *     "message": "操作成功",
 *     "state": 1,
 *     "uiMessage": "自定义消息，用于前端显示"
 * }
 * &lt;/pre&gt;
 */
public]]></description><category></category></item><item><title><![CDATA[基于SpringBoot整合Swagger2项目API版本控制]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/119533150</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/119533150</guid><author>qq_21683643</author><pubDate>Mon, 09 Aug 2021 10:55:28 +0800</pubDate><description><![CDATA[基于SpringBoot整合Swagger2项目API版本控制
SpringBoot项目pom配置
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/]]></description><category></category></item><item><title><![CDATA[RabbitMQ的消息确认机制]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/114117983</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/114117983</guid><author>qq_21683643</author><pubDate>Fri, 26 Feb 2021 10:37:38 +0800</pubDate><description><![CDATA[RabbitMQ的消息确认机制
一：确认种类
RabbitMQ的消息确认有两种。
一种是消息发送确认。这种是用来确认生产者将消息发送给交换器，交换器传递给队列的过程中，消息是否成功投递。发送确认分为两步，一是确认是否到达交换器，二是确认是否到达队列。
第二种是消费接收确认。这种是确认消费者是否成功消费了队列中的消息。
二：消息发送确认
（1）ConfirmCallback
通过实现ConfirmCallBack接口，消息发送到交换器Exchange后触发回调。
RabbitMQ的消息确认机制
使用该功能需要]]></description><category></category></item><item><title><![CDATA[Rabbitmq的死信队列和延时队列]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/114117413</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/114117413</guid><author>qq_21683643</author><pubDate>Fri, 26 Feb 2021 10:33:44 +0800</pubDate><description><![CDATA[Rabbitmq的死信队列和延时队列
一、死信队列
死信队列其实和普通的队列没啥大的区别，都需要创建自己的Queue、Exchange,然后通过RoutingKey绑定到Exchange上去，只不过死信队列的RoutingKey和Exchange要作为参数，绑定到正常的队列上去，一种应用场景是正常队列里面的消息被basicNack或者reject时，消息就会被路由到正常队列绑定的死信队列中，还有一种还有常用的场景就是开启了自动签收，然后消费者消费消息时出现异常，超过了重试次数，那么这条消息也会进入死信队列，]]></description><category></category></item><item><title><![CDATA[ckeditor富文本编辑器的使用和图片上传]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/113833989</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/113833989</guid><author>qq_21683643</author><pubDate>Wed, 17 Feb 2021 14:29:06 +0800</pubDate><description><![CDATA[&nbsp; &nbsp; &nbsp;项目开发需要用到在线编辑和图片上传，最终讨论使用ckeditor，原因就是其丰富的API。考虑到最新版本ckeditor5可能不够稳定，我们选择使用ckedtior4.9.2版本。官网链接：ckeditor官网 
特别注意：下面截图中url中的/editor/upload/1?其中的&nbsp;/1&nbsp;是根据自己需求添加不同类型数据上传时候的区分，可以去掉，写成/ed...]]></description><category></category></item><item><title><![CDATA[Mybatis和Mybatis-Plus时间范围查询]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/109530346</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/109530346</guid><author>qq_21683643</author><pubDate>Fri, 06 Nov 2020 13:59:01 +0800</pubDate><description><![CDATA[一、mysql
1.传入时间范围参数类型是字符串
 &lt;if test="startTime!=null and startTime.trim() neq ''"&gt;
    and date_format(create_time,'%Y-%m-%d %H:%i:%s') &amp;gt;= str_to_date(#{startTime},'%Y-%m-%d %H:%i:%s')
  &lt;/if&gt;
  &lt;if test="endTime!=null and endTime.trim]]></description><category></category></item><item><title><![CDATA[SpringBoot使用Redis实现分布式锁]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/108774056</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/108774056</guid><author>qq_21683643</author><pubDate>Thu, 24 Sep 2020 14:42:56 +0800</pubDate><description><![CDATA[前言
在单机应用时代，我们对一个共享的对象进行多线程访问的时候，使用java的synchronized关键字或者ReentrantLock类对操作的对象加锁就可以解决对象的线程安全问题。
分布式应用时代这个方法却行不通了，我们的应用可能被部署到多台机器上，运行在不同的JVM里，一个对象可能同时存在多台机器的内存中，怎样使共享对象同时只被一个线程处理就成了一个问题。
在分布式系统中为了保证一个对象在高并发的情况下只能被一个线程使用，我们需要一种跨JVM的互斥机制来控制共享资源的访问，此时就需要用到我们的分布式]]></description><category></category></item><item><title><![CDATA[利用Power Design 进行数据库设计（超详细）]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/108581740</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/108581740</guid><author>qq_21683643</author><pubDate>Mon, 14 Sep 2020 16:25:05 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/Fly_1213/article/details/88813490

]]></description><category></category></item><item><title><![CDATA[Idea发布项目到Docker]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/108581327</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/108581327</guid><author>qq_21683643</author><pubDate>Mon, 14 Sep 2020 16:11:28 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/adawoo/p/11049905.html

]]></description><category></category></item><item><title><![CDATA[RestTemplateUtils工具类]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/108356848</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/108356848</guid><author>qq_21683643</author><pubDate>Wed, 02 Sep 2020 10:13:17 +0800</pubDate><description><![CDATA[Spring 远程调用Rest服务工具类，包含Get、Post、Put、Delete四种调用方式。
依赖jar
    &lt;dependency&gt;
        &lt;groupId&gt;org.springframework&lt;/groupId&gt;
        &lt;artifactId&gt;spring-context&lt;/artifactId&gt;
        &lt;version&gt;5.0.9.RELEASE&lt;/version&gt;
    &]]></description><category></category></item><item><title><![CDATA[三种常见的限流算法]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/107683025</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/107683025</guid><author>qq_21683643</author><pubDate>Thu, 30 Jul 2020 10:06:29 +0800</pubDate><description><![CDATA[1、计数器算法
计数器算法是限流算法里最简单也是最容易实现的一种算法。比如我们规定，对于A接口来说，我们1分钟的访问次数不能超过100个。那么我们可以这么做：在一开 始的时候，我们可以设置一个计数器counter，每当一个请求过来的时候，counter就加1，如果counter的值大于100并且该请求与第一个 请求的间隔时间还在1分钟之内，那么说明请求数过多；如果该请求与第一个请求的间隔时间大于1分钟，且counter的值还在限流范围内，那么就重置 counter，具体算法的示意图如下：

具体的Java代]]></description><category></category></item><item><title><![CDATA[Spring Cloud Feign的文件上传实现]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/107406920</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/107406920</guid><author>qq_21683643</author><pubDate>Fri, 17 Jul 2020 14:07:41 +0800</pubDate><description><![CDATA[在Spring Cloud封装的Feign中并不直接支持传文件，但可以通过引入Feign的扩展包来实现，本来就来具体说说如何实现。
服务提供方（接收文件）
服务提供方的实现比较简单，就按Spring MVC的正常实现方式即可，比如：
@EnableFeignClients
@EnableDiscoveryClient
@SpringBootApplication
public class Application {

    @RestController
    public class UploadCo]]></description><category></category></item><item><title><![CDATA[SpringCloud : 多个 @FeignClient 注解 value 设置为同一个应用的解决方案]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/107406819</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/107406819</guid><author>qq_21683643</author><pubDate>Fri, 17 Jul 2020 14:02:38 +0800</pubDate><description><![CDATA[Feign 版本10.1.0
Spring 版本 5.1.5.RELEASE
SpringBoot 版本 2.1.5.RELEASE
SpringCloud 版本 2.1.1.RELEASE

在微服务架构中，当我们需要进行服务间调用时可以选择feign组件，
现在遇到的问题是： 当同一个服务，声明多个feign实例时，启动时直接报错。
解决办法，通过 Feign.builder() 手动生成代理类。     另一种见评论区：#允许bean实例同名覆盖 allow-bean-definition-over.]]></description><category></category></item><item><title><![CDATA[Java图片水印工具类]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/85101566</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/85101566</guid><author>qq_21683643</author><pubDate>Fri, 10 Jul 2020 14:38:50 +0800</pubDate><description><![CDATA[package com.atguigu.sssp.util;

import java.awt.AlphaComposite;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.RenderingHints;
import j...]]></description><category></category></item><item><title><![CDATA[优秀的基于VUE移动端UI框架合集]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/101011511</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/101011511</guid><author>qq_21683643</author><pubDate>Fri, 10 Jul 2020 14:38:22 +0800</pubDate><description><![CDATA[vonic 一个基于 vue.js 和 ionic 样式的 UI 框架，用于快速构建移动端单页应用，很简约，是我喜欢的风格 star 2.3k
2.vux 基于WeUI和Vue(2.x)开发的移动端UI组件库 star 10k
基于webpack+vue-loader+vux可以快速开发移动端页面，配合vux-loader方便你在WeUI的基础上定制需要的样式。
3.Mint UI 由饿了么前端...]]></description><category></category></item><item><title><![CDATA[vue的UI框架集合(移动端+pc端)]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/101011747</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/101011747</guid><author>qq_21683643</author><pubDate>Fri, 10 Jul 2020 14:38:12 +0800</pubDate><description><![CDATA[1. vonic 一个基于 vue.js 和 ionic 样式的 UI 框架，用于快速构建移动端单页应用，很简约，是我喜欢的风格 star 2.3k

中文文档 在线预览

2.vux 基于WeUI和Vue(2.x)开发的移动端UI组件库 star 10k

基于webpack+vue-loader+vux可以快速开发移动端页面，配合vux-loader方便你在WeUI的基础上定制需要的样式。
...]]></description><category></category></item><item><title><![CDATA[vue 移动端PC端选用的ui框架]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/101011819</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/101011819</guid><author>qq_21683643</author><pubDate>Fri, 10 Jul 2020 14:37:24 +0800</pubDate><description><![CDATA[1.pc端的项目，最好的选择是ElementUI。（pc端）
一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。Element是饿了么前端开源维护的Vue UI组件库，更新频率还是很高的，基本一周到半个月都会发布一个新版本。组件齐全，基本涵盖后台所需的所有组件，文档讲解详细，例子也很丰富。没有实际使用过，网上的Element教程和文章比较多。Element应该是一个质量比较...]]></description><category></category></item><item><title><![CDATA[MongoDB 聚合 -- 连表查询]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/90268770</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/90268770</guid><author>qq_21683643</author><pubDate>Fri, 10 Jul 2020 14:37:05 +0800</pubDate><description><![CDATA[  在使用MongoDB存储数据的时候，我们查询的时候，有时候难免会需要进行连表查询。但是MongoDB本身是非关系性数据库，连表查询，很多时候，需要我们自己在代码里手工操作。但是从 MongoDB 3.2 版本过后，我们可以使用  $lookup 进行连表查询。下...]]></description><category></category></item><item><title><![CDATA[mysql查询数据分组后保留每组前n条数据]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/100578984</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/100578984</guid><author>qq_21683643</author><pubDate>Fri, 10 Jul 2020 14:36:46 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/smile_life_/article/details/81216926

]]></description><category></category></item><item><title><![CDATA[springboot集成Elasticsearch使用completion suggest实现自动关键字补全]]></title><link>https://blog.youkuaiyun.com/qq_21683643/article/details/102453217</link><guid>https://blog.youkuaiyun.com/qq_21683643/article/details/102453217</guid><author>qq_21683643</author><pubDate>Fri, 10 Jul 2020 14:36:27 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/wangxudongx/article/details/87275232

]]></description><category></category></item></channel></rss>