<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[KKGDGN的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/KKGDGN</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; KKGDGN]]></copyright><item><title><![CDATA[Git的简单介绍]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/114539650</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/114539650</guid><author>KKGDGN</author><pubDate>Mon, 08 Mar 2021 21:02:43 +0800</pubDate><description><![CDATA[Git 简史
同生活中的许多伟大事物一样，Git 诞生于一个极富纷争大举创新的年代。
Linux 内核开源项目有着为数众多的参与者。 绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上（1991－2002年间）。 到 2002 年，整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维护代码。
2005 年，开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束，他们收回了 Linux 内核社区免费使用 BitKeeper 的权力。 这]]></description><category></category></item><item><title><![CDATA[String和StringBuffer、StringBuilder的区别是什么？String为什么是不可变的]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/113319043</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/113319043</guid><author>KKGDGN</author><pubDate>Thu, 28 Jan 2021 15:49:06 +0800</pubDate><description><![CDATA[可变性
String类中使用字符数组保存字符串，private　final　char　value[]，所以string对象是不可变的。StringBuilder与StringBuffer都继承自AbstractStringBuilder类，在AbstractStringBuilder中也是使用字符数组保存字符串，char[] value，这两种对象都是可变的。
线程安全性
String中的对象是不可变的，也就可以理解为常量，线程安全。AbstractStringBuilder是StringBuilder与S]]></description><category></category></item><item><title><![CDATA[一个适合小白的Javaweb基础项目（IDEA）]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/111753656</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/111753656</guid><author>KKGDGN</author><pubDate>Tue, 29 Dec 2020 14:40:09 +0800</pubDate><description><![CDATA[项目技术
主要功能
1.用户注册
2.用户登录
3.用户列表展示
4.用户信息修改
5.用户信息删除
整体架构

1.新建mysql表
-- 创建一个新的数据库object
CREATE DATABASE `object`

-- 创建user表
CREATE TABLE `user`(
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(255) NOT NULL,
`pwd` VARCHAR(255) NOT NULL,
`sex` VARCHAR(]]></description><category></category></item><item><title><![CDATA[双亲委派机制是神马？]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/111688122</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/111688122</guid><author>KKGDGN</author><pubDate>Fri, 25 Dec 2020 17:16:18 +0800</pubDate><description><![CDATA[前言
 一个编译后的class文件，想要在JVM中运行，就需要先加载到JVM中。java中将类的加载工具抽象为类加载器，而通过加载工具加载类文件的具体方式被称为双亲委派机制。
了解下Java基本知识
 Java是运行在Java的虚拟机(JVM)中的，但是它是如何运行在JVM中了呢？我们在IDE中编写的Java源代码被编译器编译成.class的字节码文件。然后由我们得ClassLoader负责将这些class文件给加载到JVM中去执行。
 JVM中提供了三层的ClassLoader：


Bootstrap ]]></description><category></category></item><item><title><![CDATA[IDEA报错：Address localhost:1099 is already in use]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/111650934</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/111650934</guid><author>KKGDGN</author><pubDate>Thu, 24 Dec 2020 19:58:28 +0800</pubDate><description><![CDATA[今天晚上写完项目准备启动tomcat时，突然IDEA报错，发现运行项目发现端口被占用了
问题报错：

在网上搜索看了看之后，找到了解决方法，没办法记性不好，只好记录一下。
解决方案：
方案一：
直接修改Tomcat端口配置
修改相应端口号为其他（被占用端口会自行销毁，不必理会）

方案二：
找到占用该端口号的进程并结束后重启Tomcat
找到PID的命令为：
netstat -aon | findstr 1099
销毁PID：
taskkill -f -pid PID以上就是解决报错的方法，如有不对请指正。]]></description><category></category></item><item><title><![CDATA[equals和==到底有什么区别呢]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/111385822</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/111385822</guid><author>KKGDGN</author><pubDate>Fri, 18 Dec 2020 18:02:38 +0800</pubDate><description><![CDATA[之前在看到网上好多都说equals比较的是值，"==”比较的地址，其实这是不严谨的。这里记录一下，比较菜鸡一枚。以下是个人理解，如有错误，请各位大佬指正。

在源码中可以看到在Object类型的equals方法是直接通过“ == ”来比较的，不能说大差不差，只能说和上述的“ == ”是一毛一样。
但是为什么我们在网上所熟知的equals是比较值的呢，因为equals是可以重写的，因为所有的类都直接或间接地继承Object类，所有在String类型中已经替我们将equals方法重写了。

当然这个equals]]></description><category></category></item><item><title><![CDATA[创建一个对象，栈/堆/方法区偷偷干了些啥?]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/111302719</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/111302719</guid><author>KKGDGN</author><pubDate>Thu, 17 Dec 2020 19:42:30 +0800</pubDate><description><![CDATA[先康康解栈/堆/方法区
1.栈
栈（Stack）是一块线程私有的空间， 每个方法分配一个栈帧，栈帧之间不共享 ，作用存放局部变量（基本数据类型和对象的引用 ）。
一个栈一般由三部分组成:局部变量表、操作数据栈和帧数据区。
1）局部变量表：我们平时所说的栈其实就是栈里面的局部变量表，这里存放基本数据类型变量和对象的引用（所需内存在编译时期完成分配，方法运行时期不改变局部变量表大小，四个字节占用一个局部变量空间）。
2）操作数栈：主要保存计算过程的中间结果，同时作为计算过程中的变量临时的存储空间，例如，替换两个]]></description><category></category></item><item><title><![CDATA[对于SQL语句中where和on的理解]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/110994250</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/110994250</guid><author>KKGDGN</author><pubDate>Thu, 10 Dec 2020 22:00:12 +0800</pubDate><description><![CDATA[话不多说，先来结论
数据库在通过连接两张或多张表来返回记录时，都会生成一张中间的临时表，然后再将这张临时表返回给用户。
一、在使用left jion时，同时使用on和where条件，结果没有区别，前者是先求笛卡尔积然后按照on后面的条件进行过滤，后者是先用on后面的条件过滤，再用where的条件过滤。
二、在使用left jion（right jion同理）时，on和where条件的区别如下：
1、on条件是在生成临时表时使用的条件，它不管on中的条件是否为真，都会返回左边表中的记录。
2、where条件是]]></description><category></category></item><item><title><![CDATA[Vue(router-link路径可以切换，但是router-view标签内容不显示)]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/107518051</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/107518051</guid><author>KKGDGN</author><pubDate>Wed, 22 Jul 2020 17:13:43 +0800</pubDate><description><![CDATA[今天下午跟着视频练习Vue,可是突然卡壳了，卡了好久，对着视频都没有问题，最后网上找的了原因，居然是单词写错了！！！ 坑爹呀！？！
第三行的单词routes写成了routers。记录一下 。
//配置导出路由
export default new Router({
  routes: [
    {
      //路由路径
      path: '/content',
      //跳转组件
      component: Content
    },
    {
      //路由lujin
 ]]></description><category></category></item><item><title><![CDATA[TCP/IP协议以及UDP协议]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/106273417</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/106273417</guid><author>KKGDGN</author><pubDate>Fri, 22 May 2020 20:57:05 +0800</pubDate><description><![CDATA[什么是TCP/IP协议?
网络体系结构是分层的体系结构，学术派标准OSI参考模型有七层，而工业标准TCP/IP模型有四层。后者成为了事实上的标准，在介绍时通常分为5层来叙述但应注意TCP/IP模型实际上只有四层。如下图所示：
这里我们将TCP/IP分为5层介绍，越靠下越接近硬件。
物理层
该层负责 比特流在节点之间的传输，即负责物理传输，这一层的协议既与链路有关，也与传输的介质有关。简单来说就是把计算机连接起来的物理手段。
数据链路层
控制网络层与物理层之间的通信，主要功能是保证物理线路上进行可靠的数据传递]]></description><category></category></item><item><title><![CDATA[Ajax的认识]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/106269870</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/106269870</guid><author>KKGDGN</author><pubDate>Thu, 21 May 2020 23:27:17 +0800</pubDate><description><![CDATA[什么是Ajax呢？
Ajax 全名 async javascript and XML(异步JavaScript和XML)。
AJAX 是一种在无需重新加载整个网页的情况下，能够更新部分网页的技术。
Ajax 不是一种新的编程语言，而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。
传统的网页(即不用ajax技术的网页)，想要更新内容或者提交一个表单，都需要重新加载整个网页。
使用ajax技术的网页，通过在后台服务器进行少量的数据交换，就可以实现异步局部更新。
使用Ajax，用户可以创建接近本地桌]]></description><category></category></item><item><title><![CDATA[MySQL数据库学习II（基础）]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105568739</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105568739</guid><author>KKGDGN</author><pubDate>Thu, 16 Apr 2020 22:31:55 +0800</pubDate><description><![CDATA[备份、恢复数据库
备份数据库表中的数据
    •cmd&gt; mysqldump -u 用户名 -p 数据库名&gt; 文件名.sql

恢复数据库（前提创建空的数据库，并且use）
    •source 文件名.sql   // 在mysql内部使用

    •mysql –u 用户名 p 数据库名 &lt;文件名.sql  // 在cmd下使用

MySQL数据库的备份和恢复
1、备份...]]></description><category></category></item><item><title><![CDATA[[问题]配置Maven环境时The JAVA_HOME environment variable is not defined correctly This environment variable]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105505985</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105505985</guid><author>KKGDGN</author><pubDate>Tue, 14 Apr 2020 10:24:39 +0800</pubDate><description><![CDATA[问题

配置Maven环境时，出现这个问题，搞了好久，搜索后终于发现了问题所在。
原因: JAVA_HOME应该设为D:\jdk路径\，path中，改为%JAVA_HOME%\bin。
结论：以后配置环境变量，HOME就是HOME，因为其中包含jre目录，如果你配置到了bin；那么jre就找不到了
就是在JAVA_HOME配置的时候
简单来水就是：加入斜杠(\)
jdk_path\


如图,就是...]]></description><category></category></item><item><title><![CDATA[MySQL数据库学习I（基础）]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105497487</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105497487</guid><author>KKGDGN</author><pubDate>Mon, 13 Apr 2020 21:22:02 +0800</pubDate><description><![CDATA[MySQL数据库
数据库就是一个文件系统，访问数据的时候需要通过标准的SQL语言来完成。
关系型的数据
保存的实体与实体之间的关系。（用户、商品、订单）
常见的数据库
Oracle 公司Oracle（甲骨文）数据产品，收费的大型的数据库。
MySQL 开源的，被Oracle收购了，小型的数据库。5.x版本免费，6.x收费了。
SQLServer 微软的，收费的中型的数据库。
DB2 IBM公司收费...]]></description><category></category></item><item><title><![CDATA[JavaSricpt学习（基础）]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105405747</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105405747</guid><author>KKGDGN</author><pubDate>Fri, 10 Apr 2020 11:28:12 +0800</pubDate><description><![CDATA[JavaScript
JavaScript简称为js，简单来说就是运行在浏览器上的脚本语言。ps：虽然带有Java，但是js跟java没有关系，当时只是想借助java的名气，不过学习Java后，再学习js相对容易一些。
1，使网页具有交互性，例如响应用户点击，给用户提供更好的体验
2，可以处理表单，检验用户的输入，并提供及时反馈节省用户时间。例如，表单中要你输入电子邮箱而你却输入一个手机号，那么应...]]></description><category></category></item><item><title><![CDATA[CSS3学习（基础）]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105359466</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105359466</guid><author>KKGDGN</author><pubDate>Tue, 07 Apr 2020 14:52:32 +0800</pubDate><description><![CDATA[css基础
CSS全称Cascading Style Sheet(层叠级联样式表)，是表现标准语言，主要来美化网页。涉及文字，颜色，边距，高度，背景图片网页定位和网页浮动等。
css的优势：

内容和表现分离
网页结构表现统一，可以实现复用
样式丰富
利用SEO，容易被搜索引擎收录

css的导入方式：
一、行内样式
在语句中中直接使用style属性引入CSS样式。
示例：
&lt;h1 styl...]]></description><category></category></item><item><title><![CDATA[HTML5学习（基础）]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105356987</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105356987</guid><author>KKGDGN</author><pubDate>Tue, 07 Apr 2020 10:47:17 +0800</pubDate><description><![CDATA[HTML
全称Hyper Text Markup Language(超文本标记语言)，文本中包含了文字，图片，音频，视频和动画等。受到各大浏览器的支持。
W3C:World Wide Wed Consortium(万维网联盟)。成立1994年，WeB技术领域最权威和具有影响力的国际中立技术标准机构。
标准：
结构化标准语言（HTML/XML）
表现标准语言（CSS）
行为标准（DOM/ECMASc...]]></description><category></category></item><item><title><![CDATA[Java-反射机制/类的加载]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105312721</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105312721</guid><author>KKGDGN</author><pubDate>Sat, 04 Apr 2020 17:54:49 +0800</pubDate><description><![CDATA[一、反射的概述
在JAVA反射机制是在运行状态中，对于任意一个类，都能够知道这个类的所有属性和方法；对于任意一个对象，都能够调用它的任意一个方法和属性；动态获取的信息以及动态调用对象的方法。
要想对一个类操作,首先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.
反射就是把java类中的各种成分映射成一个个的Java对象...]]></description><category></category></item><item><title><![CDATA[Java-线程面试题]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105303434</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105303434</guid><author>KKGDGN</author><pubDate>Fri, 03 Apr 2020 23:24:17 +0800</pubDate><description><![CDATA[以下是网上找到的关于线程的面试题目。
● 如何保证线程安全？
通过合理的时间调度，避开共享资源的存取冲突。另外，在并行任务设计上可以通过适当的策略，保证任务与任务之间不存在共享资源，设计一个规则来保证一个客户的计算工作和数据访问只会被一个线程或一台工作机完成，而不是把一个客户的计算工作分配给多个线程去完成。
● 请你简要说明一下线程的基本状态以及状态之间的关系？
其中Running表示运行状态，R...]]></description><category></category></item><item><title><![CDATA[Java-线程的三种创建方法]]></title><link>https://blog.youkuaiyun.com/KKGDGN/article/details/105256857</link><guid>https://blog.youkuaiyun.com/KKGDGN/article/details/105256857</guid><author>KKGDGN</author><pubDate>Wed, 01 Apr 2020 22:40:05 +0800</pubDate><description><![CDATA[线程创建方法
JAVA多线程实现方式主要有三种：继承Thread类、实现Runnable接口、实现Callable接口。其中前两种方式线程执行完后都没有返回值，只有最后一种是带返回值的。

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.co...]]></description><category></category></item></channel></rss>