1、Tomcat 的优化经验
答:去掉对 web.xml 的监视,把 jsp 提前编辑成 Servlet。
有富余物理内存的情况,加大 tomcat 使用的 jvm 的内存
2、HTTP 请求的 GET 与 POST 方式的区别
答: Get:是以实体的方式得到由请求 URI 所指定资源的信息,如果请求 URI 只是一个数据产生过程,那么最终要在响
应实体中返回的是处理过程的结果所指向的资源,而不是处理过程的描述。
Post:用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求 URI 所指定资源的附
加新子项,Post 被设计成用统一的方法实现下列功能:
       1:对现有资源的解释
  2:向电子公告栏、新闻组、邮件列表或类似讨论组发信息。
  3:提交数据块
  4:通过附加操作来扩展数据库
从上面描述可以看出,Get 是向服务器发索取数据的一种请求;而 Post 是向服务器提交数据的一种请求,要提交的数
据位于信息头后面的实体中。
4、说一说 Servlet 的生命周期? 答:servlet 有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由
javax.servlet.Servlet 接口的 init,service 和 destroy 方法表达。
Servlet 被服务器实例化后,容器运行其 init 方法,请求到达时运行其 service 方法,service 方法自动派遣运行
与请求对应的 doXXX 方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其 destroy 方法。
web容器加载servlet,生命周期开始。通过调用servlet的init()方法进行servlet的初始化。通过调用service() 方法实现,根据请求的不同调用不同的 do***()方法。结束服务,web 容器调用 servlet 的 destroy()方法。
5、Servlet 的基本架构
public class ServletName extends HttpServlet{
Public void doPost(HttpServletRequest request, HttpServletResponse response)throws
ServletException, IOException{
}
Public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException IOException{
}
}
6、SERVLET API 中 forward() 与 redirect()的区别?
答:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将
会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高
效,在前者可以满足需要时,尽量使用 forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,
需要跳转到一个其它服务器上的资源,则必须使用
sendRedirect()方法。
7、什么情况下调用 doGet()和 doPost()?
Jsp 页面中的 FORM 标签里的 method 属性为 get 时调用 doGet(),为 post 时调用 doPost()。
8、Request 对象的主要方法:
  setAttribute(String name,Object):设置名字为 name 的 request 的参数值
  getAttribute(String name):返回由 name 指定的属性值
  getAttributeNames():返回 request 对象所有属性的名字集合,结果是一个枚举的实例
  getCookies():返回客户端的所有 Cookie 对象,结果是一个 Cookie 数组
  getCharacterEncoding():返回请求中的字符编码方式
  getContentLength():返回请求的 Body 的长度
  getHeader(String name):获得 HTTP 协议定义的文件头信息
  getHeaders(String name):返回指定名字的 request Header 的所有值,结果是一个枚举的实例
  getHeaderNames():返回所以 request Header 的名字,结果是一个枚举的实例
  getInputStream():返回请求的输入流,用于获得请求中的数据
  getMethod():获得客户端向服务器端传送数据的方法
  getParameter(String name):获得客户端传送给服务器端的有 name 指定的参数值
  getParameterNames():获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的实例
  getParametervalues(String name):获得有 name 指定的参数的所有值
  getProtocol():获取客户端向服务器端传送数据所依据的协议名称
  getQueryString():获得查询字符串
  getRequestURI():获取发出请求字符串的客户端地址
  getRemoteAddr():获取客户端的 IP 地址
  getRemoteHost():获取客户端的名字
  getSession([Boolean create]):返回和请求相关 Session
  getServerName():获取服务器的名字
  getServletPath():获取客户端所请求的脚本文件的路径
  getServerPort():获取服务器的端口号
  removeAttribute(String name):删除请求中的一个属性
9、forward 和 redirect 的区别
forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL 的响应内容读取过来,然后把这些内容
再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。
redirect 就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的
所有参数重新请求,所以 session,request 参数都可以获取。
也可以这样提问:Jsp 和 servlet 中的请求转发和重定向分别如何实现?
12. jsp 有哪些动作?作用分别是什么? (这个问题似乎不重要,不明白为何有此题)
答:JSP 共有以下 6 种基本动作
  jsp:include:在页面被请求的时候引入一个文件。
  jsp:useBean:寻找或者实例化一个 JavaBean。
  jsp:setProperty:设置 JavaBean 的属性。
  jsp:getProperty:输出某个 JavaBean 的属性。
  jsp:forward:把请求转到一个新的页面。
  jsp:plugin:根据浏览器类型为 Java 插件生成 OBJECT 或 EMBED 标记
13、JSP 的常用指令
isErrorPage(是否能使用 Exception 对象),isELIgnored(是否忽略表达式)
14. JSP 中动态 INCLUDE 与静态 INCLUDE 的区别?
答:动态 INCLUDE 用 jsp:include 动作实现
它总是会检查所含文件中的变化,适合用于包含动态页面,
并且可以带参数 静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面 <%@ include
file=included.htm %>
15、两种跳转方式分别是什么?有什么区别? (下面的回答严重错误,应该是想问 forward 和 sendRedirect 的区别,毕竟出题的人不是专业搞文字艺术的人,可
能表达能力并不见得很强,用词不一定精准,加之其自身的技术面也可能存在一些问题,不一定真正将他的意思表达清
楚了,严格意思上来讲,一些题目可能根本就无人能答,所以,答题时要掌握主动,只要把自己知道的表达清楚就够了,
而不要去推敲原始题目的具体含义是什么,不要一味想着是在答题)
答:有两种,分别为:
 
