自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 资源 (1)
  • 收藏
  • 关注

原创 mysql修改字段的长度是否会锁表

缩小字段长度不能使用inpalce,会锁表。 放大字段长度:取决于变化前和变化后是否跨越255这个长度。以UTF8编码为例,一个字符占3个字节。 字段变化1:varchar(50)--》varchar(80),不锁表。 字段变化2:varchar(100)->varcahr(130),不锁表。 字段变化3:varchar(50)--》vachar(130),会锁表;50*3=150个字节,130*3=390字节,这个变化跨越了255长度,会锁表。

2022-12-21 15:08:52 5239

原创 ES搜索常用查询

es搜索查询入门命令

2022-11-29 20:54:05 713 1

原创 poi jar包报错:java.lang.NoSuchFieldError:Factory

解决jar包报错:java.lang.NoSuchFieldError: Factory

2022-06-22 12:25:40 25199 6

原创 java UT单元测试总结

报错解决方法:错误1:When using matchers, all arguments have to be provided by matchers.原因:从异常的信息来看,显然违反了一个Mockito框架中的Matchers匹配参数的规则。根据Matchers文档如下,在打桩阶段有一个原则,一个mock对象的方法,如果其若干个参数中,有一个是通过Matchers提供的,则该方法的所有参数都必须通过Matchers提供。而不能是有的参数通过Matchers提供,有的参数直接给出真实的具体值。解决

2022-04-14 10:21:52 1999

原创 java oj 文件系统有N个目录,删除指定的目录,并输出删除后的目录

某文件系统中有N个目录,每个目录都一个独一无二的ID。每个目录只有一个父目录,但每个父目录下可以有零个或者多个子目录,目录结构呈树状结构。假设,根目录的ID为0,且根目录没有父目录,其他所有目录的ID用唯一的正整数表示,并统一编号。现给定目录ID和其父目录ID的对应父子关系表[子目录ID,父目录ID],以及一个待删除的目录ID,请计算并返回一个ID序列,表示因为删除指定目录后剩下的所有目录,返回的ID序列以递增序输出。注意:1、被删除的目录或文件编号一定在输入的ID序列中;2、当一个目录删除时,它

2022-04-02 15:49:37 1332

原创 IntelliJ Idea设置技巧

问题一:修改代码需要引入一个新jar包的类,idea会将同一个jar包的类合并。例如:合并成这种形式import java.util.;合并jar包为什么需要修改,编码规范不允许import jar包包含设置方法:

2022-03-16 17:12:05 392

原创 设计模式的六大原则

单一职责原则(Single Responsibility Principle)定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责

2022-03-04 15:47:22 122

原创 微服务报错:no space left on device问题定位与解决

问题现象:docker上运行的微服务显示no space left on device解决历程:(1)首先用命令df -h查询docker中各个目录占据的空间,显示根目录10G空间已满。进入根目录用du -sh *命令查询,占用的空间比较少,不可能到达10G...

2022-02-28 14:17:28 2264

原创 java 异常报错解决总结

报错:java.lang.IllegalStateException: closed场景:使用okhttp3的时候遇到的异常原因:代码中调用response.body().string()的次数大于1次详细原因可以看这个博客介绍https://blog.csdn.net/wen_haha/article/details/81018046...

2022-01-13 09:38:24 521

原创 curl命令使用总结

curl命令常见参数-H 传递带的header-d 添加POST传递的数据-k 发送https请求加上这个参数,否则会有证书报错-i-X 指定请求方法,是POST/PUT/DELETE/GET使用示例:示例1:发送json格式的body请求头的post接口curl -ki -H ‘Content-Type: application/json’ -H ‘X-APPKEY:123’ -H ‘Authorization:123’ -X POST ‘https://1.1.1.1:443/a

2021-12-25 17:46:09 1945

原创 数组结构体部分赋值问题

