- 博客(52)
- 收藏
- 关注
原创 复读日记
数据库范式范式第一范式(1NF):所有的域都应该是原子性的 第二范式(2NF):要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性。user表: 学号(primary key) 系号(primary key) 姓名 系名称系号 --> 系名称 // 存在依赖关系第三范式(3NF):非主键之间不存在依赖关系,消除了部分传递依赖 BCNF:主键之间不
2016-09-06 10:42:39
374
原创 String 之字符串与内存管理
字符串在内存中存在于三个位置:方法区的常量池、堆中的 String 类型对象和虚拟机栈中 String 对象引用new String 与 “hello”String a = new String("hello") 是创建对象的过程,String 对象创建过程与其他对象创建的过程大致相同。但是在阶段,会从常量池中寻找 “hello” 常量,若成功找到,则复制一份到堆中,构成 String 类型对象的一
2016-08-02 11:18:29
417
原创 【JavaEE笔记】Filter的配置和工作过程
1. 一句话概括什么是filter过滤器是一个WebApp的“大门”,通过匹配的URL或者Servlet都要经过Filter。2. filter的工作原理与过程Filter的工作过程中维持一个栈:执行doFilter()是进栈,doFilter执行完毕后出栈。3. filter的加载过程4. filter的配置a) 方式一:在web
2016-05-08 12:27:59
537
原创 【JavaEE笔记】AsyncContext对象与AsycnListener对象
AsyncContext是Servlet3.0中的新特性,用来处理异步请求。什么是同步与异步区别呢?它们的区别在于请求的内容是不是立刻返回,同步请求需要等待结果返回后才能继续执行。单线程的执行的时候,需要顺序执行,如果碰到一个计算量很大,很耗时的函数需要执行,该线程就必须在这里等待结果计算出来以后,才能继续执行。异步请求理论上不需要等待请求的结果,将耗时的计算交给另外一个线程,在结果计
2016-05-08 12:25:22
2206
原创 【图解HTTP笔记】第九章 基于HTTP功能的追加协议
一、 SPDY——消除HTTP瓶颈1. 先来复习一下HTTP/1.1的瓶颈a) 一条通信线路只能发送一个请求。(发送多个请求不处理)b) 通信的开始只能是客户端发送请求,服务器只能用来响应。(服务器不能主动推送信息)c) 每次通信都要发送冗长相同的首部字段。d) 首部字段未经压缩就发送,信息量大。e) 报文主体压缩方式不统一。
2016-05-08 12:24:10
1120
原创 【图解HTTP笔记】第八章 确认用户的身份
1. 基于表单的认证不同于BASIC等认证,它并没有在HTTP协议中定义。它是向服务器的Web应用程序发送登录信息(用户名、密码),服务器通过了认证后返回一个认证信息,用户通过“手持”认证信息进入。(拿着账号密码换取“准入令牌”,比如银行的U盾)2. 走进一次登陆认证…a) 客户端:进入HTTPS通信,将用户ID和密码放入报文主体,POST传给服务器。
2016-05-08 12:14:58
442
原创 【图解HTTP笔记】第七章 确保Web安全的HTTPS
一、 HTTP安全漏洞a) 通信使用明文,内容可能被窃取b) 通信不对对方身份进行验证,通信对象可能是伪装的虚假对象。c) 通信不验证信息的完整性,信息可能被篡改。二、 加密处理,防止窃听a) 对通信线路进行加密:通过SSL(SecureSocket Layer安全套接字层)和TLS(T
2016-05-08 12:11:43
401
原创 【图解HTTP笔记】第五章 与HTTP协作的Web服务器
一、单台虚拟主机实现多个域名a) 单个主机搭载多个Web站点,不仅仅可以为多个客户端服务,还可以对多个持有不同域名的客户端进行服务,这就要利用虚拟主机(virtual host)功能。(一对多“服务”,还能提供不同的“服务”)b) 在互联网上,DNS将域名映射成IP地址,每个主机的IP地址是唯一的。c) 在单台虚拟主机中,可以寄存不同的主机名,因此在发送H
2016-05-08 12:09:10
1293
原创 【图解HTTP笔记】第三章 HTTP传输的内容
一、 报文的大致组成1. 报文首部a) 请求行:请求的URI和HTTP协议版本。b) 状态行:返回的状态码和原因短语和HTTP协议版本。c) 首部字段:请求和响应的各种属性和条件的首部,一般分为四种。d) 其他:可能包含HTTP的RFC未定义的,例如Cookie。2. 空行:
2016-05-08 12:04:27
456
原创 【图解HTTP笔记】第二章 简单的HTTP协议
1、在使用HTTP协议通信时,以报文的形式进行发送,在一条通信线路上必须:一端为客户端,一端为服务器端2、HTTP/1.1协议规定:请求必须由客户端发出,最后服务器响应并返回信息。HTTP/1.1瓶颈:1)一条线路仅仅可以发送一个请求。2)请求只能从客户端发出,客户端不可以接收除响应以外的指令。3)请求/响应首部未经压缩就发送。首部越多,延迟越大。(这里指的是首部哦)4
2016-05-08 12:02:58
397
原创 【图解HTTP笔记】第一章 了解Web及网络基础
一、TCP/IP协议族TCP/IP的分层管理分层的意义:便于管理 分层分类:应用层:FTP、DNS、HTTP就位于该层 传输层:提供不同的传输方式:TCP或UDP 网络层:用来处理数据包,设计传输线路 数据链路层:用来处理硬件部分 一个HTTP的历程: Tony想打开一个网页,计算机开始按部就班的工作了...应用层:发送一个HTTP请求报文给传输层 传输
2016-05-08 11:57:14
473
转载 Linux硬链接与软连接
1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。【硬连接】 硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存
2016-05-08 11:51:48
312
原创 快餐车之Linux静态库
Linux的静态库的扩展名为:*.a 静态库(*.a1):随着编译写进到*.out`文件中(是连接后的文件,而非obj文件),删除静态库后,“.out”文件还可以成功执行。 动态库(*.so,*.dll):会随着编译连接到.out文件中,没有了动态库文件,执行文件不能成功执行,利于更新。 创建静态库将源文件生成obj文件 gcc –c source.c –o obj.o
2016-05-08 11:41:57
316
原创 图解红黑树之插入与删除
所有的图中,仅描述了所需要的节点旋转操作复杂的操作由几个简单的操作组合而成,这里的旋转操作是插入删除的基本操作。 旋转操作以后,不会改变红黑树的平衡性,是一种“安全操作”。左旋转 左边的树为2-3搜索树,右边的两棵树为左旋转的动作示意图从图中可以看出来,旋转动作前后,红黑树对应的2-3搜索树并没有发生改变。右旋转右旋转跟左旋转相同,这里不做赘述。插入操作 红黑树规定:任何的新插入的节点均
2016-05-08 02:41:47
1559
原创 图解红黑树之2-3查找树
树结构树结构有下面的几个缺点空间:占空间较多相对于线性结构创建:构造起来比较麻烦维护:对于平衡树,结构修改(增、删)后又需要平衡那么,既然这样为什么还要用树结构呢。原因很简单,它的插入和删除操作所使用的时间非常短。红黑树可以在O(log n)的时间内做查找、插入和删除操作。2-3查找树直接接受“红黑树”还是有些难以下咽的,红黑树跟2-3查找树有着千丝万缕的联系,因此这里从简单轻松的2-3查找
2016-05-08 00:29:55
2620
1
原创 图与图的简单算法
树结构分类树这种存储结构是为了是数据更加有序,这样才有利于更快的遍历。但同时,构造它需要花费一些时间和空间。1. 完全二叉树:在第n层从左到右没有填满节点之前,不能对第n+1层进行填充。这样的结构是为了更好的存储,一个简单的数组就能进行存储,下标作为指针,如果n为树根,2n为左孩子,2n+1为右孩子。2. 大顶堆(小顶堆类似):任何一个根节点的值始终大于子树中的任何一个值。当数
2016-05-07 21:45:38
475
原创 那年的日记本
2015.7.29 *1. (Web)块结构(frame),分层结构,page的概念 *2. linux中的硬链接与软链接 *3. ln,find,locate命令7.30 *1. Reentrancy:可重入的概念 *2. QVariant使用以及原理 *3. union共用体 *4. Unicode,UTF-8 *5. 信号与槽机制 -6. QNetworkAccessMana
2016-05-07 21:45:03
287
原创 学习使用GitHub
git add —— 添加该命令是将一些修改写进本地记录里面,我们把本地记录叫做索引库(HEAD缓冲区)。git add -A //stages All include modified, delete and newgit add . //stages new and modifiedgit add -u //stages delete and modifiedgit commit
2016-05-07 21:43:47
428
原创 jQuery学习笔记
基本选择器选择器是用来从HTML文档中选择一个或者一组标签。“#id”:id选择器,通过 id 属性来进行选择。关键字“#”“.class”:类选择器,通过 class 属性来选择标签。关键字“.”“element”:标签选择器,只写 element 的名字,用来选择一组标签。注意:不用加尖括号。例如:$(“div”).addClass(“green”);“element *”:选择指定
2016-05-07 21:42:11
234
原创 3.判断语句和函数
ifeq(a,b)系列ifeq(a,b)、else、endififeq($(CC),gcc) $(CC) -o foo $(OBJECT) $(GCC_LIB)else $(CC) -o foo $(OBJECT) $(NORMAL_LIB)endif类似的还有ifneq,ifdef,ifndef函数函数的调用格式:$(<function> <argument1>,<argum
2016-05-07 21:36:51
655
原创 2.变量
变量的作用域局部变量:在规则中声明的变量为局部变量。自动化变量是局部变量。# 此时CFLAGES的值是:-gprog: CFLAGES = -g全局变量赋值符号 = 赋值:= 赋值,但不使用未定义的变量+= 追加赋值override 修饰符,用来保护变量的值。使用该修饰符的变量,其值无法在命令行中进行修改。自定义变量自定义的变
2016-05-07 21:35:34
294
原创 1.认识Makefile文件
Makefile通过需要集中编译的文件整合,按照一定的书写规则,可以写成一个类似批处理的文档,这个文档就是Makefile。通过它可以集成编译一个庞大的项目,利于修改编译内容和维护。一个示例 a.out : main.o add.o sub.o sef.o gcc -o a.out main.o add.o sub.o sef.o main.o : main.c
2016-05-07 21:34:48
352
原创 0.附录
伪目标我们可以参照这种规则来书写我们的 makefile 中的目标。 all —— 这个伪目标是所有目标的目标,其功能一般是编译所有的目标。 clean —— 这个伪目标功能是删除所有被 make 创建的文件。 install —— 这个伪目标功能是安装已编译好的程序,其实就是把目标执行文件拷贝到指定的目标中去。 print
2016-05-07 21:31:47
419
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人