<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[csdnbeyoung的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/csdnbeyoung</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; csdnbeyoung]]></copyright><item><title><![CDATA[Nacos配置中心原理（二）服务端部分]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/125145063</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/125145063</guid><author>csdnbeyoung</author><pubDate>Mon, 06 Jun 2022 13:46:45 +0800</pubDate><description><![CDATA[nacos配置中心原理-服务端部分]]></description><category></category></item><item><title><![CDATA[Nacos配置中心原理（一）客户端部分]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/125144780</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/125144780</guid><author>csdnbeyoung</author><pubDate>Mon, 06 Jun 2022 13:33:42 +0800</pubDate><description><![CDATA[nacos配置中心原理-客户端部分]]></description><category></category></item><item><title><![CDATA[springboot自定义starter]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/124192005</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/124192005</guid><author>csdnbeyoung</author><pubDate>Fri, 15 Apr 2022 13:26:16 +0800</pubDate><description><![CDATA[springboot]]></description><category></category></item><item><title><![CDATA[java工程使用maven进行差异化环境配置]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/116939590</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/116939590</guid><author>csdnbeyoung</author><pubDate>Mon, 17 May 2021 17:44:54 +0800</pubDate><description><![CDATA[项目分为测试环境、预发环境、生产环境等等不同环境，每个环境有每个环境的配置，下面使用maven进行差异化环境配置。

1.项目目录结构为

     

其中application.properties指定公共配置和引入哪个环境的配置，在其他环境配置差异化的配置，其中 配置文件里的 ${env-flag} 是打包时替换的内容，名字随便写，但要与pom里的配置对应上，后续会介绍

配置文件的内容就配置完成，下面在pom文件里配置相关内容

1.在build标签下添加如下节点，这段配置是最常规的配置...]]></description><category></category></item><item><title><![CDATA[InnoDB-锁]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/113934894</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/113934894</guid><author>csdnbeyoung</author><pubDate>Tue, 23 Feb 2021 15:08:16 +0800</pubDate><description><![CDATA[1.什么是锁。

锁机制用于管理对共享资源的并发访问。InnoDB会在行级别上对数据上锁，也会在数据库内部其他多个地方使用锁，从而允许对多种不同资源提供并发访问。

2.lock 与 latch

在数据库中，lock与latch都可以被称为锁。但是两者有着截然不同的含义，本博文主要关注lock。

latch一般称为闩（shuan）锁（轻量级锁）。其要求锁定时间非常短，在InnoDB中，latch又可以分为mutex（互斥量）和rwlock（读写锁）。其目的是用来保证并发线程操作临界资源的正确性，并且通常]]></description><category></category></item><item><title><![CDATA[JVM-内存结构和JMM-内存模型]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/113144174</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/113144174</guid><author>csdnbeyoung</author><pubDate>Wed, 27 Jan 2021 18:03:25 +0800</pubDate><description><![CDATA[JAVA的内存模型：JVM中的堆、栈、方法区（方法区是JVM规范的概念定义，在HotSpot虚拟机中，1.7版本对方法区的实现是永久代，1.8版本对方法区的实现是元空间，元空间使用本地内存Native Memory 实现的，也就是他的内存不在虚拟机内，理论上受限于物理机的内存）、程序计数器等等是Java虚拟机的内存结构，Java程序启动后，会初始化这些内存数据。如下图



内存模型就是另外一个东西。什么是内存模型？

计算机中，cpu与内存交互最频繁，相比内存，磁盘读写太慢，内存相当于高速缓冲区，但是内存]]></description><category></category></item><item><title><![CDATA[自定义注解的使用]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/110964805</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/110964805</guid><author>csdnbeyoung</author><pubDate>Thu, 10 Dec 2020 20:21:49 +0800</pubDate><description><![CDATA[1.定义一个自定义注解


package xxx.xxxx.xxxx.aop;

import org.springframework.core.annotation.Order;

import java.lang.annotation.*;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Order(value = Integer.MAX_VALUE)
public @interface Pre]]></description><category></category></item><item><title><![CDATA[eclipse创建的maven工程没有test目录解决办法]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/108194350</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/108194350</guid><author>csdnbeyoung</author><pubDate>Mon, 24 Aug 2020 10:27:22 +0800</pubDate><description><![CDATA[eclipse创建的maven项目或者从git仓库下载的项目，没有test目录，但是直接创建却显示已经存在，需要在相关文件夹下手动创建。进入到src目录下，里面有一个main目录，同级创建test/java再去工程上刷新就出现了








...]]></description><category></category></item><item><title><![CDATA[Mysql数据库使用Mybatis批量更新的几种方式]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/106258611</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/106258611</guid><author>csdnbeyoung</author><pubDate>Thu, 21 May 2020 16:48:19 +0800</pubDate><description><![CDATA[经过多次项目经历，总结几种更新方式的对比，作以下总结。

待更新对象 User 。实际项目中，可能会批量更新一组数据

第一种：在程序中通过for循环，循环提交，这种方式就无所谓更新的数据是怎样的，多次调用mapper提交数据，与数据库交互多次，性能差，实现简单。如果更新大批量数据不建议使用这种方式

例子代码实现如下：


 
java代码：
 
 for(User user:list){
     userMapper.update(user);
 }



XML代码：

&lt;upd...]]></description><category></category></item><item><title><![CDATA[类的加载机制-ClassLoader]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/105264704</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/105264704</guid><author>csdnbeyoung</author><pubDate>Thu, 02 Apr 2020 11:03:28 +0800</pubDate><description><![CDATA[ClassLoader ：public abstract class ClassLoader  ,  extends Object

    类加载器是负责加载类的对象。ClassLoader 类是一个抽象类。如果给定类的二进制名称，那么类加载
会试图查找出或生成构成类定义数据。一般策略是将名称转换为某个文件，然后从文件系统读取该名称的 
“文件”，每个 Class 对象都包含一个对定义...]]></description><category></category></item><item><title><![CDATA[几种常见的单例模式]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/103855418</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/103855418</guid><author>csdnbeyoung</author><pubDate>Mon, 06 Jan 2020 14:37:01 +0800</pubDate><description><![CDATA[本文根据分布式系统基于redis获取的分布式锁的对象，简单对比几种单例模式。

需要引入依赖


       &lt;dependency&gt;
            &lt;groupId&gt;io.netty&lt;/groupId&gt;
            &lt;artifactId&gt;netty-all&lt;/artifactId&gt;
            &l...]]></description><category></category></item><item><title><![CDATA[web项目读取资源目录下的.properties配置文件]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/103460712</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/103460712</guid><author>csdnbeyoung</author><pubDate>Mon, 09 Dec 2019 17:11:52 +0800</pubDate><description><![CDATA[package org.springframework.beans;

import java.util.Properties;
import org.junit.Test;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.s...]]></description><category></category></item><item><title><![CDATA[获取请求主机的IP和获取本机IP]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/101105572</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/101105572</guid><author>csdnbeyoung</author><pubDate>Sat, 21 Sep 2019 13:53:34 +0800</pubDate><description><![CDATA[获取请求主机的IP,如果请求通过代理进来，则透过防火墙获取真实IP地址;


public final static String getIpAddress(HttpServletRequest request) throws IOException {
        // 获取请求主机IP地址,如果通过代理进来，则透过防火墙获取真实IP地址  

        String ip = re...]]></description><category></category></item><item><title><![CDATA[Shiro 搭建]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/95869492</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/95869492</guid><author>csdnbeyoung</author><pubDate>Sun, 14 Jul 2019 12:59:39 +0800</pubDate><description><![CDATA[使用ssm框架，xml和注解组合的方式搭建shiro框架，初学只搭建最简单的框架，提供认证，授权，密码管理等基本用法

一、搭建一个ssm项目，不需要连接数据库，这里用代码写死，可以正常访问即可，在这个项目基础上搭建shiro

二、导入shiro依赖


&lt;!-- shiro 依赖 --&gt;
        &lt;dependency&gt;
        	&lt;groupId...]]></description><category></category></item><item><title><![CDATA[用cxf框架搭建webservice服务（spring的xml方式和springboot方式）]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/95546507</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/95546507</guid><author>csdnbeyoung</author><pubDate>Fri, 12 Jul 2019 01:28:46 +0800</pubDate><description><![CDATA[一、基于cxf框架，在spring框架中搭建webservice服务

步骤1，创建一个maven项目，首先导入spring相关依赖,再导入cxf依赖，配置tomcat插件等相关插件


 &lt;properties&gt;
		&lt;spring.version&gt;4.2.4.RELEASE&lt;/spring.version&gt;
  &lt;/properties&gt;
  
...]]></description><category></category></item><item><title><![CDATA[java代码绘制验证码图片]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/94740637</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/94740637</guid><author>csdnbeyoung</author><pubDate>Fri, 05 Jul 2019 16:56:16 +0800</pubDate><description><![CDATA[@RequestMapping(value = "/img")
    public void makeImage(HttpServletRequest request, HttpServletResponse response)
        throws IOException
    {

        int charNum = 4 ;
        int width = 20...]]></description><category></category></item><item><title><![CDATA[Dubbo基础（二）：标签]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/92026199</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/92026199</guid><author>csdnbeyoung</author><pubDate>Sat, 15 Jun 2019 01:25:01 +0800</pubDate><description><![CDATA[服务方和消费方的通用配置：

&lt;dubbo:application&gt;（ApplicationConfig）当前应用信息，可以在控制台中直接查看的，一般设置为当前应用的名字即可。 

&lt;dubbo:registry&gt;（RegistryConfig）指定zookeeper的注册中心。

服务方标签：

&lt;dubbo:provider&gt;（provider...]]></description><category></category></item><item><title><![CDATA[Dubbo基础 （一）：简介及搭建]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/91830735</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/91830735</guid><author>csdnbeyoung</author><pubDate>Sat, 15 Jun 2019 00:32:42 +0800</pubDate><description><![CDATA[Dubbo是：

一个分布式、高性能、透明化的RPC服务框架。
	提供服务的自动注册、自动发现等高效服务自理方案。
	主要功能包括：高性能NIO通讯及多协议集成，服务动态寻址与路由，软负载均衡与容错，依赖分析与降级等。
Dubbo结构与功能：



container负责启动、加载、运行provider
	provider启动时，向registry注册自己的服务
	cousumer启动时，向reg...]]></description><category></category></item><item><title><![CDATA[ActiveMQ 入门（五）-通配符分层订阅、死信队列]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/91351861</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/91351861</guid><author>csdnbeyoung</author><pubDate>Wed, 12 Jun 2019 18:02:18 +0800</pubDate><description><![CDATA[一、通配符式订阅：

Wildcards 用来支持联合的名字分层体系（federated name hierarchies）。它不是JMS 规范的一部分，而是ActiveMQ 的扩展。ActiveMQ 支持以下三种

1、"." 用于作为路径上名字间的分隔符。   如：AAA.bbb.CCC                        ...]]></description><category></category></item><item><title><![CDATA[ActiveMQ入门（四）-消息的持久化订阅、应答模式（可靠性）]]></title><link>https://blog.csdn.net/csdnbeyoung/article/details/91349544</link><guid>https://blog.csdn.net/csdnbeyoung/article/details/91349544</guid><author>csdnbeyoung</author><pubDate>Sun, 09 Jun 2019 03:34:30 +0800</pubDate><description><![CDATA[一、持久化订阅

前几篇博客中提到，消息的两种模式，点对点（queue）和发布订阅（topic），queue模式下，消息是会被持久化到磁盘，而topic模式下，消息会随着服务的停止而消失，但是某些场景下，我们想将topic消息也进行持久化，只需要进行如下改动。

生产者端：只需要将目的地创建成Topic模式即可，其他不用变  session.createTopic("xxxx");


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