之所以写这个博客,是因为前两天参加了深信服的笔试,整体难度不大,提前半个小时写好了,然后还检查了一遍选择题。在选择题上面,它是选项不确定的。有几道选择题不确定,顿时发现自己的基础还是不扎实呀。下面总结下碰到的问题吧。数组部分赋值 如果数组定义并初始化,系统对于未赋值的部分全部自动赋值位0.而对于先定义后初始化的数组,未赋值部分则是随机数。void main(){ int arr1[3]=

2016-10-16 11:28:56 2231

转载 DHCP协议

本文转自:http://network.51cto.com/art/201406/441752.htmDHCP协议: Dynamic Host Configuration Protocol﹐动态主机配置协议。DHCP是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段DHCP Client:D

2016-09-28 21:34:20 444

转载 B树、B+树、B*树

本文转自: http://www.cnblogs.com/oldhorse/archive/2009/11/16/1604009.htmlB树即B-树: 是一种多路搜索树(并不是二叉的):1.定义任意非叶子结点最多只有M个儿子;且M>2; 2.根结点的儿子数为[2, M]; 3.除根结点以外的非叶子结点的儿子数为[M/2, M]; 4.每个结点存放至少M/2-1(取上整)和至多M-1个关

2016-09-27 22:35:42 272

原创 MySQL引擎

Innodb引擎Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别,关于数据库事务与其隔离级别的内容请见数据库事务与其隔离级别这篇文章。该引擎还提供了行级锁和外键约束,它的设计目标是处理大容量数据库系统,它本身其实就是基于MySQL后台的完整数据库系统,MySQL运行时Innodb会在内存中建立缓冲池,用于缓冲数据和索引。但是该引擎不支持FULLTEXT类型的索引,

2016-09-27 20:32:26 268

转载 DNS使用TCP还是UDP协议

本文转自:http://benbenxiongyuan.iteye.com/blog/1088085DNS同时占用UDP和TCP端口53是公认的,这种单个应用协议同时使用两种传输协议的情况在TCP/IP栈也算是个另类。但很少有人知道DNS分别在什么情况下使用这两种协议。 先简单介绍下TCP与UDP。 TCP是一种面向连接的协议,提供可靠的数据传输,一般服务质量要求比较高的情况,使用这个协

2016-09-27 19:51:00 1065

原创 笔试面试网络知识总结

公网IP地址,私有IP地址在现在的网络中,IP地址分为公网IP地址和私有IP地址。公网IP是在Internet使用的IP地址,而私有IP地址则是在局域网中使用的IP地址。 私有IP地址是一段保留的IP地址。只使用在局域网中,无法在Internet上使用。A类地址 ⑴ A类地址第1字节为网络地址,其它3个字节为主机地址。另外第1个字节的最高位固定为0。 ⑵ A类地址范围:1.0.0.0到126.

2016-09-16 22:15:58 606

原创 南京某外企开发面经

一面:是有个两个面试官,在一面结束后,比较年轻的面试官送我到楼下等待二面,闲聊了下,他才工作两年是南大,感觉这个面试官人好好呀,还说我的他们两个面试官都挺满意的。虽然不知道是不是真实情况,但是也确实缓解我的一些紧张吧。面试过程中主要围绕简历上的内容进行的。先对自己的课题和实习的事情进行了简单的描述和闲聊。后面问了操作系统,数据库,网络,C++,设计模式各个方面的问题。操作系统(进程和线程区别,进程

2016-09-16 19:02:29 617

转载 限定一个类对象在堆或者栈上创建

创建对象通常有两种方法,如下: 第一种方式是静态创建,第二种方式是动态建立。A a;A *p=new A;1、静态建立类对象:是由编译器为对象在栈空间中分配内存,是通过直接移动栈顶指针,挪出适当的空间,然后在这片内存空间上调用构造函数形成一个栈对象。使用这种方法,直接调用类的构造函数。2、动态建立类对象,是使用new运算符将对象建立在堆空间中。这个过程分为两步,第一步是执行operator ne

2016-09-11 10:41:58 293

原创 Template Method模板方法设计模式(类行为型)

概述在面向对象开发过程中,通常我们会遇到这样的一个问题:我们知道一个算法所需的关键步骤,并确定了这些步骤的执行顺序。但是某些步骤的具体实现是未知的,或者说某些步骤的实现与具体的环境相关。 例子1:银行业务办理流程 在银行办理业务时,一般都包含几个基本固定步骤: 取号排队->办理具体业务->对银行工作人员进行评分。 取号取号排队和对银行工作人员进行评分业务逻辑是一样的。但是办理具体业务是个不相

2016-08-30 16:00:02 348

原创 Strategy策略设计模式(对象行为型)

意图: 定义一系列的算法,把它们封装起来,并且使他们可相互替换。本模式使得算法可独立于使用它的客户而变化适用性 1)• 许多相关的类仅仅是行为有异。 “策略”提供了一种用多个行为中的一个行为来配置一个类的方法。即一个系统需要动态地在几种算法中选择一种。 2)• 需要使用一个算法的不同变体。例如,你可能会定义一些反映不同的空间 /时间权衡的算法。当这些变体实现为一个算法的类层次时 ,可以使用策略

2016-08-30 15:01:56 294

原创 State状态设计模式(对象行为型)

