<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chennnm的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chennnm</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chennnm]]></copyright><item><title><![CDATA[用java实现RPC编解码]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/125473248</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/125473248</guid><author>chennnm</author><pubDate>Fri, 01 Jul 2022 22:37:34 +0800</pubDate><description><![CDATA[自定义RPC编解码器]]></description><category></category></item><item><title><![CDATA[使用socket实现一个简单的RPC服务端和客户端]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/125380103</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/125380103</guid><author>chennnm</author><pubDate>Mon, 20 Jun 2022 21:51:07 +0800</pubDate><description><![CDATA[Socket实现简单的RPC中间间]]></description><category></category></item><item><title><![CDATA[MySql性能监控performance_schema数据库常用查询语句]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/115178733</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/115178733</guid><author>chennnm</author><pubDate>Wed, 24 Mar 2021 16:19:43 +0800</pubDate><description><![CDATA[这里写自定义目录标题
–1、哪类SQL执行最多
select DIGEST_TEXT,COUNT_STAR,FIRST_SEEN,LAST_SEEN FROM events_statements_summary_by_digest ORDER BY COUNT_STAR DESC

–2、哪类SQL的平均响应时间最多
SELECT DIGEST_TEXT,AVG_TIMER_WAIT FROM events_statements_summary_by_digest ORDER BY COUNT_STAR D]]></description><category></category></item><item><title><![CDATA[Spring 自定义标签]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/113819243</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/113819243</guid><author>chennnm</author><pubDate>Mon, 15 Feb 2021 20:50:22 +0800</pubDate><description><![CDATA[项目结构如下图



POM文件


&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven]]></description><category></category></item><item><title><![CDATA[Java byte[] 工具类]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/112918752</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/112918752</guid><author>chennnm</author><pubDate>Thu, 21 Jan 2021 10:58:19 +0800</pubDate><description><![CDATA[/**
 * byte[]工具类
 */
public class byteUtils {
    public int getBit(byte b, int i) {
        return ((b &gt;&gt; i) &amp; 0x1);
    }

    //b为传入的字节，start是起始位，length是长度，如要获取bit0-bit4的值，则start为0，length为5
    public int getBits(byte b, int start, int length.]]></description><category></category></item><item><title><![CDATA[JVM对类的加载代码示例]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/90181171</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/90181171</guid><author>chennnm</author><pubDate>Mon, 13 May 2019 21:29:00 +0800</pubDate><description><![CDATA[第一段代码:


package jvm.domain;

public class MyTest {
    public static void main(String[] args) {
        System.out.println(Child.str);
    }
}

class Parent {

    public static String str = "hello w...]]></description><category></category></item><item><title><![CDATA[JVM类的加载]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/90143831</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/90143831</guid><author>chennnm</author><pubDate>Sun, 12 May 2019 20:25:19 +0800</pubDate><description><![CDATA[概括:

1.Java程序对类的使用方式可分为两种

主动使用
	被动使用
2.所有的Java虚拟机实现必须在每个类或接口被Java程序“首次主动使用”时才初始化他们

主动使用类的七种方式:

创建类的实例
	访问某个类或接口的静态变量，或这对该静态变量赋值
	调用类的静态方法
	反射(如Class.forName("xxx.xxx.xx"))
	初始化一个类的子类
	Java虚拟机启动时被标明...]]></description><category></category></item><item><title><![CDATA[JVM类加载器深入剖析]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/90113190</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/90113190</guid><author>chennnm</author><pubDate>Sat, 11 May 2019 19:02:36 +0800</pubDate><description><![CDATA[概括

Java中的每一个类型(class字节码文件)，数据结构信息都会被纳入到JVM的管辖范围内，也就是会进入到JVM的内存中，这些工作都是由JVM类加载器来完成的

Java虚拟机与程序的生命周期

1.可能导致虚拟机退出的情况

在程序代码中显示的去调用了System.exit()方法
	程序正常执行结束
	程序在执行过程中遇到了异常或错误而异常终止
	由于操作系统出现了错误而导致Java虚...]]></description><category></category></item><item><title><![CDATA[JVM类的加载概括]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/90113033</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/90113033</guid><author>chennnm</author><pubDate>Sat, 11 May 2019 18:19:07 +0800</pubDate><description><![CDATA[在Java代码中，类型的加载、连接与初始化过程都是在程序运行期间完成的

1.类型的加载:常见的方式有将已经编译好的class文件，从磁盘中加载到内存中

2.连接:将类与类之间的的关系给确定好，并完成对字节码文件的校验和一些相关的处理，确保字节码没有问题

3.初始化:对代码中的一些静态变量进行赋值操作

  
...]]></description><category></category></item><item><title><![CDATA[Springboot-plus安装]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/81027675</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/81027675</guid><author>chennnm</author><pubDate>Fri, 13 Jul 2018 10:49:19 +0800</pubDate><description><![CDATA[1. 下载项目:项目不要通过浏览器进行下载，经测试浏览器下载的项目出现了各种问题正确的下载方式是通过 git工具进行下载，git工具如何安装请百度通过git clone 命令进行下载如下图: 2. 安装项目通过git clone 下载的项目会放到当前目录下，项目结构如下图： 在运行项目之前需要创建数据库，数据库文件在doc文件夹中，只需要运行一个即可，注意建议mysql版本为8.0以上 数据库安装...]]></description><category></category></item><item><title><![CDATA[Centos7安装Oracle11g记录]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/80380288</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/80380288</guid><author>chennnm</author><pubDate>Sun, 20 May 2018 10:42:58 +0800</pubDate><description><![CDATA[1、下载Oracle安装包：linux.x64_11gR2_database_1of2.zip 和 linux.x64_11gR2_database_2of2.zip ，可以下载到本地，通过ftp服务上传到Linux系统（参考CentOS7 FTP服务器搭建），也可以使用Linux系统的wget命令，下载文件包；2、创建运行oracle数据库的系统用户和用户组：　　用Root账号登录，运行下面指令...]]></description><category></category></item><item><title><![CDATA[Java分页功能实现]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/78171856</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/78171856</guid><author>chennnm</author><pubDate>Sat, 07 Oct 2017 21:35:29 +0800</pubDate><description><![CDATA[代码是用用Maven管理的
Controller代码
package cn.masterYi.controller;

import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

import cn.m]]></description><category></category></item><item><title><![CDATA[js分页]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/78164629</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/78164629</guid><author>chennnm</author><pubDate>Fri, 06 Oct 2017 12:05:35 +0800</pubDate><description><![CDATA[js代码


 a{
            color: #000;
        }
        #map2-result{
            margin-top: 60px; 
            margin-left: 40px; 
            margin-bottom:40px; 
            line-height:15px;]]></description><category></category></item><item><title><![CDATA[netty学习demo01]]></title><link>https://blog.youkuaiyun.com/chennnm/article/details/78159546</link><guid>https://blog.youkuaiyun.com/chennnm/article/details/78159546</guid><author>chennnm</author><pubDate>Wed, 04 Oct 2017 21:34:04 +0800</pubDate><description><![CDATA[最近一直在学习netty，吧自己学的时敲的代码和犯错的地方分析，希望能帮助到和我一样的新手
以时间请求通信为例（这也是netty权威指南的上的java代码）
分享一下我简单粗暴的学习方法，不懂的代码先敲3遍以上，在去看书会比直接看书效果好。
import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.ChannelFu]]></description><category></category></item></channel></rss>