<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Zb20171027的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Zb20171027</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Zb20171027]]></copyright><item><title><![CDATA[简历知识点总结]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/116425074</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/116425074</guid><author>Zb20171027</author><pubDate>Thu, 06 May 2021 01:15:49 +0800</pubDate><description><![CDATA[目录

一、JVM

二、集合

三、异常

四、反射

五、IO

六、线程

七、Java8新特性

八、Spring的IOC和AOP

九、Mybatis

十、SpringMVC

十一、Springboot自动配置原理

十二、SpringCloud

十三、Mysql

十四、Redis

十五、ElasticSearch

十六、Linux

十七、Docker

十八、Nginx

十九、Kafka

二十、VUE



一、JVM

1、JVM是什么
Java虚拟机，从而让Java程序能.]]></description><category></category></item><item><title><![CDATA[面试前夕准备]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/116249129</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/116249129</guid><author>Zb20171027</author><pubDate>Thu, 29 Apr 2021 02:14:47 +0800</pubDate><description><![CDATA[想想双l、nz给自己的磨难，哪怕通宵都要总结好，明天海康、新华三加油！
一、jvm（自己最擅长就说这个）
1、jvm是什么
2、jvm具体内容
3、类加载器（根、扩展、应用）双亲委派机制
4、数据运行区
5、gc垃圾回收
二、集合
1、List
ArrayList多线程add不安全，Vector、Collections下的SynchronizedList、juc下的CopyOnWriteArrayList
2、Set
HashSet add线程不安全
SynchronziedSet
CopyOnWriteA]]></description><category></category></item><item><title><![CDATA[juc总结]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/115609266</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/115609266</guid><author>Zb20171027</author><pubDate>Sun, 11 Apr 2021 23:12:55 +0800</pubDate><description><![CDATA[这里包括io、集合类和常用类
1、什么是juc
就是java.util三个工具包
1）java.util.concurrent
2）java.util.concurrent.atomic
3）java.util.concurrent.locks
2、为什么用juc
原因一：项目中有些业务无法用普通的Thread和Runnable实现，后者要用到了Thread静态代理来执行，后者比前者灵活，但和callable相比效率低没有返回值，所以使用callable，而这个就在juc下，Lock也在juc下。
2、线程]]></description><category></category></item><item><title><![CDATA[poi和easyExcel总结]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/115608228</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/115608228</guid><author>Zb20171027</author><pubDate>Sun, 11 Apr 2021 22:20:11 +0800</pubDate><description><![CDATA[1、poi和easyExcel二者区别
比如100w行数据，Apache poi是先直接全部加载到内存再处理；
而alibaba的easyexcel是通过磁盘一行行处理，所以不会有内存溢出问题，但这是时间换空间。
2、poi
A、03版excel和07版excel区别：
1）前者最多65536行，后者没有限制；
2）文件后缀不同，一个xls，另一个是xlsx。
3）poi引入依赖不同
B、写
（1）03版excel生成
首先明确一个excel是有几部分组成？
工作簿、工资表、行、单元格
所以
1）创建一个工]]></description><category></category></item><item><title><![CDATA[jvm总结（今天请假回来学习）]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/115393533</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/115393533</guid><author>Zb20171027</author><pubDate>Fri, 02 Apr 2021 10:50:54 +0800</pubDate><description><![CDATA[主要简单总结下面这三个：类加载器（双亲委派机制）、栈（不断放进去、先进后出）、堆（gc调优）
注：只有方法区和堆是线程共享，也只有这两个地方有gc回收，而且主要是堆。
一、类加载器
1、三种类加载器
系统类加载器（用户写的类加载器）
扩展类加载器（系统类加载器的父类加载器）
根加载器：用c或者c++写的，Java获取是null
（扩展类加载器的父类）
2、双亲委派机制
双亲委派机制是为了安全，防止栈是先进后出，下面有底封住，所以main方法先最下面然后a方法，执行完出去，再b方法进来后出去，然后ab相互调用]]></description><category></category></item><item><title><![CDATA[注解和反射]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/115291377</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/115291377</guid><author>Zb20171027</author><pubDate>Mon, 29 Mar 2021 00:41:26 +0800</pubDate><description><![CDATA[一、注解
1、什么是注解？（what）
类比注释，注释是给人看的，注解是给人和机器看的。（注解英文是annotation，注释英文是comment）
2、注解有什么用？（why）
首先注解不是程序本身，这点和注释没什么区别，但注解可以对程序作出解释；
其次注解可以被其他程序（比如编译器器等）读取
3、怎么用注解？（how）
使用@注释名，比如常用的内置注解@Override；还可以添加一些参数值，比如内置注解@SuppressWarnings（value=“unchecked”）镇压注解，该注解有参数是因为]]></description><category></category></item><item><title><![CDATA[多线程基础知识总结]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/115271297</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/115271297</guid><author>Zb20171027</author><pubDate>Sat, 27 Mar 2021 20:38:10 +0800</pubDate><description><![CDATA[重点是线程实现和线程同步
1、线程简介
1）多任务
一个既可以吃饭又可以玩手机
2）多线程
多个账号同时登录游戏一起玩
普通方法调用和多线程调用区别是前者是一条线走到底，效率低，后者同时进行，效率高，后者即实现了前面提到的多任务。
3）线程和进程
进程就是在操作系统中执行的一个程序，比如一个视频播放器播放的时候会有声音、图像和字幕等，而这些都是对应线程实现的，还有浏览器网页中既可以听歌又可以浏览网页这就是多线程功劳！
注：程序是一个静态的概念，是指令和数据的有序集合，只有程序跑起来后才是进程，所以进程是一个]]></description><category></category></item><item><title><![CDATA[网络编程]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/115222975</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/115222975</guid><author>Zb20171027</author><pubDate>Fri, 26 Mar 2021 01:03:44 +0800</pubDate><description><![CDATA[1、电话是tcp，因为需要连接和接通（需要先连接）
短信是udp，因为只要发送就好了（不需要先连接）
2、javaweb 网页编程 bs架构
网络编程 tcp/udp cs架构
3、网络编程两个主要问题
如何准确定位网络中一台或多台主机
找到主机之后如何通信
4、网络编程中的要素
ip和端口号
网络通信协议
5、万物皆对象，所以ip、端口和tcp都有类。
（1）ip地址：InetAddress类
192.168.xx.xx专门给组织内部使用的
ABCD类地址：0-255平分为A和B，然后128-255即B类]]></description><category></category></item><item><title><![CDATA[shell基础知识总结]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/115059698</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/115059698</guid><author>Zb20171027</author><pubDate>Mon, 22 Mar 2021 00:28:40 +0800</pubDate><description><![CDATA[shell
1、shell入门
A、shell是什么？
命令行解释器，接收应用程序和用户命令来操作linux内核，同时它也是一个功能强大的编程语言。
B、shell解释器
sh和bash，都是在/bin下面，默认bash。
C、shell脚本执行
第一行都是#!/bin/bash，然后写对应代码，需要注意的是外面执行的时候，sh或者bash hello.sh是别人帮忙执行，不需要权限，但直接./hello.sh即自己执行需要chmod权限。
输出某句话到某文件：echo 双引号字符串然后右位运算（Java中]]></description><category></category></item><item><title><![CDATA[如何实现将HTML生成PDF文件]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104861339</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104861339</guid><author>Zb20171027</author><pubDate>Sat, 14 Mar 2020 15:36:45 +0800</pubDate><description><![CDATA[1、实现思路：
调研发现有两种方法：
法1：利用js的Html2canvas和jsPdf实现，主要思路是从页面创建屏幕截图，然后把图
片放到PDF文件中；
法2：利用java的itextpdf和xmlworker实现，下面给出这种方法的实现Demo。
2、实现demo：
（1）maven注入itextpdf和xmlworker的依赖：


（2）在桌面创建简单的HTML文档

（3）写html转p...]]></description><category></category></item><item><title><![CDATA[如何实现三个线程轮流打印5个数，一直打印到75为止。]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104861143</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104861143</guid><author>Zb20171027</author><pubDate>Sat, 14 Mar 2020 15:31:45 +0800</pubDate><description><![CDATA[一、具体问题：
启动3个线程打印递增的数字, 线程1先打印1,2,3,4,5, 然后是线程2打印6,7,8,9,10, 然后是线程3打印11,12,13,14,15. 接着再由线程1打印16,17,18,19,20….以此类推, 直到打印到75。
二、解决方法：
法1：用Synchronized
package anheng;

public class NewThreadSynchronized...]]></description><category></category></item><item><title><![CDATA[深入了解Spring的IOC（DI）、AOP和SpringBoot自动配置原理]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104757621</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104757621</guid><author>Zb20171027</author><pubDate>Mon, 09 Mar 2020 20:56:56 +0800</pubDate><description><![CDATA[1、Spring的IOC和DI
（1）IOC
IOC全称是Inverse of Control，控制反转的意思，就是把对象的创建和生命周期的管理交给spring，这里提到对象的创建，那spring创建对象的方法有几种？
四种：
第一种是针对只有无参构造的类而言，直接利用反射原理创建对象，这种方式创建的对象如何放入spring容器中？在xml中写一个bean标签对，里面写id和class属性；
第二...]]></description><category></category></item><item><title><![CDATA[Java基础之一些知识点总结]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104756362</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104756362</guid><author>Zb20171027</author><pubDate>Mon, 09 Mar 2020 17:13:55 +0800</pubDate><description><![CDATA[一、设计模式
1、单例模式
（1）什么是单例模式？
这个是23种设计模式之一，设计模式就是前人总结的经验，而单例模式是指一个类只有一个实例对象，而且必须在自己类内创建。
（2）为什么用单例模式？
单例模式是让一个类只有一个对象，从而减少系统资源的消耗，比如说数据库连接池、工厂类和数据源等这种创建和销毁需要消耗很多资源的类就写成单例模式，还有Spring的bean默认作用域也是单例。
（3）怎么实现...]]></description><category></category></item><item><title><![CDATA[Java基础之多线程]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104719938</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104719938</guid><author>Zb20171027</author><pubDate>Sat, 07 Mar 2020 19:06:30 +0800</pubDate><description><![CDATA[相对于传统的单线程编程，多线程可以在操作系统多核配置的基础上，更好地利用服务器的多个CPU资源，从而使程序更加高效地运行，比如本来一个任务一个线程执行需要100毫秒，现在10个线程执行就只需要10毫秒。下面总结下Java中多线程的知识点：
1、线程的创建方式
Java中多线程的意义在哪？如果直接调用run方法则当前线程一定是等待该方法结束才能调用下面的代码，但是现在是start方法，则此线程等待c...]]></description><category></category></item><item><title><![CDATA[Java基础之设计模式]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104383502</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104383502</guid><author>Zb20171027</author><pubDate>Tue, 18 Feb 2020 21:53:04 +0800</pubDate><description><![CDATA[设计模式非常重要，在此以Animal接口和Dog类（实现Animal接口）作为基准，分别写出装饰者模式、静态代理模式和动态代理模式改造say方法的代码，为了和这三种模式写出的代码比较，先写一个熟悉的继承Dog类的代码：
1、Animal接口：
package com.huanletao.test;

public interface Animal {
     //定义吃方法
	public vo...]]></description><category></category></item><item><title><![CDATA[JavaWeb应用之实现网站注册和登录功能]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104226558</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104226558</guid><author>Zb20171027</author><pubDate>Sun, 09 Feb 2020 10:01:03 +0800</pubDate><description><![CDATA[JavaWeb中包含的技术有HTML、CSS、JS、jQuery、Request、Response、Servlet、JSP、Ajax、Cookie、Session、JDBC等，本文介绍下如何通过这些技术实现网站注册和登录功能，本文主要分为两个部分：第一个部分偏理论，主要是介绍一些技术和实现细节；第二个部分偏实践，主要是自己独立完成过程中遇到的bug和总结。
一、第一部分：
1、完成注册功能
首先是...]]></description><category></category></item><item><title><![CDATA[5、JSP]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104039374</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104039374</guid><author>Zb20171027</author><pubDate>Thu, 06 Feb 2020 19:39:46 +0800</pubDate><description><![CDATA[（1）JSP是什么？
和servlet一样都是Sun公司提供的一门动态资源开发技术，servlet是前台页面代码和后台逻辑代码分开编写，而jsp是在html页面内编写java代码，简化了前台和后台代码的切换操作，提升了开发的便利性。
那JSP的原理是什么？
Jsp页面在第一次被访问的时候，会被jsp翻译引擎翻译成一个servlet文件，具体怎么翻译？JSP里类继承HttpJspBase，这是一个s...]]></description><category></category></item><item><title><![CDATA[4、Servlet]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/104039130</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/104039130</guid><author>Zb20171027</author><pubDate>Sun, 19 Jan 2020 13:10:31 +0800</pubDate><description><![CDATA[前面聊的HTML、CSS、JS和jQuery都是静态资源，接下来聊下Servlet和JSP这两种动态资源，这里先聊下Servlet。
（1）Servlet是什么？
Sun公司提供的一个动态资源开发的技术，本质上就是一个java文件，需要先编译后执行，而且需要存储在servlet容器中，所以Servlet就是运行在Web服务器或者应用服务器上的程序，那servlet容器有哪些？比如tomcat，既是...]]></description><category></category></item><item><title><![CDATA[3、jQuery（AJAX）]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/103922309</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/103922309</guid><author>Zb20171027</author><pubDate>Fri, 10 Jan 2020 13:15:10 +0800</pubDate><description><![CDATA[1）jQuery是什么？
本质上是一个JS的函数库，极大地简化了JS编程，从而实现比JS写的更少但做的更多的效果。
jQuery是对JS的一些封装，能用jQuery的肯定用jQuery，不能用的才有JS。
首先肯定有和JS一样的功能，即可以和JS对象相互转换，那更多的功能是什么？
A、HTML元素选取、操作和事件函数；
B、HTML DOM遍历和修改；
C、CSS操作；
D、AJAX
2）jQue...]]></description><category></category></item><item><title><![CDATA[2、JavaScript]]></title><link>https://blog.youkuaiyun.com/Zb20171027/article/details/103828713</link><guid>https://blog.youkuaiyun.com/Zb20171027/article/details/103828713</guid><author>Zb20171027</author><pubDate>Sat, 04 Jan 2020 01:18:02 +0800</pubDate><description><![CDATA[1）JS是什么？
JS，即JavaScript，这是一种轻量级的编程语言，其代码可以插入HTML页面，也称之为脚本语言，是基于对象的语言，而且无需编译，直接解释执行。
2）JS怎么用？
在聊JS怎么用之前，先了解一下JS有什么用？
第一种用法是直接写入HTML输出流：


第二种用法是对事件的反应：


第三种用法是改变HTML内容：


第四种用法是验证输入：



第五种用法是改变HTML样式...]]></description><category></category></item></channel></rss>