意图: 允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了他的类。适用性 1) • 一个对象的行为取决于它的状态, 并且它必须在运行时刻根据状态改变它的行为。 2) • 代码中包含大量与对象状态有关的条件语句:一个操作中含有庞大的多分支的条件(if else(或switch case)语句,且这些分支依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。通常 , 有多个操作包

2016-08-30 14:15:25 409

原创 Observer观察者设计模式(对象行为型)

意图: 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新适用性 在以下任一情况下可以使用观察者模式: • 当一个抽象模型有两个方面, 其中一个方面依赖于另一方面。将这二者封装在独立的对象中以使它们可以各自独立地改变和复用。 • 当对一个对象的改变需要同时改变其它对象 , 而不知道具体有多少对象有待改变。 • 当一个对象必须通知其它对象,

2016-08-30 11:45:02 423

原创 Linux命令shell脚本编程学习笔记-18章初识sed和gawk

第18章 初识sed和gawk18.1 文本处理sed编辑器 sed编辑器可以基于输入到命令行的或是存储在命令文本文件中的命令来处理数据流中的数据。 它每次读取一行,用提供的编辑器命令匹配数据、按命令中指定的方式修改流中的数据,然后将生成的数据输出到STDOUT。在流编辑器将所有命令与一行数据进行匹配后,它会读取下一行数据并重复这个过程。在流编辑器处理完流中的所有数据行后,它就会终止。 sed

2016-08-29 19:51:27 600

转载 Linux多线程,线程的分离与结合

本文转自:http://www.cnblogs.com/mydomain/archive/2011/08/14/2138454.htm其实在写上一篇日志的时候,由于我把创建线程的返回值的判断条件写错了,程序每次运行的时候都是显示创建线程失败,我就百度了一下,有人说是桟资源不足引起的,要调用一个pthread_attr_setdetachstate()函数,当时不明白为什么,其原理是什么,于是又搜了一

2016-08-29 18:51:01 372

原创 Linux命令与shell脚本编程学习笔记-16创建函数

16章 创建函数16.1 基本的脚本函数创建函数#用function关键字function name{ commands}#函数名字后跟圆括号name(){ commands}function func1{ echo “it is a example”}count=1while [$count -le 5]do func1 ++count;d

2016-08-28 17:16:42 383

原创 mediator中介者设计模式(行为模式)

意图: 用一个中介者对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。适用性: • 1)系统中对象之间存在复杂的引用关系,产生的相互依赖关系结构混乱且难以理解。 • 2)一组对象以定义良好但是复杂的方式进行通信。产生的相互依赖关系结构混乱且难以理解。 • 3)一个对象引用其他很多对象并且直接与这些对象通信 ,导致难以复用该对象

2016-08-28 13:33:54 443

转载 设计模式通俗理解

第10个设计模式,享元设计模式运用共享技术有效地支持大量细粒度的对象

2016-08-22 22:05:15 2074 1

原创 Iterator迭代器设计模式学习(对象行为型)

迭代器设计模式意图: 提供一种方法顺序访问一个聚合对象中各个元素,又不需要暴露这个对象的内部表示适用性访问一个聚合对象的内容而无需暴露它的内部表示。需要为聚合对象提供多种遍历方式。为遍历不同的聚合结构提供一个统一的接口 (即, 支持多态迭代)结构参与者Iterator: 迭代器定义访问和遍历元素的接口。ConcreteIterator: 具体迭代器实现迭

2016-08-22 21:25:15 341 1

原创 Linux命令与shell编程学习-15章控制脚本

第15章控制脚本15.1 处理信号默认情况下,bash shell会忽略收到的任何SIGQUIT(3)和SIGTERM(5)信号。 如果bash shell收到了SIGHUP信号,它会退出。但是在退出之前,它会将SIGHUP信号传给shell启动的所有进程(比如shell脚本)。通过SIGINT可以中断shell。Linux内核会停止将CPU的处理时间分配给shell。此时,shel

2016-08-22 11:39:53 320 1

原创 Linux命令和shell编程学习--14章呈现数据

14章呈现数据#临时重定向./test.sh 2>err.txt#默认情况下,Linux会将STDERR定向到STDOUT#永久重定向exec 1>out.txtexec 0<test.file#从文件获得输入exec命令告诉shell 在脚本执行期间重定向某个特定文件描述符创建自己的重定向 在脚本中重定向,不局限于3个默认的文件描述符,shell中最多可以有9个打开的文件描述符。exec

2016-08-22 10:08:51 218 1

原创 Linux命令行与shell编程笔记-13处理用户输入

13章 处理用户输入位置参数$0 程序名,可以对$0使用basename函数(basename $0),它只返回程序名$1 第1个参数${10} 第10个参数每个参数以空格隔开特殊参数变量$# 参数数量${!#} 最后一个参数。花括号({})中不允许使用美元符号,这里使用感叹号(!)$* 将命令行上提供的所有参数当做1个单词保存echo $*$@ 所有参数的集合f

2016-08-21 22:08:56 523 1

原创 Facade外观设计模式(结构型)

