- 博客(14)
- 收藏
- 关注
转载 九大内置对象、四大域对象
借鉴原文:原文九大内置对象:1、什么是内置对象:所谓内置对象就是我们在使用过程中不用去先创建然后再使用,再JSP页面中我们使用内置对象能够直接使用然后调用其方法,再servlet中我们获取session对象,我们要先request.getssion()获取对象,但是在Jsp中我们可以直接使用Session,并且调用其方法—>session.getId();**九大内置对象及其类型:对象 | 类型request HttpServletRe
2020-09-23 19:34:46 505
原创 cookie和session
联系:*都是服务器识别浏览器用户的一种会话方式区别:cookie:1、形成过程:浏览器发送请求给服务器---->服务器响应并创建一个带有用户信息的cookie给浏览器------->浏览器保存cookie并下次请求时会带着cookie请求服务器session:创建过程:浏览器第一次发送请求给服务器时,服务器会通过response.getSession()创建一个Session并保存在服务器-------->同时创建一个特殊的Cookie(key为JSESession,va
2020-09-23 08:33:24 157
原创 常混淆的重定向、转发的区别
重定向与转发的区别:1、重定向:<1>:一次重定向是发送两次请求<2>:重定向的地址栏会发生改变<3>:重定向不能使用request域去共享数据(因为又两次request)<4>重定向可以访问其他站点的数据(非本服务器资源)2、转发:<1>:一次转发一个请求<2>:使用request域共享数据(request.setAttribute()、request.getAttribute)<3>地址栏不会发生改变
2020-09-21 20:33:32 196
原创 注解学习
自定义注解1、了解注解的组成注解的组成:格式://元注解@Target()//描述注解能够作用的位置,【方法、类、成员变量。。。。】@Retention()//描述注解作用的时期,【source、class、runtime】@Documented//描述注解是否注入api中@Inherited//描述注解是否被子类继承public @interface xxx{/*包含类型:基本数据类型、String类型、枚举类型、注解类型、以上所有类型的集合类型*/}2、了解注解的使用**
2020-09-16 21:39:11 132
原创 BM算法图解
BM算法的概念:BM算法也叫做精确字符集算法,它是一种从右往左比较(后往前),同时也应用到了两种规则坏字符、好后缀规则去计算我们移动的偏移量的算法。1、坏字符规则基本思路图解:首先:提供两个字符串分别是文本串、模式串因为是从右往左开始比较、为什么呢?因为这样的话如果最后一个比较不上前面的一定就可以不用比较了。这时:c、d不匹配。所以文本串中的d是坏字符。这时利用公式计算出**后移位数。**** 后移位数 = 坏字符的位置 - 模式串中的上一次出现位置所以计算结果是:6=5-(-1);
2020-09-13 20:31:42 6597 3
原创 深度优先遍历、广度优先遍历
DFS:深度优先遍历BFS:广度优先遍历就是一层一层遍历,解决:使用队列eg:遍历这颗树:1,2,3,4,5,6,7,8,9,10
2020-09-13 18:16:12 131
原创 LSM树
LSM树引入的原因B+树会产生大量的随机IO,随着新数据的插入,叶子节点会慢慢分裂,逻辑上连续的叶子节点在物理上往往不连续,甚至分离的很远,但做范围查询时,会产生大量读随机IO。对于大量的随机写也一样,举一个插入key跨度很大的例子,如7->1000->3->2000 … 新插入的数据存储在磁盘上相隔很远,会产生大量的随机写IO.从上面可以看出,低下的磁盘寻道速度严重影响性能(近些年来,磁盘寻道速度的发展几乎处于停滞的状态)。LSM树:为了完善B+树的会产生大量的随机IO问题,引
2020-09-11 16:35:04 360
原创 树
这里写目录标题树二叉树完全二叉树满二叉树平衡二叉树堆树二叉树二叉树(Binary tree)是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个结点最多只能有两棵子树,且有左右之分 [1] 。二叉树是n个有限元素的集合,该集合或者为空、或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成,是有序树。当集合为空时,称该二叉树为空
2020-09-11 14:44:55 488
原创 链表反转的两种代码实现
1、递归方法:static Node changeLinkedList(Node node){if(node==null||node.next==null){ return node;//说明压根就他一个元素没必要反转,或者到了最后一个节点了}else{ Node node=changeLinkedList(node.next);//采取递归的思想移动位置 node.next.next=node;//让后面那个node的next指针指向当前这个node node.next=null;
2020-09-08 16:08:44 473
转载 List----->LinkedList源码学习
这里写目录标题简介LinkedList源码分析根据位置取数据的方法根据对象得到索引的方法检查链表是否包含某对象的方法:删除方法简介LinkedList是一个实现了List接口和Deque接口的双端链表。因为它的链表结构使他具备了快速插入和删除的特性、以及它实现了Deque接口使他具备了队列的特性。Linkedlist是线程不安全的,所以要想让他具备线程安全可以使用Connections类的方法:List list=Collections.synchronizedList(new LinkedList(
2020-09-08 11:03:55 240
原创 List--ArrayList源码分析
List子类特性1、存储元素有序、存储元素客重复2、主要方法:增:add(Object obj)删:remove(int index) / remove(Object obj)改:set(int index, Object ele)查:get(int index)插:add(int index, Object ele)长度:size()遍历:① Iterator迭代器方式:顺序访问② 增强for循环③ 普通的循环:随机访问常用实现类:|----Collection接口:单列集合,用
2020-09-07 20:30:14 443
原创 进制转换规则
**16进制---->其他进制:1、16–>10进制:eg: 3010进制:(3x16 ) +0x16^1=48;2、16–>8进制:eg:20*先将20转换成2进制:0001 0100*然后将2进制转换成8进制:00 101 000---->000 101 000*503、16进制到二进制例:2AF5换算成2进制:第0位: (5)16 = (0101) 2第1位: (F)16 = (1111) 2第2位: (A) 16 = (1010) 2第3
2020-09-07 20:08:16 1311
转载 Java中的<< 和 >> 和 >>> 详细分析
**<<表示左移移,不分正负数,低位补0; 注:以下数据类型默认为byte-8位左移时不管正负,低位补0正数:r = 20 << 2 20的二进制补码:0001 0100 向左移动两位后:0101 0000 结果:r = 80负数:r = -20 << 2 -20 的二进制原码 :1001 0100 -20 的二进制反码 :1110 1011 -20 的二进制补码 :1110 1100 左移两位后的补码:1011 0000
2020-09-07 19:28:18 203
原创 计算机网络--面试题
首先了解OSI七层体系结构、TCP/IP三层体系结构、五层协议体系结构楼主自己快记方法:巫术、网运会、彪鹰(物、数、网、运、会、表、应)那么从上往下介绍:**应用层:**应用层的作用就是通过不同进程之间的交互实现特地的网络应用,因为不同的进程之间交互的规则协议是不同的,如域名系统DNS万维网的http协议、支持邮件的SMTP,他们之间交互的信息单元就是报文。万维网DNS:(Domain Name System)*,他是能够将域名和ip地址相互映射的分布式系统、让我们不必去记住一连串的ip地址,
2020-09-06 17:02:04 1515
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人