JSP面试常见问题

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();












  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值