第九个设计模式 facadefacade模式定义了一个高层接口,这个接口使得子系统更加容易被使用。想想我们小时候玩的四驱车,里面的构造很复杂,马达,舵机,电池组等等,而我们控制它却非常简单,只要打开电池开关,他就可以跑。我们其实不用知道它里面是如何工作,只要知道拨动开关它就可以工作就行了,这个开关其实就四驱车给我们的一个友好的组件,使得我们可以很方便的控制它。将一个系统划分成为若干个子系统有利于降低

2016-08-20 17:08:35 356 1

原创 Decorator装饰设计模式(结构型)

第八个设计模式意图 动态地给一个对象添加一些额外的职责。有时候我们需要给某个对象而不是整个类添加一些功能。适用性在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。处理那些可以撤消的职责。当不能采用生成子类的方法进行扩充时。一种情况是,可能有大量独立的扩展,为支持每一种组合将产生大量的子类,使得子类数目呈爆炸性增长。另一种情况可能是因为类定义被隐藏,或类定义不能用于生成子类。

2016-08-20 16:16:42 444 1

原创 composite组合设计模式(结构型)学习

第七个设计模式 组合模式意图:将对象组合成树形结构以表示“部分-整体”层次结构,Composite使得用户对单个对象和组合对象的使用具有一致性。 适用性 - 你想表示对象的部分-整体层次结构 - 你希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象。结构 典型的组合对象结构如下: 参与者 component:是组合中的对象声明接口,在适当的

2016-08-20 13:59:46 463 1

原创 Linux命令行与shell编程笔记 结构化命令

11章 使用结构化命令if commandthen commandfi这个结构就是if 部分命令成功运行 ,就执行then,否则跳过then。就是C语言中的if没有else的部分。if commandthen commandelse commandfi如果if后面的命令退出状态码=0,那么就执行then,否则,执行elseif command1 then

2016-08-20 12:18:57 403 1

原创 Linux命令行与shell编程笔记 第10章

第10章 构建基本脚本10.1 使用多个命令 如果有两个命令要一起运行,命令之间用分号隔开10.2 创建shell脚本文件shell脚本的行中,#号用作注释行shell脚本中第一行特例,井号后跟着叹号,告诉shell用哪个shell来运行脚本#/bin/bash建立完脚本文件后,文件还需要有执行权限才行 chmod u+x file.shecho -n 与下一行信息显示在同一行 10.4

2016-08-20 10:15:47 210

原创 Linux命令行与shell编程笔记 5章-7章

5.5设置PATH环境变量 在Linux下面安装软件,有时候需要将安装路径加入到PATH中。 PATH=$PATH:path_name 中间由冒号隔开 5.6定位系统环境变量 /etc/profile是系统总的默认bash shell的主启动文件。每个用户登录都会执行这个启动文件。5.7数组$ arr=(one two three)$ echo ${arr[1]}$ tw

2016-08-20 09:08:33 226

原创 effective C++ 学习笔记 实现&&继承与面向对象设计

五.实现大多数情况下,适当提出拟的类定义以及函数声明,是花费最多心力的两件事。尽管如此,还是有很多东西需要小心:太快定义变量可能造成效率上的拖延;过度使用转型(casts)可能导致代码变慢又难维护,又招来微妙难解的错误;返回对象“内部数据之号码牌(handls)”可能会破坏封装并留给客户虚吊号码牌;为考虑异常带来的冲击则可能导致资源泄漏和数据败坏;过度热心地inlining可能引起代码膨胀;过

2016-08-19 09:39:49 304

原创 图解HTTP---学习笔记1

第一章 了解web及网络基础第二章 简单的HTTP协议HTTP协议规定:从客户端开始建立通信,服务器端在没有接收到请求之前不会发送响应 请求报文由请求方法,请求URI,协议版本,可选的请求首部字段和内容实体构成 响应报文由协议版本,状态码,用以解释状态码的原因短语,可选的响应首部字段以及实体主体构成HTTP是不保存状态的协议,自身不对请求和响应之间的通信状态进行保存。

2016-08-15 15:36:33 445

原创 C++四种类型转换介绍

本文的内容结合作者 http://blog.csdn.net/fanyun_01/article/details/51546127和作者 http://www.2cto.com/kf/201408/324929.html 两篇文章而来的C++中的旧式类型转换分为两种:1. 隐式类型转换(而对于隐式变换,就是标准的转换,在很多时候,不经意间就发生了,比如int类型和float类型相

2016-08-14 21:47:12 318

代码阅卷器java版

这个是集计算器,阅卷和查分与一体。有界面设计,将要阅卷的试卷存在D盘上的CTest上,每个学生的程序以学号命名

2013-02-10

空空如也

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

TA关注的人

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