<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Java_Jsp_Ssh的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Java_Jsp_Ssh]]></copyright><item><title><![CDATA[深入理解ThreadLocal的原理]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/91891936</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/91891936</guid><author>Java_Jsp_Ssh</author><pubDate>Thu, 13 Jun 2019 20:45:29 +0800</pubDate><description><![CDATA[final ThreadLocal&lt;String&gt; threadLocal = new ThreadLocal&lt;&gt;();
        Thread thread1 = new Thread(new Runnable() {
            @Override
            public void run() {
                //...]]></description><category></category></item><item><title><![CDATA[SpringCloud(五)SpringCloud的限流、降级和熔断——Hystrix]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/91439771</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/91439771</guid><author>Java_Jsp_Ssh</author><pubDate>Tue, 11 Jun 2019 15:20:50 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/chenxyz707/article/details/80913725
]]></description><category></category></item><item><title><![CDATA[Lombok 介绍]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/88573197</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/88573197</guid><author>Java_Jsp_Ssh</author><pubDate>Fri, 15 Mar 2019 14:11:59 +0800</pubDate><description><![CDATA[Lombok使用https://projectlombok.org/

https://blog.youkuaiyun.com/motui/article/details/79012846
介绍
在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。

IDEA中的安装
打开IDEA的Setting –&amp;gt; 选择Plugins选项 –&amp;gt; ...]]></description><category></category></item><item><title><![CDATA[idea 2018版本中没有SVN按钮或者图标的解决方法]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/88548157</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/88548157</guid><author>Java_Jsp_Ssh</author><pubDate>Thu, 14 Mar 2019 10:59:43 +0800</pubDate><description><![CDATA[前提是你在idea中已经配置了SVN，这是我自己遇到的，在此做个记录以便帮助其他同学们。

以后再有其他情况会陆续更新的，请关注。。。。

情况1：IntelliJ IDEA打开带SVN信息的项目不显示SVN信息，项目右键SVN以及图标还有Changes都不显示解决方法

在VCS菜单中有个开关，叫Enabled Version Control Integration，在打开的窗口的选项中选择Su...]]></description><category></category></item><item><title><![CDATA[java如何对map进行排序详解(map集合的使用)]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/88353685</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/88353685</guid><author>Java_Jsp_Ssh</author><pubDate>Fri, 08 Mar 2019 16:22:05 +0800</pubDate><description><![CDATA[今天做统计时需要对X轴的地区按照地区代码（areaCode）进行排序，由于在构建XMLData使用的map来进行数据统计的，所以在统计过程中就需要对map进行排序。

一、简单介绍Map
在讲解Map排序之前，我们先来稍微了解下map。map是键值对的集合接口，它的实现类主要包括：HashMap,TreeMap,Hashtable以及LinkedHashMap等。其中这四者的区别如下（简单介绍）：...]]></description><category></category></item><item><title><![CDATA[Mybatis之序列插入语句（Mysql和Oracle）总结]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/86648904</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/86648904</guid><author>Java_Jsp_Ssh</author><pubDate>Fri, 25 Jan 2019 16:57:37 +0800</pubDate><description><![CDATA[在使用mybatis根据ID自增长插入语句问题？

在mybatis核心配置文件中解决

MYSQL解决办法：

&amp;lt;!--     public void addDept(Dept dept);
            mysql支持自增主键；自增主键的获取，mybatis也是利用statement.getGeneratedKeys()
            要想前台获取添加的数字，添加两...]]></description><category></category></item><item><title><![CDATA[mybatis执行批量更新batch update 的方法（oracle,mysql）]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/86624037</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/86624037</guid><author>Java_Jsp_Ssh</author><pubDate>Thu, 24 Jan 2019 11:51:40 +0800</pubDate><description><![CDATA[oracle和mysql数据库的批量update在mybatis中配置不太一样：

oracle数据库：


&amp;lt;update id=&quot;batchUpdate&quot;  parameterType=&quot;java.util.List&quot;&amp;gt;
	 
	   &amp;lt;foreach collection=&quot;list&quot; item=&quot;item&quot; index=&quot;index&quot; open=&quot;b]]></description><category></category></item><item><title><![CDATA[[Java面试五]Spring总结以及在面试中的一些问题.]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/86585991</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/86585991</guid><author>Java_Jsp_Ssh</author><pubDate>Mon, 21 Jan 2019 22:30:28 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/wang-meng/p/5701982.html

[Java面试五]Spring总结以及在面试中的一些问题.

1.谈谈你对spring IOC和DI的理解，它们有什么区别？

IoC Inverse of Control 反转控制的概念，就是将原本在程序中手动创建UserService对象的控制权，交由Spring框架管理，简单说，就是创建Use...]]></description><category></category></item><item><title><![CDATA[为什么说Redis是单线程的以及Redis为什么这么快！]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83963375</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83963375</guid><author>Java_Jsp_Ssh</author><pubDate>Sun, 11 Nov 2018 22:14:48 +0800</pubDate><description><![CDATA[一、前言

近乎所有与Java相关的面试都会问到缓存的问题，基础一点的会问到什么是“二八定律”、什么是“热数据和冷数据”，复杂一点的会问到缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题，这些看似不常见的概念，都与我们的缓存服务器相关，一般常用的缓存服务器有Redis、Memcached等，而笔者目前最常用的也只有Redis这一种。

如果你在以前面试的时候还没有遇到过面试官问你《为什么说R...]]></description><category></category></item><item><title><![CDATA[一起来学 SpringBoot 2.x | 第十六篇：定时任务详解]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795976</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795976</guid><author>Java_Jsp_Ssh</author><pubDate>Tue, 06 Nov 2018 22:57:16 +0800</pubDate><description><![CDATA[http://www.iocoder.cn/Spring-Boot/battcn/v2-other-scheduling/


SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一系列问题而诞生的产物，自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置，我们只需遵循规范，引入相关的依赖就可以轻易的搭建出一个 WEB 工程


在我们日常开发中，经常会遇到 ...]]></description><category></category></item><item><title><![CDATA[一起来学 SpringBoot 2.x | 第十一篇：集成 Swagger 在线调试]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795950</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795950</guid><author>Java_Jsp_Ssh</author><pubDate>Tue, 06 Nov 2018 22:54:50 +0800</pubDate><description><![CDATA[http://www.iocoder.cn/Spring-Boot/battcn/v2-config-swagger/


SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一系列问题而诞生的产物，自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置，我们只需遵循规范，引入相关的依赖就可以轻易的搭建出一个 WEB 工程


随着互联网技术的发展，现在的网站架...]]></description><category></category></item><item><title><![CDATA[一起来学 SpringBoot 2.x | 第二十二篇：轻松搞定重复提交（本地锁）]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795927</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795927</guid><author>Java_Jsp_Ssh</author><pubDate>Tue, 06 Nov 2018 22:53:06 +0800</pubDate><description><![CDATA[http://www.iocoder.cn/Spring-Boot/battcn/v2-cache-locallock/


SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一系列问题而诞生的产物，自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置，我们只需遵循规范，引入相关的依赖就可以轻易的搭建出一个 WEB 工程


在平时开发中，如果网速比较慢的情...]]></description><category></category></item><item><title><![CDATA[一起来学 SpringBoot 2.x | 第二十三篇：轻松搞定重复提交（分布式锁）]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795920</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795920</guid><author>Java_Jsp_Ssh</author><pubDate>Tue, 06 Nov 2018 22:52:17 +0800</pubDate><description><![CDATA[http://www.iocoder.cn/Spring-Boot/battcn/v2-cache-redislock/


SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一系列问题而诞生的产物，自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置，我们只需遵循规范，引入相关的依赖就可以轻易的搭建出一个 WEB 工程


在 一起来学SpringBoot...]]></description><category></category></item><item><title><![CDATA[一起来学 SpringBoot 2.x | 第二十七篇：优雅解决分布式限流]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795891</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83795891</guid><author>Java_Jsp_Ssh</author><pubDate>Tue, 06 Nov 2018 22:50:23 +0800</pubDate><description><![CDATA[http://www.iocoder.cn/Spring-Boot/battcn/v2-cache-redislimter/ 


 

SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一系列问题而诞生的产物，自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置，我们只需遵循规范，引入相关的依赖就可以轻易的搭建出一个 WEB 工程


在前面的两篇文章中，...]]></description><category></category></item><item><title><![CDATA[Spring与Mybatis整合的MapperScannerConfigurer处理过程源码分析]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758686</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758686</guid><author>Java_Jsp_Ssh</author><pubDate>Mon, 05 Nov 2018 23:10:11 +0800</pubDate><description><![CDATA[前言

本文将分析mybatis与spring整合的MapperScannerConfigurer的底层原理，之前已经分析过java中实现动态，可以使用jdk自带api和cglib第三方库生成动态代理。本文分析的mybatis版本3.2.7，mybatis-spring版本1.2.2。

MapperScannerConfigurer介绍

MapperScannerConfigurer是spri...]]></description><category></category></item><item><title><![CDATA[Mybatis解析动态sql原理分析]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758675</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758675</guid><author>Java_Jsp_Ssh</author><pubDate>Mon, 05 Nov 2018 23:09:27 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/fangjian0423/p/mybaits-dynamic-sql-analysis.html

前言

废话不多说，直接进入文章。
我们在使用mybatis的时候，会在xml中编写sql语句。
比如这段动态sql代码：


&amp;lt;update id=&quot;update&quot; parameterType=&quot;org.format.dynamicproxy....]]></description><category></category></item><item><title><![CDATA[通过源码分析MyBatis的缓存]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758659</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758659</guid><author>Java_Jsp_Ssh</author><pubDate>Mon, 05 Nov 2018 23:08:39 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/fangjian0423/p/mybatis-cache.html

前方高能！ 本文内容有点多，通过实际测试例子+源码分析的方式解剖MyBatis缓存的概念，对这方面有兴趣的小伙伴请继续看下去~

MyBatis缓存介绍

首先看一段wiki上关于MyBatis缓存的介绍：

MyBatis支持声明式数据缓存（declarative data ca...]]></description><category></category></item><item><title><![CDATA[MyBatis拦截器原理探究]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758646</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758646</guid><author>Java_Jsp_Ssh</author><pubDate>Mon, 05 Nov 2018 23:07:27 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/fangjian0423/p/mybatis-interceptor.html

MyBatis拦截器介绍

MyBatis提供了一种插件(plugin)的功能，虽然叫做插件，但其实这是拦截器功能。那么拦截器拦截MyBatis中的哪些内容呢？

我们进入官网看一看：

MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。默认情况下，My...]]></description><category></category></item><item><title><![CDATA[NIO的epoll空轮询bug]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758627</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758627</guid><author>Java_Jsp_Ssh</author><pubDate>Mon, 05 Nov 2018 23:05:49 +0800</pubDate><description><![CDATA[JDK NIO的BUG，例如臭名昭著的epoll bug，它会导致Selector空轮询，最终导致CPU 100%。官方声称在JDK1.6版本的update18修复了该问题，但是直到JDK1.7版本该问题仍旧存在，只不过该BUG发生概率降低了一些而已，它并没有被根本解决。该BUG以及与该BUG相关的问题单可以参见以下链接内容。

https://bugs.java.com/bugdatabase/...]]></description><category></category></item><item><title><![CDATA[Redis发布带有“流式”数据类型的5.0版本]]></title><link>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758584</link><guid>https://blog.youkuaiyun.com/Java_Jsp_Ssh/article/details/83758584</guid><author>Java_Jsp_Ssh</author><pubDate>Mon, 05 Nov 2018 23:02:06 +0800</pubDate><description><![CDATA[在版本4发布的15个月之后，Redis最近宣布了其流行数据库的第5个版本。这个版本的主要特性是对一种新数据类型“流”的支持。流是一种仅能追加的数据结构，可以在相同消费者组内被多个协作的客户端用作日志处理。流就基于Rax实现的，它是个基数树库。

流支持快速查找和范围查询，这些是构建聊天系统、消息代理、排队系统和可以从统一日志模式受益的大多数系统。流在概念上类似于Apache Kafka中支持消费者...]]></description><category></category></item></channel></rss>