JSP面试常见问题

原创 2016年08月28日 20:11:32

1、Get请求和Post请求区别

aPost是通过Http中的Post机制将表单中的数据提交道Action所制定的程序,Get方法是通过Url请求来提交表单数据的。

bGet适用于传输数据量小于1K数据,执行效率高。Post传输数据量较大,但也有限量。

2、servlet生命周期

Servlet 的生命周期始于将它装入 Web 服务器的内存时,并在终止或重新装入 Servlet 时结束。

包括加载实例化初始化处理请求以及服务结束

这个生存期由 javax.servlet.Servlet 接口的 init, service destroy 方法表达。

描述servlet的生命周期,谁来控制servlet的生命周期,servlet生命周期在J2EE规范中是如何来定义的服务器实例化一个servlet对象,

容器运行其init方法,请求到达时运行其service方法,service方法根据请求的类型调用(doGetdoPost)方法,

当服务器决定将实例销毁时调用其destory方法

3、ServletJsp的区别?

Servlet是直接执行的文件   .Jsp是要被通过编译形成Servlet后才执行。

4、JSP构架模型

Model1:纯jsp 维护难,代码可复用性差

Model2jsp+javabean jsp中使用usebean标签,代码在jsp中本质同Model1

Mvcjsp+servlet+javabean

5、JSP隐含变量

request     用户端请求,此请求会包含来自GET/POST请求的参数

response      网页传回用户端的回应

pageContext 网页的属性是在这里管理

session       与请求有关的会话期

application   servlet 正在执行的内容

config        servlet的构架部件

out           用来传送回应的输出   (用来向客户端输出数据)

page          JSP网页本身

exception 针对错误网页,未捕捉的例外 (异常)

6、四大共享范围

apage 当前页面。

bsession 同一个网站内。

crequest 从上一页到下一个页面。

dapplication 同一个网站内。

7、MVC——如何理解MVC

  MVC是Model-View-Controller的简写。

"Model" 代表的是应用的业务逻辑 (通过JavaBean,EJB组件实现),

"View" 是应用的表示面(由JSP页面产生),

"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。

这些组件可以进行交互和重用。

8、 jsp有哪些动作?作用分别是什么?

JSP共有以下6种基本动作

jsp:include:在页面被请求的时候引入一个文件。

jsp:useBean:寻找或者实例化一个JavaBean。

jsp:setProperty:设置JavaBean的属性。

jsp:getProperty:输出某个JavaBean的属性。

jsp:forward:把请求转到一个新的页面。

jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记

9、简述Session的特点有哪些?

(1) 不是线程安全的

(2) Session实例是轻量级的

(3) 在Session 中,每个数据库操作都是在一个事务(transaction)中进行的

10、 Forword和SendRedirect区别

前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;

后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。

所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。但在有些情况下,

比如,需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。

forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,

浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。redirect就是服务端根据逻辑,发送一个状态码,

告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。

11、实现页面跳转的两种方法:

a、<jsp:forward page=”for2.jsp”/>

b、<%response.sendRedirect(“for2.jsp”);%>

12、JavaBean的使用:

<jsp:useBean id=”name” class=”sist.md5” scope=”page”/>

或者<jsp:useBean id=”name” class=”sist.md5” scope=”page”></jsp:useBean>

13、如何设置/取得Bean 中的属性值?

设置属性值<jsp:setProperty name=”haha”,property=”haha的属性” value=”变量值”/>

< jsp:setProperty name=”haha”,property=”*” />获取从上一个表单中提交过来的,与Bean中变量名字相同的所有属性.

取得属性值:<jsp:getProperty name=”haha” property=”bean的属性”/>

相当于:<%=getA()%>

14、include指令标签:

<%@include file=”inc1.jsp”%> 简单的代码复制。

include动作标签:<jsp:include page =”inc2.jsp”>获取inc2.jsp的执行结果。

15、页面之间的值传递:

a、设置Session 变量:session.setAttribute(“name”,”sist”);

获取Session 变量:session.getAttribute(“name”);

b、地址方式传递:show.jsp?id=变量值&name=

