<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[夜半时分看世界]]></title><description><![CDATA[今天的坚持就是明天的成功]]></description><link>https://blog.youkuaiyun.com/sike_java</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sike_java]]></copyright><item><title><![CDATA[运行时数据区]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/103326546</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/103326546</guid><author>sike_java</author><pubDate>Sat, 30 Nov 2019 19:49:36 +0800</pubDate><description><![CDATA[java 与 c/c++之间有一堵由内存动态分配和垃圾收集技术所围成的"高墙",墙外面的人想进去,墙里面的人却想出来.对于 java 程序员来说,在虚拟机自动内存管理机制的帮助下,不再需要为每一个 new 操作去写配对的 delete/free 代码,不容易出

   现内存泄漏和内存溢出.有虚拟机管理内存,这一切看起来都很美好.但是,也正因为 java 程序员把内存控制的权...]]></description><category></category></item><item><title><![CDATA[JVM]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/103326602</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/103326602</guid><author>sike_java</author><pubDate>Sat, 30 Nov 2019 17:03:31 +0800</pubDate><description><![CDATA[1.认识Java虚拟机

2.类加载机制

3.运行时数据区

4.垃圾回收器和内存分配策略

5.虚拟机性能监控和检测
]]></description><category></category></item><item><title><![CDATA[垃圾回收器和内存分配策略]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/103326559</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/103326559</guid><author>sike_java</author><pubDate>Sat, 30 Nov 2019 17:01:15 +0800</pubDate><description><![CDATA[垃圾回收器和内存分配策略
]]></description><category></category></item><item><title><![CDATA[类加载机制]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/103326527</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/103326527</guid><author>sike_java</author><pubDate>Sat, 30 Nov 2019 16:58:53 +0800</pubDate><description><![CDATA[1.什么是类加载

   虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的 java 类 型,这就是虚拟机的类加载机制.

   与那些在编译时需要进行连接工作的语言不同,在 java 语言中,类型的加载,连接和初始化过程都是在程序运行期间完成的,这种策 略虽然会令类加载时稍微增加一些性能开销,但是会为 java 应...]]></description><category></category></item><item><title><![CDATA[认识 Java 虚拟机]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/103326501</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/103326501</guid><author>sike_java</author><pubDate>Sat, 30 Nov 2019 16:57:30 +0800</pubDate><description><![CDATA[1.Java 跨平台原理

    JVM 是 Java Virtual Machine(Java 虚拟机)的缩写，JVM 是一种用于计算设备的规范，它是一个虚构出来的计算机，是通过 在实际的计算机上仿真模拟各种计算机功能来实现的.

   JVM 将自身定位于字节码和底层平台之间.运行程序的物理机器的情况千差万别,而 Java 虚拟机则在千差万别的物理机上建立了统 一的运行平台....]]></description><category></category></item><item><title><![CDATA[java限流]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/103223578</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/103223578</guid><author>sike_java</author><pubDate>Sun, 24 Nov 2019 13:19:31 +0800</pubDate><description><![CDATA[高并发访问时，缓存、限流、降级往往是系统的利剑，在互联网蓬勃发展的时期，经常会面临因用户暴涨导致的请求不可用的情况，甚至引发连锁反映导致整个系统崩溃。这个时候常见的解决方案之一就是限流了，当请求达到一定的并发数或速率，就进行等待、排队、降级、拒绝服务等...

限流算法介绍

a、令牌桶算法

令牌桶算法的原理是系统会以一个恒定的速度往桶里放入令牌，而如果请求需要被处理，则需要先从桶...]]></description><category></category></item><item><title><![CDATA[JavaEE知识点]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/102965585</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/102965585</guid><author>sike_java</author><pubDate>Fri, 08 Nov 2019 01:00:15 +0800</pubDate><description><![CDATA[在ProcessOn上看到了这个整理的不错的思维导图，分享一下，可以根据思维导图复习巩固自己的基础。






]]></description><category></category></item><item><title><![CDATA[WebScoket聊天室Springboot版]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/89644546</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/89644546</guid><author>sike_java</author><pubDate>Sun, 28 Apr 2019 20:02:57 +0800</pubDate><description><![CDATA[本文是基于注释的案例，对于发送语音采用了类似文件上传下载一样的方式实现，不过播放会有一点儿延迟，正在改进。

1、首先导入webScoket相关的jar


&lt;dependency&gt;
	&lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
	&lt;artifactId&gt;spring-boot-starter-websoc...]]></description><category></category></item><item><title><![CDATA[Linux配置两个Tomcat]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/89337721</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/89337721</guid><author>sike_java</author><pubDate>Tue, 16 Apr 2019 17:35:58 +0800</pubDate><description><![CDATA[1、首先需要查看jdk环境变量是否配置好，jdk环境变量没有配置也可以用Java -version来查看版本信息

如果没有安装jdk则需要先下载jdk再配置号jdk环境变量

具体下载配置如下：

jdk下载地址：

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html



在根目...]]></description><category></category></item><item><title><![CDATA[Java获取IP]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/82785144</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/82785144</guid><author>sike_java</author><pubDate>Thu, 20 Sep 2018 13:04:44 +0800</pubDate><description><![CDATA[
package com.fun.framework.utils;

import java.util.Date;

import javax.servlet.http.HttpServletRequest;

import org.springframework.core.io.ClassPathResource;
import org.springframework.web.context.r...]]></description><category></category></item><item><title><![CDATA[java自定义注解]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/82783644</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/82783644</guid><author>sike_java</author><pubDate>Thu, 20 Sep 2018 12:16:39 +0800</pubDate><description><![CDATA[import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @Inherited允许子类继承父类中的注解
 * @Doc...]]></description><category></category></item><item><title><![CDATA[Java手机验证码]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/82735904</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/82735904</guid><author>sike_java</author><pubDate>Mon, 17 Sep 2018 13:50:33 +0800</pubDate><description><![CDATA[
 private final OkHttpClient client = new OkHttpClient.Builder().connectTimeout(3, TimeUnit.SECONDS).readTimeout(60, TimeUnit.SECONDS).retryOnConnectionFailure(false).build();
    private final String...]]></description><category></category></item><item><title><![CDATA[Java头像上传]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/82317816</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/82317816</guid><author>sike_java</author><pubDate>Sun, 02 Sep 2018 18:39:21 +0800</pubDate><description><![CDATA[
@RequestMapping(path = { &quot;/user-img-upload&quot; }, method = { RequestMethod.POST })
    public AjaxReturn  fileUpload2(HttpServletRequest request,@RequestParam(&quot;file&quot;) MultipartFile file,String account){...]]></description><category></category></item><item><title><![CDATA[java判断手机号是否合法]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/82287465</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/82287465</guid><author>sike_java</author><pubDate>Sat, 01 Sep 2018 15:20:18 +0800</pubDate><description><![CDATA[
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class PhoneUtil {
    /**
     * 验证手机号是否合法
     * @return
     */
    public static boolean isMobileNO(String mobile){
        ...]]></description><category></category></item><item><title><![CDATA[Java集成融云服务端]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/82151596</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/82151596</guid><author>sike_java</author><pubDate>Tue, 28 Aug 2018 17:36:18 +0800</pubDate><description><![CDATA[复制官方demo中pom中的jar资源位置

登录controller（登录时获取融云提供得token，通过用户账户当作融云获取token得ID）

融云用户关系需要自己实现


import java.util.*;
import java.util.concurrent.TimeUnit;

import javax.servlet.http.HttpServletRequest;

impo...]]></description><category></category></item><item><title><![CDATA[Java极光服务端对接]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/82151385</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/82151385</guid><author>sike_java</author><pubDate>Tue, 28 Aug 2018 17:21:53 +0800</pubDate><description><![CDATA[
首先在项目中引入极光的相关jar包
import cn.jiguang.common.resp.APIConnectionException;
import cn.jiguang.common.resp.APIRequestException;
import cn.jpush.api.JPushClient;
import cn.jpush.api.push.PushResult;
import...]]></description><category></category></item><item><title><![CDATA[StringUtils用法]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/80899537</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/80899537</guid><author>sike_java</author><pubDate>Tue, 03 Jul 2018 15:40:26 +0800</pubDate><description><![CDATA[/*1.字符串以prefix开始*/StringUtils.startsWith(&quot;sssdf&quot;,&quot;&quot;);//结果是：trueStringUtils.startsWith(&quot;sssdf&quot;,&quot;&quot;);//结果是：trueStringUtils.startsWith(&quot;sssdf&quot;,&quot;s&quot;);//结果是：trueStringUtils.startsWith(&quot;sssdf&quot;,&]]></description><category></category></item><item><title><![CDATA[JavaExcel导出]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/80760069</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/80760069</guid><author>sike_java</author><pubDate>Thu, 21 Jun 2018 14:33:49 +0800</pubDate><description><![CDATA[@RequestMapping(path = { &quot;api-mem-info-export&quot; }, method = { RequestMethod.POST })	 public ResponseEntity&amp;lt;byte[]&amp;gt; ddd(HttpServletRequest request) throws BusinessException{		 MemUserInfo memUserI...]]></description><category></category></item><item><title><![CDATA[java文件上传]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/80759990</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/80759990</guid><author>sike_java</author><pubDate>Thu, 21 Jun 2018 14:32:03 +0800</pubDate><description><![CDATA[    &amp;lt;form name=&quot;Form2&quot; action=&quot;/api-mem-info.json&quot; method=&quot;post&quot;  enctype=&quot;multipart/form-data&quot;&amp;gt; &amp;lt;h1&amp;gt;采用multipart提供的file.transfer方法上传文件&amp;lt;/h1&amp;gt; &amp;lt;input type=&quot;file&quot]]></description><category></category></item><item><title><![CDATA[Java读取Excel]]></title><link>https://blog.youkuaiyun.com/sike_java/article/details/80625361</link><guid>https://blog.youkuaiyun.com/sike_java/article/details/80625361</guid><author>sike_java</author><pubDate>Fri, 08 Jun 2018 17:04:46 +0800</pubDate><description><![CDATA[用Java读取Excel需要导入相关的包。下面是项目中用到的jar包。具体的代码如下：public Map&amp;lt;String, String&amp;gt; Upload(HttpServletRequest request) throws FileUploadException, IOException {		Map&amp;lt;String, String&amp;gt; result = new HashMap...]]></description><category></category></item></channel></rss>