1、Servlet的生命周期
     在Web容器中,Servlet主要经历4个阶段


     ①、加载Servlet:当Tomcat第一次访问Servlet的时候,Tomcat会负责创建Servlet的实例
     ②、初始化Servlet:当Servlet被实例化之后,Tomcat会调用init()方法来初始化这个对象
     ③、处理服务:当浏览器访问Servlet的时候,Servlet会调用service()方法处理请求
     ④、销毁:当Tomcat关闭或者检测打Servlet要从Tomcat删除的时候,会自动调用destory()方法,让该实例占用的资源释放掉。
2、Servlet是单例的吗,为什么
     Servlet是单例的,浏览器多次对Servlet的请求,一般情况下,服务器只创建一个Servlet对象,也就是说,Servlet对象一旦创建了,就会驻留在内存中,为后续的请求做服务,直到服务器关闭
3、GET和POST请求的区别
     GET请求暴露请求信息,不安全,POST请求隐藏了请求信息,较安全
     GET请求不能超过1KB,可传输的信息有限,不能上传图片
     POST请求没有限制请求的数据大小,可以做图片的上传
4、Tomcat中如何解决中文乱码问题
     对于POST请求可以设置请求编码方式:request.setCharacterEncoding("UTF-8"),注意必须在获取第一个参数之前设置,并且该方式只会POST方式有效
     对于GET请求可以重新设置Tomcat的编码方式,修改Tomcat的配置文件,在conf/server.xml文件中,在端口号配置段,添加URIEncoding=“UTF-8”


5、forward与redirect的区别
     forward:客户端和浏览器只发出一次请求,地址栏不发生改变,资源是共享的
                    语法:request.getRequestDispatcher(path).forward(request,response)
     redirect:客户端和浏览器端发送两次请求,地址栏发生改变,资源不共享
                    语法:response.sendRedirect(String location)
6、session和cookie区别
    ①、session的数据存放在服务器端,cookie的数据存放在客户端
    ②、cookie不是很安全,可以分析存放在本地的cookie并进行cookic欺骗。session较安全
    ③、session会在一定时间内保存在服务器上,当访问增多,会比较占用服务器的资源,从性能方面cookie更有优势
    ④、单个cookie在客户端的限制是3k,session无限制

JavaJ2EE相关知识整理的更多相关文章

  1. Redis相关知识整理

    Redis相关知识整理 1. Redis和MySQL的区别?a).mysql是关系型数据库,而redis是NOSQL,非关系型数据库.mysql将数据持久化到硬盘,读取数据慢,而redis数据先存储在 ...

  2. podSpec文件相关知识整理

    上一篇文章整理了我用SVN创建私有库的过程,本文将整理一下有关podSpec文件的相关知识. podSpec中spec的全称是“Specification”,说明书的意思.顾名思义,这是用来描述你这个 ...

  3. OpenCV&Qt学习之四——OpenCV 实现人脸检测与相关知识整理

    开发配置 OpenCV的例程中已经带有了人脸检测的例程,位置在:OpenCV\samples\facedetect.cpp文件,OpenCV的安装与这个例子的测试可以参考我之前的博文Linux 下编译 ...

  4. [Cxf] cxf 相关知识整理

    ① 请求方式为GET @GET @Path(value = "/userAddressManage") @Produces( { MediaType.APPLICATION_JSO ...

  5. JVM的相关知识整理和学习--(转载)

    JVM是虚拟机,也是一种规范,他遵循着冯·诺依曼体系结构的设计原理.冯·诺依曼体系结构中,指出计算机处理的数据和指令都是二进制数,采用存储程序方式不加区分的存储在同一个存储器里,并且顺序执行,指令由操 ...

  6. Web缓存相关知识整理

    一.前言  工作上遇到一个这样的需求,一个H5页面在APP端,如果勾选已读状态,则下次打开该链接,会跳过此页面.用到了HTML5 的本地存储 API 中的 localStorage作为解决方案,回顾了 ...

  7. java中的字符串相关知识整理

    字符串为什么这么重要 写了多年java的开发应该对String不陌生,但是我却越发觉得它陌生.每学一门编程语言就会与字符串这个关键词打不少交道.看来它真的很重要. 字符串就是一系列的字符组合的串,如果 ...

  8. Android 基本控件相关知识整理

    Android应用开发的一项重要内容就是界面开发.对于用户来说,不管APP包含的逻辑多么复杂,功能多么强大,如果没有提供友好的图形交互界面,将很难吸引最终用户.作为一个程序员如何才能开发出友好的图形界 ...

  9. 【杂谈】FilterChain相关知识整理

    前言 做后台的,Filter肯定没少配置,但是知晓其原理的可能不多.在这之前我也不懂,但这并不影响业务开发,同时也有其他的知识要学,所以一直就没看.这阵子有点闲,刚好在看<How Tomcat ...

随机推荐

  1. [assembly: AssemblyVersion("1.0.1.*")] 指定版本字符串不符合所需格式 - major[.minor[.build[.revision]]]

    报如下错误, 解决方法:打开项目文件,修改 打开项目文件修改:<Deterministic>true</Deterministic> 为:<Deterministic&g ...

  2. Ubuntu16.04安装Redis

    前言 Redis是常用基于内存的Key-Value数据库,比Memcache更先进,支持多种数据结构,高效,快速.用Redis可以很轻松解决高并发的数据访问问题:作为实时监控信号处理也非常不错. 环境 ...

  3. class类 __repr__ 与__str__

    >>> class Student(object):... def __init__(self, name):... self.name = name... def __str__( ...

  4. Fetch和ajax的比较和区别

    传统 Ajax 已死,Fetch 永生   Ajax 不会死,传统 Ajax 指的是 XMLHttpRequest(XHR),未来现在已被 Fetch 替代. 最近把阿里一个千万级 PV 的数据产品全 ...

  5. random模块、time模块、sys模块、os模块

    一.random模块 1.随机取小数     (数学计算) print(random.random()) #取0-1之间的小数 print(random.uniform(3,6)) #uniform( ...

  6. .NET Core 微服务

    github 上的资源: EshopOnContainers AiurSoft : 微服务框架 Server酱:是一款「程序员」和「服务器」之间的通信软件. http://sc.ftqq.com/3. ...

  7. Linux内核源码分析 day01——内存寻址

    前言 Linux内核源码分析 Antz系统编写已经开始了内核部分了,在编写时同时也参考学习一点Linux内核知识. 自制Antz操作系统 一个自制的操作系统,Antz .半图形化半命令式系统,同时嵌入 ...

  8. MySQL表结构更新规范

    以下以新增字段为例,修改.删除.新增表的操作类似: 步骤: 1.PDM(中文名称为产品数据管理(Product Data Management))增加字段,并注明新增字段的注释 2.数据库编写sql语 ...

  9. replace用法替换实例

    实例一: 待处理字符串:str="display=test name=mu display=temp" 要求:把display=后的值都改成localhost JS处理方法: st ...

  10. day07数据类型的相互转化,字符编码

    复习 ''' 1.深浅拷贝 ls = [1, 'a', [10]] 值拷贝:直接赋值 ls1 = ls, ls中的任何值发生改变,ls1中的值都会随之改变 浅拷贝:通过copy()方法 ls2 = l ...