16、获取session ID: <%=session.getId()%>;判断session是否有效:session.isNew();

17、JSP标签

动作标签:jsp:include jsp:forword jsp:usebean jsp:set/get Property

指令标签:<%@page……%> <%@include…..%> <%@taglib…..%>

18、描述servlet的生命周期,谁来控制servlet的生命周期,servlet生命周期在J2EE规范中是如何来定义的

服务器实例化一个servlet对象,容器运行其init方法,请求到达时运行其service方法,service方法根据请求的类型调用(doGet,doPost)方法,

当服务器决定将实例销毁时调用其destory方法。

19、获得ServletConfig对象

ServletConfig sc=getServletConfig();

20、如何获得servletContext对象

servletContext sc=getservletContext();












【面试】【Oracle常见问题总结】【01】

系统全局区(SGA):是ORACLE为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作。 SGA主要包括: 1. 共享池(shared pool) :用来存...
  • DERRANTCM
  • DERRANTCM
  • 2016年05月31日 06:55
  • 2851

Android面试中常见问题集锦

Android面试中常会被问到的问题及解答方式: 1,PendingIntent 和Intent的区别: PendingIntent就是一个Intent的描述,我们可以把这个描述交给别的程序,别...
  • u013233097
  • u013233097
  • 2015年12月23日 21:49
  • 2305

[HR面试] 65个最常见的面试问题与技巧性答复

[HR面试] 65个最常见的面试问题与技巧性答复 1、请你自我介绍一下你自己? 回答提示:一般人回答这个问题过于平常,只说姓名、年龄、爱好、工作经验,这些在简历上都...
  • u013380303
  • u013380303
  • 2014年03月06日 13:00
  • 5131

常见的面试C++问题

1、C++中struct和class有什么区别 (一) 默认继承权限。 如果不明确指定,来自 class 的继承按照 private 继承处理,来自 struct的继承按照 public 继承处理; ...
  • tax10240809163com
  • tax10240809163com
  • 2015年12月18日 16:10
  • 644

php面试必知必会常见问题

1 说出常用的10个数组方法 我觉得数组比较最能体现php基础语法的一个数据结构了,下面给大家列一下常用的10个关于操作数组的函数 in_array(判断数组中是否有某个元素)...
  • Mr_Janan
  • Mr_Janan
  • 2016年07月27日 09:07
  • 7055

JAVA常见面试问题以及答案

在网上看到的,前一段时间也是在忙面试的事情,感觉总结的挺好的,这两天有时间了花点时间把答案整理出来。 一、Java基础 1. String类为什么是final的。 2. ...
  • yuhushangwei
  • yuhushangwei
  • 2016年10月20日 22:49
  • 2646

MySQL 面试中的问题汇总

case when使用;Mysql中sql模式;datediff;char与varchar区别;数据复制步骤;索引类型、聚簇索引、索引与锁;阐述isnull、ifnull、nullIf;MyISAM与...
  • hsd2012
  • hsd2012
  • 2016年05月08日 16:09
  • 2018

一些常见iOS面试常见的问题(一)

虽然已工作很长时间了,但是看到一些题,我还是会想起那些面试的时光,下面是一些面试的常见题型 1、为什么UIScrollView的滚动会导致NSTimer失效? 应该是因为UIScrollV...
  • zhanniuniu
  • zhanniuniu
  • 2016年03月16日 23:00
  • 863

JSP相关的一些问题与分析

JSP作为JavaEE最流行的表现层技术,并非不可替代,实际上随着JavaEE技术的发展,又出现了FreeMaker、Velocity等表现层技术,虽然这些技术可以取代JSP作为表现层的角色,但是JS...
  • sinat_26342009
  • sinat_26342009
  • 2015年06月08日 23:56
  • 2226

Oracle面试过程中常见的二十个问题

1.冷备份和热备份的不同点以及各自的优点  解答:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。而冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库。热备份的优点在于...
  • u013700340
  • u013700340
  • 2014年05月03日 17:53
  • 991
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSP面试常见问题
举报原因:
原因补充:

(最多只允许输入30个字)