<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[MDZZ666的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/MDZZ666</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; MDZZ666]]></copyright><item><title><![CDATA[Spring boot 运用策略模式实现，避免多次使用if]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/126473264</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/126473264</guid><author>MDZZ666</author><pubDate>Mon, 22 Aug 2022 20:35:54 +0800</pubDate><description><![CDATA[该篇主要讲解了用Spring boot 运用策略模式实现需求，避免了多次if判断，并将策略逻辑分离]]></description><category></category></item><item><title><![CDATA[SpringEvent 事件发布/监听机制相关源码解析]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/126236866</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/126236866</guid><author>MDZZ666</author><pubDate>Mon, 08 Aug 2022 21:46:50 +0800</pubDate><description><![CDATA[该篇文章是我学习SpringEvent源码实现的过程，看源码的过程中，会涉及到程序启动时系统监听类的注入、自定义监听类的注入、事件发布后如何通知监听类等等，如果一一记录，就显得又长又混乱了，所以本篇只涉及事件发布后如何通知监听类的源码，其他的只会稍微提一提。关于SpringEvent的介绍和应用可以看我之前写的文章SpringEvent介绍与应用。...]]></description><category></category></item><item><title><![CDATA[SpringEvent的介绍以及实例]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/126212173</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/126212173</guid><author>MDZZ666</author><pubDate>Sun, 07 Aug 2022 15:47:19 +0800</pubDate><description><![CDATA[该文章是我学习使用SpirngEvent的过程，现在只写了SpringEvent的应用，后续会写一篇从源码关注SpringEvent的实现过程。SpringEvent在我认为是一个解决业务解耦的办法，运用了观察者模式，用于当一个业务的更改后，需要改变其他业务的状态。例如一个商品的下单，需要修改商品的库存，以及商家的消息发送等等。...]]></description><category></category></item><item><title><![CDATA[设计模式个人理解——工厂模式]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/122496830</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/122496830</guid><author>MDZZ666</author><pubDate>Tue, 02 Aug 2022 23:02:41 +0800</pubDate><description><![CDATA[本篇讲解了工厂模式的应用和与简单工厂模式的区别，如果有描述有误或者误人子弟内容，望在评论区指出。

]]></description><category></category></item><item><title><![CDATA[Leetcode题目记录——两数相加]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/123445150</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/123445150</guid><author>MDZZ666</author><pubDate>Sat, 12 Mar 2022 16:47:02 +0800</pubDate><description><![CDATA[题目

https://leetcode-cn.com/problems/add-two-numbers/

第一次解题思路（失败）

先将两个链表还原成数字，然后相加得出总数，再将总数还原成链表

例如存在这两个链表

将l1 链表还原成数字，也就是342，将l2链表还原成数字，也就是465，342+465=807，再把807化为链表
实现方式
  public ListNode version1(ListNode l1, ListNode l2){
        ListNode end=l1;
  ]]></description><category></category></item><item><title><![CDATA[设计模式个人理解——策略模式]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/122435141</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/122435141</guid><author>MDZZ666</author><pubDate>Wed, 12 Jan 2022 10:00:11 +0800</pubDate><description><![CDATA[前言

本篇是本人在看书学习和项目实际使用后的产生的，下面大多数都是自己的理解，如果有误，望在评论区指出
策略模式的应用场景

策略模式是否要使用，取决于业务场景是否符合，有没有必要。
是否符合
如果业务是处于不同的场景时，采取不同的处理方式的话，就满足符合。  这里举几个业务栗子

如果今天我有1000块，那我就和朋友去游乐园玩、然后再去吃顿好吃的。如果有2000块的话，那我就先买一件好看的衣服，再和朋友去游乐园玩和吃好吃的
商品收银业务，根据店中不同的活动分为正常收费、折扣收费、返利收费，每种收费的方式]]></description><category></category></item><item><title><![CDATA[.NETCore基于RabbitMQ实现延时队列的两种方式]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/120811287</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/120811287</guid><author>MDZZ666</author><pubDate>Mon, 18 Oct 2021 21:05:34 +0800</pubDate><description><![CDATA[前言
此文章用来记录自己学习延时队列过程的文章，并用JAVA和.NET这两种方式实现了简单的Demo。Demo已上传到github，地址最下方，如果文章有什么错误，欢迎评论区指出
延时队列的应用场景

应用下单后，30分钟没有支付的话，则自动取消订单
活动开始前30分钟，提醒参赛者参加活动。
活动结束后，30分钟后提醒未进行评价的参赛人员进行评价
…

上述的场景都可以使用延时队列进行对应的处理。

上面的场景虽说可以通过定时器也可以处理，但有点浪费资源， 而上述的场景时间是不定的，例如有两个活动需要提醒参]]></description><category></category></item><item><title><![CDATA[git stash命令应用场景的理解（附上案例）]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/116858448</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/116858448</guid><author>MDZZ666</author><pubDate>Sat, 15 May 2021 21:06:17 +0800</pubDate><description><![CDATA[前言
此文章是进行git分支开发的过程中所体验的命令，感觉挺好用的，记录下来。
如有错误，可以在评论区指出.

下面的内容比较适合"知道git stash相关命令，但不知道可以用来做什么"的小伙伴查看

git stash 命令




命令
解释
补充




git stash save “message”
保存当前分支所做但提交的操作，回到上个版本的状态
message：是给用来解释保存的东西时用来做什么的


git stash list
用来展示所有保存(stash)的列表
方便查看自己保存了有多]]></description><category></category></item><item><title><![CDATA[通过ajax上传的multipart/form-data的boundary不同导致后端接收不到]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/111872301</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/111872301</guid><author>MDZZ666</author><pubDate>Mon, 28 Dec 2020 18:29:17 +0800</pubDate><description><![CDATA[问题
自己手动通过ajax上传multipart/form-data类型的请求（既有文件，也有表单字段）的时候，服务器接收不到对应的文件和字段。当时的请求ajax是这样的
$.ajax({
         type: 'post',
         url: uplaodUrl,
         data: sendData,
         processData: false,
         contentType: "multipart/form-data; boundary=----We]]></description><category></category></item><item><title><![CDATA[Sql Union和Union ALL的区别（带例子）]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/105993421</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/105993421</guid><author>MDZZ666</author><pubDate>Sat, 09 May 2020 00:37:33 +0800</pubDate><description><![CDATA[前言

一段时间没有用Union和Union，再用的时候忘了怎么用了。。。所以做一篇文章来记录自己学Union和Union的精力。
提前准备
在Sql Server 创建两张表，下面是创建表sql语句。
create table Student1(
   Id varchar(50) not null,
   Name varchar(50) not null,
   Age int not nu...]]></description><category></category></item><item><title><![CDATA[ASP.NET Core 返回Json数据的时候 DateTime类型中间含有T]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/102475704</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/102475704</guid><author>MDZZ666</author><pubDate>Thu, 10 Oct 2019 14:33:18 +0800</pubDate><description><![CDATA[前言

之前也曾几次遇到这个问题，不过那时候只是让前端用replace替换掉，治标不治本，现在想直接治本。
问题

ASP.NET Core 返回Json数据的时候，如果数据中含有DateTime类型的话，那么json化的时候，会含有一个T
   //类似这种含有T的DateTime
   "add_time": "2019-09-22T14:21:37"

解决方法

修改部分ASP.NET C...]]></description><category></category></item><item><title><![CDATA[关于@HTML.Raw的作用]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/101076999</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/101076999</guid><author>MDZZ666</author><pubDate>Fri, 20 Sep 2019 20:39:33 +0800</pubDate><description><![CDATA[前言

之前对HTML.Raw方法的印象不是很深，因为不清楚能用在哪里，最近在处理"展示富文本内容"的时候用上了，为了让自己的印象深一点，便记录下来。
用个栗子来展示下作用。
例如我们的富文本内容(含HTML标签的字符串)在Comment类的Content属性里，我们现在要把这个属性显示在MVC的页面上，我们会这样操作。
&lt;div class="comment_list_txt"&gt;
 ...]]></description><category></category></item><item><title><![CDATA[IdentityServer4 解决oidc自定义Claim无法添加到Cookie的问题]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/100526305</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/100526305</guid><author>MDZZ666</author><pubDate>Wed, 04 Sep 2019 08:51:40 +0800</pubDate><description><![CDATA[前言

此文章是用来记录我遇到问题时，其解决方法、个人想法，如果有误，希望可以指出。
问题

本人在学习IdentityServer4文档中的oidc（使用OpenID Connect添加身份验证）的时候，账号密码验证完了之后，想要向Cookie添加自定义的Claim的时候，却发现添加不了（客户端没有看到我自定义的Claim)。
//这里只展示自定义Claim添加Cookie相关得代码
//自定义...]]></description><category></category></item><item><title><![CDATA[Serilog初识(二)————结构化数据]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/99109081</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/99109081</guid><author>MDZZ666</author><pubDate>Sun, 11 Aug 2019 15:32:24 +0800</pubDate><description><![CDATA[前言

本篇是本人根据对官方文档Structured data章节的内容，所做的理解总结记录，如果有什么不对的地方，望评论指出。

地址：https://github.com/serilog/serilog/wiki/Structured-Data

Serilog的默认序列化
Serilog是一个序列化器，如果我们不主动告诉Serilog数据该如何序列化的时候，Serilog对数据也有默认的序列...]]></description><category></category></item><item><title><![CDATA[Serilog初识（一）————分别Console、Web程序简单使用Serilog]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/98961215</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/98961215</guid><author>MDZZ666</author><pubDate>Fri, 09 Aug 2019 16:54:51 +0800</pubDate><description><![CDATA[Serilog简介

Serilog是.NET应用程序的诊断日志库。它易于设置，具有干净的API，并可在所有最新的.NET平台上运行。虽然它在最简单的应用程序中也很有用，但Serilog对结构化日志记录的支持在处理复杂，分布式和异步应用程序和系统时仍然很有用。——GithubSerilog的介绍
通过Console使用Serilog
使用Serilog之前先得在NuGet下载几个包,在NuGet控...]]></description><category></category></item><item><title><![CDATA[使用ASP.NET Core 配置文件]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/96282039</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/96282039</guid><author>MDZZ666</author><pubDate>Wed, 17 Jul 2019 16:45:48 +0800</pubDate><description><![CDATA[前言

在ASP.NET ，我们使用XML格式的.Config文件来作为配置文件，而在ASP.NET Core，我们有了更多的选择，可以用回XML，也可以用Json、Ini文件作为配置文件
Json配置文件的使用

在创建ASP.NET Core的项目的时候，框架会自动添加appsettings.json文件和添加IConfiguration的注入。
public Startup(IConfigu...]]></description><category></category></item><item><title><![CDATA[C#使用Newtonsoft.Json的JsonConverter解决反序列化类中的接口属性出现的问题]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/92838531</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/92838531</guid><author>MDZZ666</author><pubDate>Wed, 19 Jun 2019 17:51:46 +0800</pubDate><description><![CDATA[前言

我们在使用Newtonsoft.Json进行反序列化类中的接口属性的时候，Newtonsoft.Json会因找不到具体实现类，无法进行反序列化。
问题

Student类
public class Student&lt;T&gt;
{
    public string Name { get; set; }
    //这个是用来测试泛型是否能序列化和反序列化
    public  T ...]]></description><category></category></item><item><title><![CDATA[给ASP.NET Core搭建日志框架Exceptionless]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/92400922</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/92400922</guid><author>MDZZ666</author><pubDate>Sun, 16 Jun 2019 22:30:12 +0800</pubDate><description><![CDATA[Exceptionless简介
Exceptionless为.NET Core，Web api，WebForms，WPF，Console，MVC，Node，JavaScipt，提供实时异常报告，并且是开源的，而且报告详细，避免了我们花费时间自己使用Nlog，log4Net等日志来构建异常报告。
我们想要使用Exceptionless有两种方式，一个是使用官方提供的网站平台来进行查看异常报告，第二个...]]></description><category></category></item><item><title><![CDATA[使用IdentityServer实现SSO出现Development environment should not be enabled in deployed applications错误]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/91796026</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/91796026</guid><author>MDZZ666</author><pubDate>Thu, 13 Jun 2019 10:10:59 +0800</pubDate><description><![CDATA[问题

在用IdentityServer实现SSO的过程中，从客户端跳转到SSO认证中心的时候，认证中心报了如下错误。
Error.
An error occurred while processing your request.
Development Mode
Swapping to Development environment will display more detailed info...]]></description><category></category></item><item><title><![CDATA[使用IdentityServer4简单的实现一个SSO单点登录]]></title><link>https://blog.youkuaiyun.com/MDZZ666/article/details/91389475</link><guid>https://blog.youkuaiyun.com/MDZZ666/article/details/91389475</guid><author>MDZZ666</author><pubDate>Wed, 12 Jun 2019 16:32:53 +0800</pubDate><description><![CDATA[一.简介
本文使用IdentityServer4来实现SSO单点登录（注销没有实现），我们其中使用Implicit模式和OIDC服务来实现。

]]></description><category></category></item></channel></rss>