前者页面不会转向 include 所指的页面,只是显示该页的结果,主页面还是原来的页面。执行完后还会回来,相当于函
数调用。并且可以带参数.后者完全转向新页面,不会再回来。相当于 go to 语句。
16、页面间对象传递的方法
request,session,application,cookie 等
17、JSP 和 Servlet 有哪些相同点和不同点,他们之间的联系是什么?
JSP 是 Servlet 技术的扩展,本质上是 Servlet 的简易方式,更强调应用的外表表达。JSP 编译后是"类 servlet"。
Servlet 和 JSP 最主要的不同点在于,Servlet 的应用逻辑是在 Java 文件中,并且完全从表示层中的 HTML 里分离
开来。而 JSP 的情况是 Java 和 HTML 可以组合成一个扩展名为.jsp 的文件。JSP 侧重于视图,Servlet 主要用于控
制逻辑。

Java web的一些面试题的更多相关文章

  1. IT兄弟连 Java Web教程 经典面试题

    1.什么是B/S结构?什么是C/S结构? B/S是Browser/Server的缩写客户机上只要安装—个浏览器(Browser)加Netscape Navigator或Internet Explore ...

  2. IT兄弟连 Java Web教程 经典面试题2

    1.Servlet的工作流程? Servlet是运行在Servlet容器中的,由Servlet容器来负责Servlet实例的查找.创建以及整个生命周期的管理,Servlet整个生命周期可以分为四个阶段 ...

  3. java web项目答辩答辩题总结(书本网上语言答辩+自己的语言答辩)

    答辩每个人的总分为1.5分.每个人主要问3个问题. 开发流程===>系统架构====>项目模块+功能===>项目得失重定向与转发:?九个隐式对象?get与post的区辨:?jsp有静 ...

  4. java web面试题

    java web面试题 第1题.  编写一个Filter,需要() A.  继承Filter 类 B.  实现Filter 接口 C.  继承HttpFilter 类 D.  实现HttpFilter ...

  5. Java 面试/笔试题神整理 [Java web and android]

    Java 面试/笔试题神整理 一.Java web 相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并 ...

  6. 超实用的Java web面试题

    Java web面试题 1.Tomcat的优化经验 答:去掉对web.xml的监视,把jsp提前编辑成Servlet. 有富余物理内存的情况,加大tomcat使用的jvm的内存 2.HTTP请求的GE ...

  7. java Web工程师面试题集绵

    一.Java 基础 1.JDK .JRE 和JVM关系是什么? 答:A. JDK(Java Development Kit)即Java开发工具包,包含编写Java程序所必须的编译.运行等开发工具以及J ...

  8. Java Web面试题整理(思维导图)

    1,动态网站技术有哪些? 2,一般的Web架构是指BS 还是CS,BS架构是什么咚咚? 3,Web应用程序的流程,即把一个URL串输入地址栏后发生写什么? 4,说一说Servlet生命周期? 5,在W ...

  9. Java面试题(Java Web篇)

    Java Web 64.jsp 和 servlet 有什么区别? jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将 ...

随机推荐

  1. Mtcnn进行人脸剪裁和对齐B

    Mtcnn进行人脸剪裁和对齐 from scipy import misc import tensorflow as tf import detect_face import cv2 # import ...

  2. 深度学习之Batch Normalization

    在机器学习领域中,有一个重要的假设:独立同分布假设,也就是假设训练数据和测试数据是满足相同分布的,否则在训练集上学习到的模型在测试集上的表现会比较差.而在深层神经网络的训练中,当中间神经层的前一层参数 ...

  3. [Swift]LeetCode1033. 移动石子直到连续 | Moving Stones Until Consecutive

    Three stones are on a number line at positions a, b, and c. Each turn, let's say the stones are curr ...

  4. AI繁荣下的隐忧——Google Tensorflow安全风险剖析

    本文由云+社区发表 作者:[ Tencent Blade Team ] Cradmin 我们身处一个巨变的时代,各种新技术层出不穷,人工智能作为一个诞生于上世纪50年代的概念,近两年出现井喷式发展,得 ...

  5. java之servlet入门操作教程一续

    本节主要是在java之servlet入门操作教程一  的基础上使用myeclipse实现自动部署的功能 准备: java之servlet入门操作教程一 中完成myFirstServlet项目的创建: ...

  6. 2.JAVA-基础语法以及String的介绍

    1.goto和const 目前java中,和C/C++有点区别,就是暂未用到goto const关键字.示例如下: public class Hello{ public static void mai ...

  7. android---动画入门(一)

    android 动画分为两类,View Animation(视图动画)和property Animation(属性动画),View Animation(视图动画)包含了Tween Animation和 ...

  8. Microsoft SQL Server 双机热备份,实时同步

    1.两台服务器,主服务器,从服务器,两台服务器都安装SQL Server 2008R2并且安装相同表结构的数据库(需要实时同步的数据库) 2.主服务器数据库安装完毕,打开SQL Server 配置管理 ...

  9. 4. [mmc subsystem] mmc core(第四章)——host模块说明

    零.说明 对应代码drivers/mmc/core/host.c,drivers/mmc/core/host.h. 为底层host controller driver实现mmc host的申请以及注册 ...

  10. c/c++ 网络编程 陈硕老师视频理解之ttcp

    ttcp 是干啥的:测试2台机器间的网络传输性能 wiki 功能如下图: 对应的视频是: 4.回顾基础的Sockets API.mkv 5.TTCP代码概览.mkv 6.使用TTCP进行网络传输性能测 ...