<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zhangnero]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zhangnero</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zhangnero]]></copyright><item><title><![CDATA[spring-authorization-server device_code流程]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/139346602</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/139346602</guid><author>zhangnero</author><pubDate>Fri, 31 May 2024 10:49:25 +0800</pubDate><description><![CDATA[spring-authorizatin-server
device_code
oauth2]]></description><category></category></item><item><title><![CDATA[websocket多级nginx代理]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/137225820</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/137225820</guid><author>zhangnero</author><pubDate>Mon, 01 Apr 2024 11:17:56 +0800</pubDate><description><![CDATA[在使用多层Nginx代理时，WebSocket的连接可能会遇到一些问题，因为WebSocket连接是持久化的，它需要Upgrade头部来确认升级到WebSocket协议。在多层代理的情况下，每层代理可能会修改或丢失这个Upgrade头部信息。为了确保WebSocket能够在多层代理下正确工作，你需要确保每层代理都正确地处理WebSocket的Upgrade请求。来自百度搜索，AI自动生成，经过验证可用。# 第二层Nginx或应用服务器配置。# WebSocket后端配置。# 第一层Nginx配置。]]></description><category></category></item><item><title><![CDATA[VMWare ESXi]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/136186815</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/136186815</guid><author>zhangnero</author><pubDate>Tue, 20 Feb 2024 11:44:03 +0800</pubDate><description><![CDATA[在服务器上安装ESXi。备份ova。通过ova创建新的虚拟机。]]></description><category></category></item><item><title><![CDATA[iptables修改目的IP和端口]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/131685543</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/131685543</guid><author>zhangnero</author><pubDate>Wed, 12 Jul 2023 17:07:06 +0800</pubDate><description><![CDATA[iptables NAT表的OUTPUT链用于对由本机发起的数据包进行目标IP地址和端口号的修改。DNAT指令可以用于将数据包的目标IP地址和端口号替换为指定的IP地址和端口号。在OUTPUT链中使用DNAT指令可以实现对本机发送的数据包进行目标地址的转换，将数据包发送至指定的目标地址。其中，<目标IP地址>为需要修改的目标IP地址，<协议>为需要修改的协议类型，<目标端口>为需要修改的目标端口号，<新目标IP地址>为修改后的目标IP地址，<新目标端口>为修改后的目标端口号。]]></description><category></category></item><item><title><![CDATA[Mysql编码和时区设置docker]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/131554578</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/131554578</guid><author>zhangnero</author><pubDate>Wed, 05 Jul 2023 14:14:07 +0800</pubDate><description><![CDATA[docker下设置mysql编码]]></description><category></category></item><item><title><![CDATA[Nginx proxy_pass到https后端]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/131469760</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/131469760</guid><author>zhangnero</author><pubDate>Fri, 30 Jun 2023 15:09:24 +0800</pubDate><description><![CDATA[使用SSL/TLS加密，确保NGINX或NGINX Plus与上游服务器之间的HTTP流量安全。本文解释了如何加密NGINX和上游组或代理服务器之间的HTTP流量。]]></description><category></category></item><item><title><![CDATA[tcpdump使用]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/130645843</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/130645843</guid><author>zhangnero</author><pubDate>Fri, 12 May 2023 16:56:13 +0800</pubDate><description><![CDATA[【代码】tcpdump使用。]]></description><category></category></item><item><title><![CDATA[GLIBC升级失败]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/130321940</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/130321940</guid><author>zhangnero</author><pubDate>Sun, 23 Apr 2023 15:14:56 +0800</pubDate><description><![CDATA[GLIBC升级失败]]></description><category></category></item><item><title><![CDATA[Centos安装RabbitMq]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/129802990</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/129802990</guid><author>zhangnero</author><pubDate>Mon, 27 Mar 2023 20:19:06 +0800</pubDate><description><![CDATA[https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/7/rabbitmq-server-3.8.23-1.el7.noarch.rpm?distro_version_id=140]]></description><category></category></item><item><title><![CDATA[Tomcat处理请求流程]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/125260989</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/125260989</guid><author>zhangnero</author><pubDate>Mon, 13 Jun 2022 16:34:00 +0800</pubDate><description><![CDATA[Spring Boot文档搜索关键字tomcat]]></description><category></category></item><item><title><![CDATA[JPA nativesql 返回自定义实体]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/123358850</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/123358850</guid><author>zhangnero</author><pubDate>Tue, 08 Mar 2022 17:35:37 +0800</pubDate><description><![CDATA[接收实体定义
public interface CustomizedDto{
    String getId() ;
    String geName();
    Integer getAge();
}

Sql
    @Query(value = "select  u.id as id, u.name as name, u.age as age 
                    from tb_user u
                    where u.id = ?1",
   ]]></description><category></category></item><item><title><![CDATA[JVM查看参数]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/119789230</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/119789230</guid><author>zhangnero</author><pubDate>Wed, 18 Aug 2021 21:18:30 +0800</pubDate><description><![CDATA[文章目录1、打印JVM参数和默认值2、查看系统参数
1、打印JVM参数和默认值
PS C:\Users\nero\Desktop&gt; java -XX:+PrintFlagsFinal  -version                                                                                                                                                        ]]></description><category></category></item><item><title><![CDATA[JVM垃圾收集器]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/118255277</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/118255277</guid><author>zhangnero</author><pubDate>Sat, 26 Jun 2021 22:02:50 +0800</pubDate><description><![CDATA[文章目录1 概述2 垃圾回收器关系图
1 概述
垃圾回收器是垃圾回收算法的具体实现。
2 垃圾回收器关系图


]]></description><category></category></item><item><title><![CDATA[JVM垃圾收集算法]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/118254395</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/118254395</guid><author>zhangnero</author><pubDate>Sat, 26 Jun 2021 21:32:04 +0800</pubDate><description><![CDATA[文章目录1 基础1.1 如何找出待回收的对象1.1.1 可达性分析算法1.1.2 GC-Roots2 算法列举2.1 标记清除(Mark-Sweep)算法2.1.1 特点2.2 复制(Coping)算法2.2.1 特点2.2.2 一般实现2.3 标记整理(Mark-Compact)算法2.4 分代收集算法
1 基础
1.1 如何找出待回收的对象
1.1.1 可达性分析算法
通过可达性分析算法，判断对象是否存活。通过GC-Roots作为起点，开始向向搜索，搜索所走过的路径成为引用链。如果如果一个对象到GC-R]]></description><category></category></item><item><title><![CDATA[python启动http服务器]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/118112686</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/118112686</guid><author>zhangnero</author><pubDate>Tue, 22 Jun 2021 18:10:33 +0800</pubDate><description><![CDATA[# python2
python -m SimpleHTTPServer port

# python3
python -m http.server port


]]></description><category></category></item><item><title><![CDATA[抽象工厂]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/116672410</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/116672410</guid><author>zhangnero</author><pubDate>Tue, 11 May 2021 22:34:28 +0800</pubDate><description><![CDATA[#mermaid-svg-cKfdtOCsSa5eL91C .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-cKfdtOCsSa5eL91C .label text{fill:#333}#mermaid-svg-cKfdtOCsSa5eL91C .node rect,#mermaid-svg-cKfdtOCsSa]]></description><category></category></item><item><title><![CDATA[k8s集群下网络请求一般流程]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/109142821</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/109142821</guid><author>zhangnero</author><pubDate>Sun, 18 Oct 2020 11:43:50 +0800</pubDate><description><![CDATA[1. k8s集群网络请求流程
2. 部署文件yml示例]]></description><category></category></item><item><title><![CDATA[Spring Boot MongoDB 聚合、去重、按日期分组]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/102624184</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/102624184</guid><author>zhangnero</author><pubDate>Fri, 18 Oct 2019 13:55:15 +0800</pubDate><description><![CDATA[Mongodb指定格式化时间，指定时区
AggregationExpression dateExpression = DateOperators.DateToString
            .dateOf("loginTime")
            .toString("%Y-%m-%d")
            .withTimezone(
                    DateOperators.Timezone.valueOf("+08")
            );
]]></description><category></category></item><item><title><![CDATA[密码正则表达式]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/101101593</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/101101593</guid><author>zhangnero</author><pubDate>Sat, 21 Sep 2019 11:31:07 +0800</pubDate><description><![CDATA[必须有数字和字母，支持所有的英文字符，长度6-12
/^(?=.\d)(?=.[a-zA-Z])[0-9a-zA-Z`~!@#%^&amp;*()_+-={}|\\\[\]:";'&lt;&gt;?,./]{6,12}/


]]></description><category></category></item><item><title><![CDATA[java电话/邮箱脱敏]]></title><link>https://blog.youkuaiyun.com/zhangnero/article/details/100930713</link><guid>https://blog.youkuaiyun.com/zhangnero/article/details/100930713</guid><author>zhangnero</author><pubDate>Tue, 17 Sep 2019 16:32:23 +0800</pubDate><description><![CDATA[文章目录需求实现
需求

邮箱第一个字符和’@‘之后的原文显示，第一个字符之后’@‘之前的，显示为’****’
电话号码，前面3位，后面4位显示原文，中间的显示为’****’

实现
    public static void main(String[] args) {
        String email = "zhangnero@163.com";
        System.out....]]></description><category></category></item></channel></rss>