<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ayddcxy的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ayddcxy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ayddcxy]]></copyright><item><title><![CDATA[大厨的菜单]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/140640604</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/140640604</guid><author>ayddcxy</author><pubDate>Tue, 23 Jul 2024 17:11:32 +0800</pubDate><description><![CDATA[啤酒鸭(拿手)可乐鸡翅(熟练)大盘鸡(菜鸡)辣椒炒肉(熟练)四季豆炒肉(熟练)剁椒炒鸡肉(一般)茭白炒肉(熟练)生炒脆肚(无)辣椒炒蛋(熟练)剁椒花甲(无)爆炒牛肚(无)小炒黄牛肉(无)永州血鸭(无)爆炒鸡翅(一般)回锅肉(无)腊肉炒豆腐(拿手)口味基围虾(一般)蒜香排骨(一般)肉末茄子(一般)红烧排骨(无)火腿炒蛋(拿手)蛋炒饭(拿手)葱花煎蛋(拿手)凉拌皮蛋(拿手)擂椒皮蛋(一般)肉末豆腐(一般)]]></description><category></category></item><item><title><![CDATA[Java项目打包发布步骤]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/134554758</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/134554758</guid><author>ayddcxy</author><pubDate>Wed, 22 Nov 2023 15:42:15 +0800</pubDate><description><![CDATA[Java项目打包发布步骤]]></description><category></category></item><item><title><![CDATA[Linux服务器上部署Java项目（前后分离）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/134553658</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/134553658</guid><author>ayddcxy</author><pubDate>Wed, 22 Nov 2023 15:18:09 +0800</pubDate><description><![CDATA[Linu服务器上部署Java项目]]></description><category></category></item><item><title><![CDATA[java基础]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/132044204</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/132044204</guid><author>ayddcxy</author><pubDate>Wed, 02 Aug 2023 18:12:08 +0800</pubDate><description><![CDATA[单例模式：某个类的实例在多线程环境下只会被创建一次出来。单例模式有饿汉式单例模式，懒汉式单例模式，双检锁单例模式三种饿汉式：线程安全，一开始就初始化。} }懒汉式：非线程安全，延迟初始化。} }双检锁：线程安全，延迟初始化。} }**线程：**是进程的一个实体，是 cpu 调度和分派的基本单位，是比进程更小的 可以独立运行的基本单位。**进程：**具有一定独立功能的程序关于某个数据集合上的一次运行活动，是操作系统进行资源分配和调度的一个独立单位。]]></description><category></category></item><item><title><![CDATA[Java 使用poi自定义下载Excel模板]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/121785256</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/121785256</guid><author>ayddcxy</author><pubDate>Wed, 08 Dec 2021 10:20:45 +0800</pubDate><description><![CDATA[poi自定义Excel模板
设置下拉框以及悬浮提示信息
首先导入maven依赖
		&lt;dependency&gt;
            &lt;groupId&gt;org.apache.poi&lt;/groupId&gt;
            &lt;artifactId&gt;poi&lt;/artifactId&gt;
            &lt;version&gt;4.1.2&lt;/version&gt;
        &lt;/dependency&gt;
       ]]></description><category></category></item><item><title><![CDATA[用EasyExcel实现表格的导入，导出]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/121784346</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/121784346</guid><author>ayddcxy</author><pubDate>Wed, 08 Dec 2021 10:13:54 +0800</pubDate><description><![CDATA[EasyExcel
本文使用的是阿里巴巴开源的对Excel操作读写的EasyExcel，它比传统上poi等一些技术省内存，EasyExcel在最大可能性上面节约内存。poi，jxl等技术存在最严重的问题就是耗内存。
一，导入maven依赖
		&lt;dependency&gt;
            &lt;groupId&gt;cn.afterturn&lt;/groupId&gt;
            &lt;artifactId&gt;easypoi-base&lt;/artifactId&g]]></description><category></category></item><item><title><![CDATA[DoF 23 (设计模式)-＞单例模式，工厂模式]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/121435348</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/121435348</guid><author>ayddcxy</author><pubDate>Sat, 20 Nov 2021 11:03:47 +0800</pubDate><description><![CDATA[单例模式
特点：

保证一个类只有一个实例，并且提供一个访问该实例的全局访问点。
单例类必须自己创建自己的唯一实例。
单例类必须给所有其他对象提供这一实例。
单例模式的构造器，实例都是私有的。

单例模式确保某个类只有一个实例，而且自行实例化并向整个系统提供这个实例。总之单例模式就是为了避免不一致状态。
一，懒加载模式
//懒汉式单例类，在第一次调用的时候实例化自己
public class Singleton{
	private Singleton(){}
	//先创将，但不会实例化，而是等到调用的时候实]]></description><category></category></item><item><title><![CDATA[DOF23 设计模式（23种设计模式）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/121241785</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/121241785</guid><author>ayddcxy</author><pubDate>Wed, 10 Nov 2021 14:00:43 +0800</pubDate><description><![CDATA[DOF23 设计模式
谈一谈设计模式本身
一，什么是设计模式？
设计模式（Design Pattern）是前辈们对代码开发经验的总结，是解决特定问题的一系列套路。它不是语法规定，而是一套用来提高代码可复用性，可维护性，可读性，稳健性以及安全性的解决方案。
二，设计模式的意义
设计模式的本质是面向对象设计原则的实际运用，是对类的封装性，继承性和多态性以及类的关联关系和组合关系的充分理解。
正确使用设计模式具有以下优点：

可以提高程序员的思维能力，编程能力和设计能力
是程序更加标准化，代码编制更加工程化，使软]]></description><category></category></item><item><title><![CDATA[JAVA基础笔记7（Nginx）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/120358047</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/120358047</guid><author>ayddcxy</author><pubDate>Sat, 18 Sep 2021 00:41:44 +0800</pubDate><description><![CDATA[Nginx
项目刚上线的时候，并发量小，使用的用户少，所以在低并发的情况下，一个jar包启动就够了，然后内部Tomcat返回内容给用户。

但是慢慢的，使用平台的用户越来越多，并发量越来越大，这时候一台服务器满足不了我们的需求了

于是我们横向扩展，又增加了服务器。这时候几个项目启动在不同的服务器上，用户需要访问，就需要增加一个代理服务器了，通过代理服务器来帮我们转发和处理请求。

我们希望这个代理服务器可以帮助我们接受用户的请求，然后将用户的请求按照规则帮我们转发到不同的服务器节点之上，这个过程是无感知的]]></description><category></category></item><item><title><![CDATA[JAVA基础笔记6（多线程）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/120339132</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/120339132</guid><author>ayddcxy</author><pubDate>Fri, 17 Sep 2021 02:40:56 +0800</pubDate><description><![CDATA[多线程
普通线程和多线程的区别

程序.进程.线程
在操作系统中运行的程序就是，比如你的QQ，播放器，游戏，IDE等等
一个进程中可以有多个线程，比如视频中同时听声音，看图像，看弹幕，等等
Process与Thread
说起进程，就不得不说下程序。程序是指令和数据的有序集合，其本身没有任何运行的含义，是一个静态的概念。
而进程则是执行程序的一次执行过程，它是一个动态的概念。是系统资源分配的单位。
通常在一个进程中可以包含多个线程，当然一个进程中至少有一个线程，不然没有存在的意义。线程是由CPU调度和执行的单]]></description><category></category></item><item><title><![CDATA[JAVA基础笔记5（注解与反射）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/120278721</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/120278721</guid><author>ayddcxy</author><pubDate>Tue, 14 Sep 2021 04:07:36 +0800</pubDate><description><![CDATA[注解
Annotation是从JDK5.0开始引入的新技术

Annotation的作用：不是程序本身，可以对程序做出解释。（这一点和注释(comment)没什么区别）。可以被其他程序(比如：编译器)读取
Annotation的格式：注解是以**@注释名**在代码中存在的，还可以添加一些参数值，例如：@SuppressWarnings(value = “unchecked”)。
Annotation在哪里使用：可以附加在package，class，method，field等上面，相当于给他们添加了额外的辅助]]></description><category></category></item><item><title><![CDATA[JAVA基础笔记4（JVM标记清除算法和JMM内存模型）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/120246110</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/120246110</guid><author>ayddcxy</author><pubDate>Sun, 12 Sep 2021 17:51:15 +0800</pubDate><description><![CDATA[JAVA基础复习4
JVM GC垃圾回收
标记清除算法

标记压缩算法

标记清除压缩算法

JVM 总结

内存效率算法顺序：复制算法 &gt; 标记清除算法 &gt; 标记压缩算法（时间复杂度）
内存整齐度算法顺序：复制算法 = 标记压缩算法 &gt; 标记清除算法
内存利用率算法顺序：标记压缩算法 = 标记清除算法 &gt; 复制算法

没有最好的算法，只有最合适的算法：GC：分代收集算法

年轻代：存活率低，复制算法
老年代：区域大：存活率高，标记清除算法（内存碎片不是太多的情况下可以多清除几次）+]]></description><category></category></item><item><title><![CDATA[JAVA基础笔记3（JVM堆与GC(垃圾回收)）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/120232503</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/120232503</guid><author>ayddcxy</author><pubDate>Sat, 11 Sep 2021 02:48:23 +0800</pubDate><description><![CDATA[JAVA基础笔记3
堆
Heap，一个JVM只有一个堆内存，堆内存的大小是可以调节的。
类加载器读取了类文件后，会把什么东西放到堆中：类new过的对象(方法，属性),常量池，保存我们所有引用类型的真实对象。
堆内存中还要细分为三个区域：

新生区(Young/new)：类诞生和成长的地方，甚至死亡。伊甸园区：所有的对象都是在伊甸园区new出来的，伊甸园区满了之后会启动GC(轻量级垃圾回收)，然后把存活下来的对象放入到幸存区中。幸存区(to,form)：谁是空的谁是幸存区to，比如从伊甸园区下来的对象放入到t]]></description><category></category></item><item><title><![CDATA[JAVA基础笔记2（JVM沙箱安全机制，Native关键字，PC寄存器，方法区，栈）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/120213234</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/120213234</guid><author>ayddcxy</author><pubDate>Fri, 10 Sep 2021 02:31:05 +0800</pubDate><description><![CDATA[JAVA基础笔记
JAVA沙箱安全机制
java安全模型的核心就是java沙箱(sandbox)，什么是沙箱？沙箱是一个限制程序运行环境。沙箱机制就是将java代码限定在虚拟机(JVM)特定的运行范围中，并且严格限制代码对本地系统资源访问，通过这样的措施来保证对代码的有效隔离，防止对本地系统造成破坏。沙箱主要限制系统资源访问系统资源访问包括：CPU，内存，文件系统，网络。不同级别的沙箱对这些资源访问的限制也可以不一样。
所有的java程序运行都可以指定沙箱，可以定制安全策略。
在java中将执行程序分成本地]]></description><category></category></item><item><title><![CDATA[JAVA基础笔记1（JAVA运行原理及流程，JAVA内存与JVM，以及==，equals，hashcode三者）]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/120189334</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/120189334</guid><author>ayddcxy</author><pubDate>Wed, 08 Sep 2021 22:58:38 +0800</pubDate><description><![CDATA[JAVA基础笔记
JAVA运行原理

平时我们编程的话需要给电脑安装jdk运行环境，如果只是运行java程序的话只需要装jre就可以了，jdk中包含jre，jre中包含jvm(虚拟机)。在java中引入了虚拟机概念，即在机器和编译程序之间加入了一层抽象的虚拟机器。这台虚拟机器在任何平台上都是提供编译程序的一个共同接口。编译程序只需要面向虚拟机，生成虚拟机能够理解的代码，然后由解释器来将虚拟机代码转换成特定系统的机器码执行。在java中，这种供虚拟机理解的代码叫做字节码(ByteCode Class文件内容)]]></description><category></category></item><item><title><![CDATA[Java基础复习(第四次)]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/119204039</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/119204039</guid><author>ayddcxy</author><pubDate>Thu, 29 Jul 2021 17:18:25 +0800</pubDate><description><![CDATA[Java基础复习(第四次)
Java异常（Throwable）
在程序运行过程中出现的错误，称之为异常。异常就是程序运行过程中出现了不正常现象导致程序中断。
在Java中，把各种异常现象进行了抽象形成了异常类。
异常类结构图

异常的分类
异常主要分为：错误，一般性异常(受控制异常)，运行时异常(非受控制异常)

错误：Error三种常见报错，如果程序中出现了Error，那么将无法恢复。
受控异常：这种异常属于一般异常，出现了这种异常必须显示的处理，不显示处理Java程序就正常编译不了。编译器强制普通异常必]]></description><category></category></item><item><title><![CDATA[复习Java基础第三天]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/118732069</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/118732069</guid><author>ayddcxy</author><pubDate>Sat, 17 Jul 2021 16:13:31 +0800</pubDate><description><![CDATA[复习Java基础第三天
了解JVM

JVM：Java Virtual Machine，它就是Java虚拟机。
所谓虚拟机是指：通过软件模拟的一台具有完整硬件系统功能的，运行在一个完全隔离环境中的计算机系统。
JVM是通过软件来模拟Java字节码的指令集，是Java程序的运行环境。

JVM主要功能作用

通过ClassLoader查找和装载class文件。
解释字节码成为指令并执行，提供class文件的运行环境
进行运行期间的内存分配和垃圾回收。
提供与硬件交互的平台。


...]]></description><category></category></item><item><title><![CDATA[复习Java第二天]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/118659573</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/118659573</guid><author>ayddcxy</author><pubDate>Tue, 13 Jul 2021 16:58:35 +0800</pubDate><description><![CDATA[复习Java第二天
Java常用API
Java API 是JDK所提供的使用类，这些类将底层的代码给封装起来了。Object类是
Java语言中的根类，它所描述的所有方法，子类都可以使用，所有类在创建对象的
时候，最终找的父类就是Object。在Object类中最常见的方法就是equals方法和
toString方法。equals方法用于比较两个对象是否相等，其实是在比较两个对象的
内存地址。在重写Object类中equals方法的时候一定要注意public boolean equals
(Object ]]></description><category></category></item><item><title><![CDATA[复习Java基础第一天]]></title><link>https://blog.youkuaiyun.com/ayddcxy/article/details/118640228</link><guid>https://blog.youkuaiyun.com/ayddcxy/article/details/118640228</guid><author>ayddcxy</author><pubDate>Sun, 11 Jul 2021 14:19:16 +0800</pubDate><description><![CDATA[复习Java基础第一天从了解Java开始Java的三大特性(封装，继承，多态)非访问修饰符变量，数据类型和运算符如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
从了解Java开始
Java是一门面向对象编程语言，它有面向对象，可移植性，一处编译到处运行(跨平台性)这三个特]]></description><category></category></item></channel></rss>