自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小八成长记

新的一天,新的收获

  • 博客(20)
  • 收藏
  • 关注

原创 最清晰的理解JAVA参数传递问题

今天做项目,发现了一个问题,当String作为参数传递的时候,在函数内部改变值对外部的变量值无影响,如下代码:public static voidmain(String[] args) {String str= “11111”;changeStr(str);System.out.println(str);//输出11111}public static voidchangeStr(String str){str= “22222”;}一开始不解后来想想就明白了,遂去对java参数传递做一个总结,

2021-03-23 14:09:25 236

转载 HashMap的数据结构

HashMap的数据结构数组的特点是:寻址容易,插入和删除困难;而链表的特点是:寻址困难,插入和删除容易。那么我们能不能综合两者的特性,做出一种寻址容易,插入删除也容易的数据结构?答案是肯定的,这就是我们要提起的哈希表,哈希表有多种不同的实现方法,我接下来解释的是最常用的一种方法—— 拉链法,我们可以理解为“链表的数组”,如图:从上图我们可以发现哈希表是由数组+链表组成的,一个长度为16的数组中,每个元素存储的是一个链表的头结点。那么这些元素是按照什么样的规则存储到数组中呢。一般情况是通过hash(k

2021-03-23 08:57:32 535

转载 iBatis标签

1、动态SQL片段通过SQL片段达到代码复用复制代码select count(*)select *from icpname like ‘%namenamename%’path like ‘%path$%’area_id = #area_id#hided = #hided#limit #_start#, #_size#复制代码2、数字范围查询所传参数名称是捏造所得,非数据库字段,比如_img_size_ge、_img_si

2021-01-12 16:15:10 387

原创 谈一谈IP地址,子网掩码,路由,网关到底是什么鬼

ip地址IP地址有一个32位的连接地址,由4个8位字段组成,8位字段称为8位位组,每个8位位组之间用点号隔开,用于标识TCP/IP宿主机。每个IP地址都包含两部分:网络ID和主机ID,网络ID标识在同一个物理网络上的所有宿主机,主机ID标识网络上的每一个宿主机,运行TCP/IP的每个计算机都需要唯一的IP地址。Intenet委员会定义了五种地址类型以适应不同尺寸的网络。地址类型定义了网络ID使用哪些位,它也定义了网络的可能数目和每个网络可能的宿主机数目。上面的ip准确的说是ipV4。ipV6:I

2020-12-17 10:57:51 1515

转载 网关是什么?

网关是 电信中使用的网络节点,它将具有不同传输协议的两个网络连接在一起。网关充当网络的入口和出口点,因为所有数据在路由之前必须经过网关或与网关通信。在大多数基于IP的网络中,唯一不通过至少一个网关的流量是在同一局域网(LAN)段上的节点之间流动的流量。术语默认网关或网络网关也可用于描述相同的概念。在个人或企业方案中使用网关的主要优点是简化了到一台设备的Internet连接。在企业中,网关节点还可以充当代理服务器和防火墙。网关如何工作所有网络都有一个边界,该边界限制了与直接与其相连的设备之间的通信。因此

2020-12-16 19:28:29 1014

转载 Filter与Servlet的区别与联系

Filter实现javax.servlet.Filter接口,在web.xml中配置与标签指定使用哪个Filter实现类过滤哪些URL链接。只在web启动时进行初始化操作。filter 流程是线性的, url传来之后,检查之后,可保持原来的流程继续向下执行,被下一个filter, servlet接收等,而servlet 处理之后,不会继续向下传递。filter功能可用来保持流程继续按照原来的方式进行下去,或者主导流程,而servlet的功能主要用来主导流程。在filter接口要实现三个方法:ini..

2020-12-15 16:28:38 653

转载 TCP协议:三次握手过程详解

本文通过图来梳理TCP-IP协议相关知识。TCP通信过程包括三个步骤:建立TCP连接通道,传输数据,断开TCP连接通道。如图1所示,给出了TCP通信过程的示意图。上图主要包括三部分:建立连接、传输数据、断开连接。建立TCP连接很简单,通过三次握手便可建立连接。建立好连接后,开始传输数据。TCP数据传输牵涉到的概念很多:超时重传、快速重传、流量控制、拥塞控制等等。断开连接的过程也很简单,通过四次握手完成断开连接的过程。三次握手建立连接:第一次握手:客户端发送syn包(seq=x)到服务器,并进入

2020-12-14 16:36:18 1149

转载 TCP和TCP/IP的区别

TCP/IP协议(Transmission Control Protocol/Internet Protocol)叫做传输控制/网际协议,又叫网络通讯协议,这个协议是Internet国际互联网络的基础。TCP/IP是网络中使用的基本的通信协议。虽然从名字上看TCP/IP包括两个协议,传输控制协议(TCP)和网际协议(IP),但TCP/IP实际上是一组协议,它包括上百个各种功能的协议,如:远程登录、文件传输和电子邮件等,而TCP协议和IP协议是保证数据完整传输的两个基本的重要协议。通常说TCP/IP是

2020-12-14 11:28:28 4766

转载 servlet到springmvc的演进

1.简单看看servlet1.1.servlet继承关系先看看下面servlet的这个继承关系,有点印象即可(可以暂时忽略ServletConfig,这个接口就是让我们可以从web.xml文件中拿到标签中的参数,比如,等标签中的参数)然后我们看一下最简单的servlet用法,概念和由来就不说了,说了我们也不懂,就知道能够通过浏览器访问servlet就够了。1.2.servlet最简单的用法新建一个myspringmvc项目,然后弄一下如下配置  可以了,就这么多,然后我们运行eclipse

2020-12-12 11:14:20 165

转载 TCP/IP 、HTTP、Socket的区别与联系

1、Socket和http的区别http: 如何封装数据;基于TCP协议,简单的对象访问协议,对应于应用层;(货物)tcp协议:数据在网络中的传输;对应于传输层;(卡车)IP协议:对应网络层;数据在网络中的传输(高速公路)TCP/IP:解决数据如何在网络中传输,HTTP:如何包装数据Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议。Http连接:http连接就是所谓的短连接,及客户端向服务器发送一次请求

2020-12-08 16:56:22 493

转载 Rest和RPC接口区别

无论是Google、Amazon、netflix,还是阿里,实际上内部都是采用性能更高的RPC方式,而对外开放的才是RESTful。1 REST接口1.1 定义:REST是一种架构设计风格,提供了设计原则和约束条件。而满足这些约束条件和原则的应用程序或设计就是RESTful架构或服务。通过HTTP协议定义的通用动词方法(GET、PUT、DELETE、POST) ,以URI对网络资源进行唯一标识,响应端根据请求端的不同需求,通过无状态通信,对其请求的资源进行表述。1.2 RESTful API设计RE

2020-12-08 16:50:14 1343

原创 static修饰的变量特点

static修饰的成员变量又称为类变量。不加static修饰的成员变量又叫对象变量。成员变量和类变量的区别:1、两个变量的生命周期不同 成员变量随着对象的创建而存在,随着对象的回收而释放。 静态变量随着类的加载而存在,随着类的消失而消失。2、调用方式不同 成员变量只能被对象调用。 静态变量可以被对象调用,还可以被类名调用。3、别名不同 成员变量也称为实例变量。 静态变量也称为类变量。4、数据存储位置不同 成员变量存储在堆内存的对象中,所以也叫对象的特有数据

2020-11-13 10:43:46 1568

原创 IO流

1.流的概念流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。它的特性是进行数据传输;2.流的分类流按照流向数据流向可以分为输入流和输出流。流按照处理数据类型的单位不同可以分为字节流和字符流。3.字节流与字符流之间的区别:1.读写单位不同:字节流式以字节(8位2进制)为单位,字符流是以字符为单位,根据码表映射字符,一次可能读多个字节。2.处理对象不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。3.一次读入或读出是8位二进制。4.字符.

2020-11-11 16:42:12 100

转载 Java的堆,栈,方法区

关于java内存区域部分的堆,栈,方法区三个部分而言,我总结了一下大概为一下这张图。栈(Stack):1.为什么栈要用来存储基本变量信息和对象引用java虚拟机的基本架构就是采用栈来进行设计的。当一个程序需要运行的时候,由于要预先内存空间和运行的生命周期,所以需要进行指针的变动,来进行内存大小的分配。是的,由于这个操作会对程序的执行带来一定的不方便,所以一般栈被用来存放一些基本的变量类型或者引用对象的地址,而对于存储数据量较为庞大的java对象责备存储在了堆里面了。2.为什么说栈的提取速度比堆要快

2020-11-08 21:24:00 321

原创 数据库事务隔离的四个级别

**数据库隔离级别:**是在在数据库操作中,为了有效保证并发读取数据的正确性提出的。隔离级别越高,越能保证数据的完整性和一致性,但是对并发性能的影响也越大。对于多数应用程序,可以优先考虑把数据库系统的隔离级别设为Read Committed。它能够避免脏读取,而且具有较好的并发性能。尽管它会导致不可重复读、幻读和第二类丢失更新这些并发问题,在可能出现这类问题的个别场合,可以由应用程序采用悲观锁或乐观锁来控制。数据库的几种隔离级别:**READ UNCOMMITTED(读未提交数据):**允许事务读取未

2020-11-02 09:51:57 6578

原创 Insert into select为什么不可随意用

Insert into select为什么不可随意用Insert into select请慎用。经常有人将A表的数据迁移到表B中去做一个备份,想通过程序先查询查出来然后批量插入。但考虑到需要耗费大量的网络I/O,所以使用insert into select实现,这样就可以避免使用网络I/O,直接使用SQL依靠数据库I/O完成。但是…例如我们要把order_today表的数据备份到order_record表。在默认的事务隔离级别下:insert into order_record select * f

2020-10-21 10:24:26 716

转载 Spring面试题

目录Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVC**Spring 概述** 目录 Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVC Spring 概述 1. 什么是spring? Spring 是个java企业级应用的开源开发框架。S

2020-10-20 17:48:13 406 1

原创 Collection中的List接口和Set接口

List和Set的区别:List存放有序的,可重复的元素。List中元素的存放顺序是按元素的插入时间一次往后排列来的。Set存放无序的,不可重复的元素(前提是如果添加的元素是早定义的类的话那必须得重写hashCode()和equals()方法)。Set中元素的存放顺序与元素的插入时间无关,是根据元素的hashCode值来排列的。如果hashcode值一样,则判断值是否相等,相等则不存,不相等...

2019-07-16 22:24:30 424

原创 String、StringBuffer、StringBuilder的区别?

我们平日开发通常情况下少量的字符串拼接其实没太必要担心,例如String str = “aa”+“bb”+“cc”;像这种没有变量的字符串,编译阶段就直接合成"aabbcc"了,然后看字符串常量池(下面会说到常量池)里有没有,有也直接引用,没有就在常量池中生成,返回引用。如果像:String a=“A”;String b=“B”;String c=“C”;String aa=a...

2019-06-24 21:51:50 95

原创 使用 final 关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?

使用 final 关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?答:是引用不能变,引用的对象内容是可以变的。public static void test1(String[] args) { // final int a=0; // a =1;//编译报错 // final String aa="A"; // aa="B";//编译报错}public s...

2019-06-23 21:40:35 1532

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除