自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 转-C语言中使用指针与数组的区别

转载:https://www.cnblogs.com/lonny0406/p/6835345.html

2017-11-12 17:47:03 121

原创 sublime基础配置(html环境)

1、安装一个emmet。 ctrl+shift+p进入命令模式。install package。输入emmet。重启。 2、新建文件,另存为.html文件。输入i,然后tab,则自动补全html5的头部文件。 3、设置默认浏览器 preference–>key bindings。 { “keys”: [“f12”], “command”: “side_bar_files_open_wit

2017-11-04 21:58:17 410

原创 解决戴尔电脑win10无法正常关机现象

降低驱动: http://www.dell.com/support/home/cn/zh/cndhs1/Drivers/DriversDetails?driverId=J2X85

2017-02-20 19:09:45 7950

原创 ubuntu14.04下安装nodejs

1、进入官网下载合适的版本,直接下编译好的版本。http://nodejs.cn/ 2、解压到usr/local/node目录下 3、修改目录权限:chmod 755 /usr/local/node/* -R 4、进入node/bin目录,然后./node -v 可以看到对应的版本 5、接着配置环境变量,nano ~/.bashrc 6、在文末加入,然后ctrl+X保存退出。 exp

2016-12-16 14:13:00 273

转载 多线程同步的五种方法

本文参考于http://www.kuqin.com/shuoit/20150910/347986.html?url_type=39&object_type=webpage&pos=1 1、同步方法;2、同步代码块;3、使用特殊域变量(volatile)实现线程同步;volatile关键字为域变量的访问提供了一种免锁机制使用volatile修饰域相当于告诉虚拟机该域可能会被其他线程更新每次使用

2016-09-07 10:31:36 3975

原创 drop,delete和truncate的区别

Truncate速度比较快。 Truncate删除所有行,如果遇到任何一行违反违约(外键约束),照删不误,但delete则会返回错误。 如果想保留标识计数值,要用delete,而truncate重新设置高水平。 Truncate是DDL语言,将被隐式提交,因此不能回滚。

2016-09-03 01:05:43 303

原创 接口与抽象类

接口: (1)接口可继承多个接口; (2)成员变量默认public static final,必须显示初始化; (3)方法默认public abstract,隐式声明; (4)无构造,且不能实例化; (5)不能实现另一个接口,但可继承多个接口; (6)若某个类实现一个接口,必须实现接口里面的所有抽象方法; 抽象类: (1)只能被继承,不能实例化; (2)可以有一般的变量和方法;

2016-09-03 00:59:53 271

原创 java集合的底层实现

ArrayList (1)底层采用数组实现,若使用不带参数的构造方法,则生成长度为10的Object类型数组。 (2)若个数超过10,则生成一个新数组,长度为原数组的1.5倍+1,原数组的内容复制到新数组中。 (3)删除时,后续前移,代价高。 HashMap (1)HashMap是基于哈希表的Map接口的非同步实现(Hashtable跟HashMap很像,唯一的区别是Hashtalbe中的

2016-08-16 22:48:11 6466

原创 垃圾收集算法

1、标记-清除 标记所有需要回收的对象,在标记完成后统一回收掉所有被标记的对象。 缺点:效率问题;空间问题:产生了大量不连续的内存碎片,进而导致需要分配较大对象时无法找到足够的连续内存而提前触发另一次垃圾收集动作。 2、改进:复制 内存一分为二,用空一块,把活着对象复制到另一块,清空原来那块。 优点:不存在碎片;实现简单,运行高效。 缺点:将内存缩小为原来的一般,代价太高;受限于存活率,

2016-08-14 12:15:37 154

原创 java引用的类型

(1)强引用 new出来的,只要强引用还存在,收集器不会回收掉被引用的对象。 (2)软引用(还有用,非必须对象) 在系统内存溢出异常之前,将这些对象引进回收范围之中并进行第二次回收,若回收后内存仍不足,则抛溢出异常。Softreference类实现软引用。 (3)弱引用(非必须) 被弱引用关联的对象只能生存到下一次垃圾收集发生之前,不管内存是否充足。 (4)虚引用(可以无视) 无法通过

2016-08-14 11:54:08 167

原创 判断对象是否已死的算法

(1)引用计数算法,给每个对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,就减1;任何时刻都为0的对象就不可能再被引用。 缺点:很难解决对象之间的相互循环引用问题 (2)根搜索算法 “GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径成为引用链,当从GC Roots到这个对象不可达时,则此对象是不可用的。 “GC Roots”对象包括:

2016-08-14 11:34:40 259

原创 Java虚拟机模型区溢出的处理方式

1、堆溢出 采用内存映像工具(如Eclipse Momery Analyzer)对dump出来的堆存储快照进行分析,重点hi确认内存中的对象是否是必须的,先分清楚是泄露还是溢出。 若是泄露,进一步通过工具查看泄漏对象到GC Roots的引用链,观察泄漏对象是通过怎样的路径与GC roots相关联并导致垃圾收集器无法自动回收他们,掌握了泄漏对象的类型信息,以及GC

2016-08-14 09:43:45 219

原创 java虚拟机模型

本文内容部分摘自:http://blog.csdn.net/taohuaxinmu123/article/details/24472073 java虚拟机在执行java程序的过程中会把它锁管理的内存划分为若干个不同的数据区域: (1)程序计数器:它的作用是当前线程所执行的字节码的行号指示器,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令。 多线程是通过线程轮流切换

2016-08-13 18:22:09 242

原创 MySQL——死锁

MYISAM表锁是deadlock free的,这是因为MyISAM总是一次获得所需的全部所,要么全部满足,要么等待,因此不会出现死锁。但是InnoDB中,除单个SQL组成的事务外,锁是逐步获得的,这就决定了发生了死锁的可能。解决死锁主要有以下集中方式: 1、在应用中,如果不同的程序会并发存取多个表,应尽量约定以相同的顺序来访问表。 2、在程序以批量方式处理数据的时候,如果事先对数据排序,保证每

2016-05-16 15:26:01 273

原创 MySQL——InnoDB行锁

1、InnoDB行锁是通过给索引上的索引项加锁实现的,如果没有索引,InnoDB将通过隐藏的聚簇索引来对记录加锁。 简单地说:如果不通过索引条件检索数据,那么InnoDB将对表中的所有记录加锁,实际效果跟表锁一样。 具体如下:在不通过索引条件查询时,InnoDB会锁定表中的所有记录。如果是使用相同的索引键,会出现锁冲突。

2016-05-16 14:16:21 2480

原创 Mysql——锁问题

1、概述 不同的存储引擎支持不同的锁机制,MyISAM和MEMORY存储引擎采用的是表级锁;BDB存储引擎采用的是页面锁,也支持表级锁;InnoDB则即支持行级锁,也支持表级锁,默认是行级锁。表级锁:开销小,加锁快;不会出现死锁;锁定粒度小,发生锁冲突的概率最高,并发度最低。行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。页面锁:开销和加锁时间界于表锁和

2016-05-14 21:59:07 220

原创 MYSQL的常用SQL的优化

1、大批量插入数据针对MyISAM表 alter table tb1_name DISABLE KEYS; loading the data alter table tb2_name ENABLE KEYS; 上述两个句子主要用来打开或者关闭MyISAM表非唯一索引的更新,在导入大量的数据岛一个非空的MyISAM表时,通过这样的设置可以提高导入的效率,对于空的没有影响,因为默认就是先导入

2016-05-12 22:07:07 445

原创 SQL优化--索引

MYSQL目前支持4种索引:B-Tree索引:最常见的索引类型,大部分引擎都支持B树索引。Hash索引:只有Memory引擎支持,使用场景简单。R-Tree索引(空间索引) :空间索引是MyISAM的一个特殊索引类型,主要用于地理空间数据类型,通常使用较少。Full-Text(全文索引):也是MyISAM的一个特殊索引类型,主要用于全文索引,InnoDB从MySQL5.6版本开始提供对全文索

2016-05-10 14:06:44 188

原创 SQL优化--发现问题

1、Mysql客户端连接成功后,通过show status命令可获取服务器状态信息。通过判断com_insert和com_select以及更新和删除来判断当前数据库的应用是以插入更新为主还是以查询操作为主,以及更重类型的SQL大致的执行比例是多少。注意,对于更新操作的计算,是对执行次数的技术,不论提交还是回滚都会进行累加。 2、接着通过两种方式定位执行效率较低的SQL语句:通过慢查询日志定位那些

2016-05-09 21:59:00 179

原创 Mysql学习笔记1

一次性插入多条记录: insert into tablename(field1,field2,…,fieldn) values(record1_value1,record1_value2,…,record1_valuen),(…)having和where的区别在于,having是对聚合后的结果进行条件的过滤,而where是在聚合前就对记录进行过滤,如果逻辑允许,我们尽可能用where先过滤记录

2016-05-06 15:26:32 163

转载 MySQL引擎

转载: MySQL引擎 MySQL数 据库引擎取决于MySQL在安装的时候是如何被编译的。要添加一个新的引擎,就必须重新编译MYSQL。在缺省情况下,MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。如果技术高超,还可以使用MySQL++ API自己做一个引擎。下面介绍几种数据库引擎:ISAM:ISAM是一个定义明确且历经

2016-04-25 18:04:50 536

原创 java中的clone

1、作用:取代C/C++中的指针。因为,java在处理基本数据类型时,采用按值传递的方式执行,而其他类型是按引用传递的。但在某些情境下,需要保证复制出来的对象进行修改后,原有的对象不发生变化。在Prototype中,就需要用clone出一个对象。 2、实现步骤:继承Cloneable接口,仅仅是标识接口,并没有任何接口方法。重写Object类中的clone()接口。在clone方法中调用su

2016-04-20 18:48:25 210

转载 二叉树的非递归遍历算法

http://www.cnblogs.com/dolphin0520/archive/2011/08/25/2153720.html 作者:海子      出处:http://www.cnblogs.com/dolphin0520/      本博客中未标明转载的文章归作者海子和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权

2016-04-13 11:01:36 369

转载 TCP建立连接和断开连接过程

假设Client端发起中断连接请求,也就是发送FIN报文。Server端接到FIN报文后,意思是说”我Client端没有数据要发给你了”,但是如果你还有数据没有发送完成,则不必急着关闭Socket,可以继续发送数据。所以你先发送ACK,”告诉Client端,你的请求我收到了,但是我还没准备好,请继续你等我的消息”。这个时候Client端就进入FIN_WAIT状态,继续等待Server端的FIN报文。

2016-04-02 17:04:01 2324

原创 sublime text 3的初步配置

1、配置Package Control view–show console,输入: import urllib.request,os; pf = ‘Package Control.sublime-package’; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.buil

2016-03-14 16:29:03 202

原创 win10问题集——打不开左下角

问题表现: 1、左下角的菜单点不出; 2、搜索栏出不来; 3、没有输入法; 4、没有注册类 解决方法: win+r打开运行——输入services.msc——找到user manager ,设置为自动启动。 原因:360这个缺货把它关闭了。

2016-01-08 19:32:03 2082

原创 pg9.4利用pgAgent创建定时任务

参考:http://my.oschina.net/lamciuloeng/blog/127284 不同的是,stackbuilder在bin目录下。

2015-11-23 20:45:00 1776

原创 postgresql之dblink

1、首先在可视化工具新建查询工具安装dblink,create extension dblink;

2015-10-29 21:01:32 218

原创 uniDAC的安装和使用

1、解压后把UniDAC文件夹 2、在UniDAC\Source\Delphi7文件夹中找到Make.bat文件,鼠标右键“编辑”确认DELPHI7的安装路径是否正确(建议:设置成绝对路径了,防止因为环境变量等原因,找不到路径) 3、双击运行Make.bat文件 4、32位操作系统:复制UniDAC\Bin\Delphi7\Win32文件夹里面的所有*.bpl文件到操作系统盘符C:\Windo

2015-10-22 15:22:17 4772

原创 postgre笔记

1、postgre不同于其他数据库,它区分表名和字段名的大小写。如果是大写的话,需要用双引号括起来。

2015-10-20 11:44:02 382

原创 二叉搜索树

1、判断是否是二叉搜索树的后序遍历 算法思想: step1:最后一个为根节点; step2:从根节点的左边开始往前遍历,找到第一个比它大的节点作为右子树,记为right step3:从右子树的左边开始往前遍历,找到第一个比它小的节点作为左子树,记为left step4:判断( left, right )中的值是否都比根节点大,如果有比根节点小的则返回false step5: 判断( 0,

2015-10-07 20:11:25 194

原创 回文数

利用栈的思想判断回文数:public static void main(String[] args) { // TODO Auto-generated method stub int a[]={'a','b','c','c','b','a'}; int b[]=new int[3]; int top=0; int mid

2015-10-07 17:26:59 188

原创 快速排序实现代码

public class Main { static int a[]={6,1,2,7,9,3,4,5,10,8}; static void quickSort(int left,int right){ if(left>right) return; int base=a[left]; int i=left; int j=r

2015-10-07 16:42:40 241

原创 第8章 应用协议

1、协议概要 利用网络的应用程序有很多,包括Web浏览器、电子邮件、远程登录、文件传输、网络管理等。能够让这些应用进行特定通信处理的正是应用协议。 相当于OSI参考模型中第5、6、7层的所有功能,不仅包含了管理通信连接的会话层功能、转换数据格式的表示层功能,还包括与对端主机交互的应用层功能在内的所有功能。 2、远程登录 主要使用TELNET和SSH两种协议。TELNET 利用TCP

2015-10-07 16:41:41 243

原创 ubuntu下启动tomcat

进入到tomcat的bin目录,然后输入./startup.sh启动即可。

2015-10-03 19:37:02 466

原创 第4章 IP协议

1 、IP大致分为三大作用模块,他们是IP寻址、路由以及IP分包与组包。寻址:IP地址用于在“连接到网络中的所有主机中识别出进行通信的目标地址”。在TCP/IP通信中所有主机或路由器必须设定自己的IP地址。路由控制:将分组数据发送到最终目标地址。IP路由也叫多跳路由。指的是路怄气或主机在转发IP数据包时只指定下一个路由器或主机,而不是将到最终目标地址为止的所有通路全都指定出来。因为每一个区

2015-10-01 21:34:03 609

原创 第3章 数据链路

1、作用 数据链路层额协议定义了通过通信媒介互连的设备之间传输的规范。通信媒介包括双绞线电缆、同轴电缆、光纤以及红外线等介质。设备之间有时也会通过交换机、网桥、中继器等中转数据。 2、网络拓扑 含义:网络的连接和构成的形态称为网络拓扑。网络拓扑包括总线型、环型、星型、网状型等。 3、MAC地址 作用:用于识别数据链路中互连的节点。 组成:48比特,用16进制表示。第1位:单播地址(0)/

2015-09-30 12:05:09 1214

原创 剑指offer习题2

逆序链表 public ListNode ReverseList(ListNode listNode){ if(listNode==null) return null; else { ArrayList<Integer> arrayList=new ArrayList<Integer>();

2015-09-28 16:49:13 169

原创 第2章 TCP/IP基础知识

1、TCP/IP不仅仅指TCP协议和IP协议。它是一个协议群,包括:应用协议:HTTP,SMTP,FTP,TELNET,SNMP传输协议:TCP,UDP网际协议:IP,ICMP,ARP路由控制协议:RIP,OSPF,BGP2、互联网是由ARPANET(阿帕网)发展而来的。互联网的协议就是TCP/IP。互联网中的每个网络都是由骨干网和末端网组成的。每个网络之间通过NOC(网络操作中心)相连。

2015-09-26 17:18:50 308

原创 第1章 网络基础知识

1、网络发展的7个阶段: 批处理(卡带、磁带)—-分时系统(多个终端使用同个主机、独占性、星型结构)—-计算机间通信—-计算机网络(分组交换技术)—-互联网普及—-以互联网为中心—-TCP/IP的网络时代 2、协议网络体系结构协议主要用途TCP/IPIP,ICMP,TCP,UDP,HTTP,TELNET,SNMP,SMTP互联网、局域网IPX/SPX(NetWare)IPX,SPX

2015-09-25 14:38:53 370

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