<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[鹤野云间]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ocean_java666</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ocean_java666]]></copyright><item><title><![CDATA[什么是二层隔离三层互通？]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/93413113</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/93413113</guid><author>ocean_java666</author><pubDate>Sun, 23 Jun 2019 22:05:00 +0800</pubDate><description><![CDATA[二层隔离就是通过子网和VLAN或者VXLAN技术对主机进行隔离，具有减少之间的广播，限制攻击的好处。但是主机间又不能不互通，所以要通过三层路由的方式进行通信；二层隔离就是不做VLAN或者VXLAN间的路由。三层互通就是之间做了VLAN和VXLAN之间路由。通常，普通的交换机只工作在数据链路层上，路由器则工作在网络层。而功能强大的三层交换机可同时工作在数据链路层和网络层，并根据MAC地址或IP地址转...]]></description><category></category></item><item><title><![CDATA[VLAN和VXLAN的讲解]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/90416856</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/90416856</guid><author>ocean_java666</author><pubDate>Tue, 21 May 2019 22:27:39 +0800</pubDate><description><![CDATA[VLAN
·概况&nbsp;
&nbsp; &nbsp; VLAN (Virtual Local Area Network)意为虚拟局域网，是在交换机实现过程中涉及到的概念，由802.1Q标准所定义。由于交换机是工作在链路层的网络设备，连接在同一台交换机的终端处于同一个三层网中，同时也处于同一个广播域。当交换机接入较多的终端时，任意一台终端发送广播报文时（例如：ARP请求），报文都会传遍整个网络...]]></description><category></category></item><item><title><![CDATA[Spring注解中Configuration和Bean的使用讲解]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/88864600</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/88864600</guid><author>ocean_java666</author><pubDate>Thu, 28 Mar 2019 11:05:12 +0800</pubDate><description><![CDATA[从Spring3.0，@Configuration用于定义配置类，可替换xml配置文件，被注解的类内部包含有一个或多个被@Bean注解的方法，这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描，并用于构建bean定义，初始化Spring容器。
注意：@Configuration注解...]]></description><category></category></item><item><title><![CDATA[maven中scope的范围]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/88578530</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/88578530</guid><author>ocean_java666</author><pubDate>Mon, 18 Mar 2019 19:11:44 +0800</pubDate><description><![CDATA[&amp;amp;lt;dependency&amp;amp;gt; 
    &amp;amp;lt;groupId&amp;amp;gt;javax.servlet&amp;amp;lt;/groupId&amp;amp;gt; 
    &amp;amp;lt;artifactId&amp;amp;gt;javax.servlet-api&amp;amp;lt;/artifactId&amp;amp;gt; 
    &amp;amp;lt;version&amp;amp;gt;3.0.1&amp;a]]></description><category></category></item><item><title><![CDATA[Spring源码中容器的基本实现]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/85082763</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/85082763</guid><author>ocean_java666</author><pubDate>Wed, 19 Dec 2018 11:09:18 +0800</pubDate><description><![CDATA[使用XmlBeanFactory容器来加载容器中Bean的过程
在Spring源码中XmlBeanFactory.java

]]></description><category></category></item><item><title><![CDATA[Spring中BeanFactory和FactoryBean的区别]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/85078825</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/85078825</guid><author>ocean_java666</author><pubDate>Tue, 18 Dec 2018 20:48:24 +0800</pubDate><description><![CDATA[BeanFacotry是spring中比较原始的Factory。如XMLBeanFactory就是一种典型的BeanFactory。原始的BeanFactory无法支持spring的许多插件，如AOP功能、Web应用等。 ApplicationContext接口,它由BeanFactory接口派生而来，ApplicationContext包含BeanFactory的所有功能，通常建议比BeanFa...]]></description><category></category></item><item><title><![CDATA[为什么HashMap集合的初始大小是16？]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/85051694</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/85051694</guid><author>ocean_java666</author><pubDate>Mon, 17 Dec 2018 16:40:17 +0800</pubDate><description><![CDATA[如果两个元素不相同,但是hash函数的值相同,这两个元素就是一个碰撞
因为把任意长度的字符串变成固定长度的字符串,所以存在一个hash对应多个字符串的情况,所以碰撞必然存在
为了减少hash值的碰撞,需要实现一个尽量均匀分布的hash函数,在HashMap中通过利用key的hashcode值,来进行位运算
公式:index = e.hash &amp;amp; (newCap - 1)
举个例子:
1.计...]]></description><category></category></item><item><title><![CDATA[链表的初始化以及查找链表中倒数第k个节点的值]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/82561451</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/82561451</guid><author>ocean_java666</author><pubDate>Sun, 09 Sep 2018 19:43:22 +0800</pubDate><description><![CDATA[public class LinkedList {

    public static class Node {
        int value;
        Node next;
        public Node(int value) {
            this.value=value;
        }

    }

    public static Node ...]]></description><category></category></item><item><title><![CDATA[java中数组与集合的互相转换]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81670135</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81670135</guid><author>ocean_java666</author><pubDate>Tue, 14 Aug 2018 16:51:46 +0800</pubDate><description><![CDATA[最近在刷笔试的编程题，里面很多涉及到了数组与集合的相互转换



public class ArrayAndList {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int arrys []=new int[]{1,2,3,4,5,6};
     ...]]></description><category></category></item><item><title><![CDATA[java中几种常见集合的底层实现原理（HashMap、hashtable、ConcurrentHashMap）]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81626481</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81626481</guid><author>ocean_java666</author><pubDate>Mon, 13 Aug 2018 11:10:29 +0800</pubDate><description><![CDATA[一、HashMap的底层数据结构叙述： 
（1）实现Map集合； 
（2）底层数据结构是数组链表结构，数组的初始容量是16，每次扩容的大小是上一次的2倍 
源码中是capacity &amp;amp;amp;amp;lt;&amp;amp;amp;amp;lt;= 1，所以每次扩容后的容量是上一次的两倍； 
（3）不允许null的key和null的value，如果出现null的key和null会报出异常的现象； 
（4）HashMap的存储，先计算key的ha...]]></description><category></category></item><item><title><![CDATA[数据结构中几种排序的java实现]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81608045</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81608045</guid><author>ocean_java666</author><pubDate>Sun, 12 Aug 2018 17:02:25 +0800</pubDate><description><![CDATA[1. 选择排序 
 “` 
public static int[] selectSort(int[] arrys){ 
        int high=arrys.length; 
        for(int i=0;i

 **2. 冒泡排序**



public static int[] bubbleSort(int[] arrys){
    for(int i=0;i&amp;amp;amp;amp;lt;arr...]]></description><category></category></item><item><title><![CDATA[java实现二叉树的三种遍历（前序、中序、后序）]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81606705</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81606705</guid><author>ocean_java666</author><pubDate>Sun, 12 Aug 2018 15:15:15 +0800</pubDate><description><![CDATA[话不多说直接上代码，一切尽在代码中：



public class BinTree {
    private Node root;
    private List&amp;lt;Node&amp;gt; list=new ArrayList&amp;lt;Node&amp;gt;();
    public BinTree(){
        Node x=new Node(&quot;X&quot;,null,null);
       ...]]></description><category></category></item><item><title><![CDATA[java中的动态代理机制]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81558096</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81558096</guid><author>ocean_java666</author><pubDate>Fri, 10 Aug 2018 09:58:25 +0800</pubDate><description><![CDATA[在学习Spring的时候，我们知道Spring主要有两大思想，一个是IoC，另一个就是AOP，对于IoC，依赖注入就不用多说了，而对于Spring的核心AOP来说，我们不但要知道怎么通过AOP来满足的我们的功能，我们更需要学习的是其底层是怎么样的一个原理，而AOP的原理就是java的动态代理机制，所以本篇随笔就是对java的动态机制进行一个回顾。 
在java的动态代理机制中，有两个重要的类或接口...]]></description><category></category></item><item><title><![CDATA[hashtable和HashMap对null key 、null value 的支持]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81411044</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81411044</guid><author>ocean_java666</author><pubDate>Sat, 04 Aug 2018 14:55:07 +0800</pubDate><description><![CDATA[在一篇博客里看到的，这一块讲解的很好，所以截图啦 
]]></description><category></category></item><item><title><![CDATA[java中多线程的几种状态]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81386966</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81386966</guid><author>ocean_java666</author><pubDate>Fri, 03 Aug 2018 14:28:15 +0800</pubDate><description><![CDATA[总结：新建状态、就绪状态、运行状态、阻塞状态、死亡状态

新建状态（New）：当线程对象对创建后，即进入了新建状态，如：Thread t = new MyThread(); 
就绪状态（Runnable）：当调用线程对象的start()方法（t.start();），线程即进入就绪状态。处于就绪状态的线程，只是说明此线程已经做好了准备，随时等待CPU调度执行，并不是说执行了t.start()此线程立...]]></description><category></category></item><item><title><![CDATA[Java虚拟机的类加载机制]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81276135</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81276135</guid><author>ocean_java666</author><pubDate>Sun, 29 Jul 2018 22:01:45 +0800</pubDate><description><![CDATA[一、类的生命周期： 
类的生命周期包括：加载、验证、准备、解析、初始化、使用、卸载。其中验证、准备、解析又称连接。 
加载：


通过一个类的全限定名来获取定义此类的二进制字节流。
将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。
在内存中生成一个代表这个类的java.lang.Class对象，作为方法区这个类的各种数据的访问入口。


验证： 
需要注意几个验证阶段 
 1. 第一...]]></description><category></category></item><item><title><![CDATA[JVM 的垃圾回收算法]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81264520</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81264520</guid><author>ocean_java666</author><pubDate>Sat, 28 Jul 2018 19:46:21 +0800</pubDate><description><![CDATA[一、那些对象是可以回收的 
1、使用标记计数法**：给对象添加一个引用计数器，每当一个有一个地方引用它时，计数器就加1，当引用失效时，计数器就减1；任何时刻计数器为0的对象就是不可能再被使用的。这时就存在一个问题，如果有两个对象，A对象调用B对象，B对象调用A对象，他们互相引用着，导致计数器的值不为0，实际上这两个对象已经不可能再被访问，需要进行垃圾回收，所以使用计数法是行不通的。 
2、可达性分...]]></description><category></category></item><item><title><![CDATA[java中SQL注入的讲解]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81227759</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81227759</guid><author>ocean_java666</author><pubDate>Thu, 26 Jul 2018 21:12:42 +0800</pubDate><description><![CDATA[1、 举一个简单的SQL注入攻击的例子： 
假如我们有一个users表，里面有两个字段username和password。在我们的java代码中我们初学者都习惯用sql拼接的方式进行用户验证。比如：” select id from users where username = ‘”+username +”’ and password = ‘”  + password +”’ ” 这里的userna...]]></description><category></category></item><item><title><![CDATA[java语言实现二分查找的两种方法]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81174240</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81174240</guid><author>ocean_java666</author><pubDate>Mon, 23 Jul 2018 20:35:06 +0800</pubDate><description><![CDATA[
非递归方法 
public static int select(int[] arry,int num){

int high=arry.length-1;
int low=0;
while(low&amp;amp;amp;amp;amp;lt;=high){
//这种方式取中间值是为了防止溢出
int mid=low+(high-low)/2;
if(num&amp;amp;amp;amp;amp;lt;arry[mid]){
    high=mid-1;
}
else ...]]></description><category></category></item><item><title><![CDATA[MySql事务支持和四种隔离机制]]></title><link>https://blog.youkuaiyun.com/ocean_java666/article/details/81158041</link><guid>https://blog.youkuaiyun.com/ocean_java666/article/details/81158041</guid><author>ocean_java666</author><pubDate>Sun, 22 Jul 2018 19:59:26 +0800</pubDate><description><![CDATA[一、事务的基本要素（ACID）

　　1、原子性（Atomicity）：事务开始后所有操作，要么全部做完，要么全部不做，不可能停滞在中间环节。事务执行过程中出错，会回滚到事务开始前的状态，所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体，就像化学中学过的原子，是物质构成的基本单位。

　　 2、一致性（Consistency）：事务开始前和结束后，数据库的完整性约束没有被破坏 。比如A...]]></description><category></category></item></channel></rss>