收藏 分销(赏)

2023年web面试题一答案.doc

上传人:二*** 文档编号:4576901 上传时间:2024-09-30 格式:DOC 页数:9 大小:30.04KB 下载积分:5 金币
下载 相关 举报
2023年web面试题一答案.doc_第1页
第1页 / 共9页
本文档共9页,全文阅读请下载到手机保存,查看更方便
资源描述
Java Web部分面试题一 1. 说出Servlet的生命周期,并说出Servlet和CGI的区别? Web容器加载servlet并将其实例化后,servlet生命周期开始,容器运营其init方法进行servlet的初始化,请求到达时运营其service方法,service方法自动派遣运营于请求相应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。与CGI的区别在与servlet处在服务器进程中,它通过多线程方式运营其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完毕后就销毁,所以效率上低于servlet。 2. forward和redirect的区别? forward是容器中控制权的转向,是服务器请求资源,服务器直接访问目的地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器主线不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是本来的地址。 redirect就是服务器端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取,并且从浏览器的地址栏中可以看到跳转后的链接地址。 前者更加高效,在前者可以满足需要时,尽量使用forward()方法,也有助于隐藏实际的链接;在有些情况下,比如需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。 3. JSP中动态include与静态include的区别? 动态include用jsp:include动作实现 <jsp:include page="included.jsp" flush="true"/>它总是会检查所包含文献中的变化,适合用于包含动态页面,并且可以带参数;静态include用include伪码实现,它不会检查所含文献的变化,合用于包含静态页面<%@ include file="included.htm" %> 4. JSP的有哪些内置对象,作用分别是什么? request:表达HttpServletRequest对象,它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie,header和session数据的有用方法; response:表达HttpServletResponse对象,并提供了几个用于设立送回浏览器的响应的方法(如cookies,头信息等。) pageContext:网页的属性在这里管理; session:表达一个请求的javax.servlet.http.HttpSession对象,session可以存储用户的状态信息; application:表达一个javax.servlet.ServletContext对象,这有助于查找有关servlet引擎和servlet环境的信息; out:是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果; config:表达一个javax.servlet.ServletConfig对象,该对象用于存取servlet实例的初始化参数; page:表达从该页面产生的一个servlet实例; exception:针对错误网页,未捕获的例外。 5. JSP的常用指令? <%@page language="java" contentType="text/html" %> <%@include file="filename"%> <%@taglib prefix="c" uri="http://...."%> 6. JSP有哪些动作,作用分别是什么? JSP共有以下6种基本动作: jsp:include:在页面被请求的时候引入一个文献; jsp:useBean:寻找或者实例化一个JavaBean; jsp:setProperty:设立JavaBean的属性; jsp:getProperty:输出某个JavaBean的属性; jsp:forward:把请求转到一个新的页面; jsp:plugin:根据浏览器类型为Java插件生成object标记。 7. GET和POST的区别? form中的get和post方法,在数据传输过程中分别相应了HTTP协议中的GET和POST方法。两者重要区别如下: ①  Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据; ②  Get将表单中数据按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相相应的方式,传递到action所指向URL; ③  Get是不安全的,由于在传输过程,数据被放在请求的URL中;Post的所有操作对用户来说都是不可见的; ④  Get传输的数据量小,这重要是由于受URL长度限制;而Post可以传输大量的数据,所以在上传文献只能使用Post; ⑤  Get限制form表单的数据集必须为ASCII字符,而Post支持整个ISO10646字符集; ⑥  Get是from的默认方法。 8. 常用的web容器和开发工具? 最常用的容器包含:tomcat、weblogic、 开发工具有:eclipse,jbuilder,JCreator 9. 画出Servlet2.2以上Web Application的基本目录结构? 目录结构如下图所示: 10. JSP和Servlet有哪些相同点和不同点,它们之间的联系是什么? Jsp是servlet技术的扩展,本质上是servlet的简易方式,更强调应用的视图表达。JSP编译后是“servlet类”。Servlet和JSP最重要的不同点在于,servlet的应用逻辑是在Java文献中,并且完全从表达层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文献。JSP侧重于视图,servlet重要用于控制逻辑。 11. JSP的四种数据共享范围? Ø pageContext是代表与一个页面相关的对象和属性。一个页面由一个编译好的Java servlet类(可以带有任何的include指令,没有include动作)表达。这既涉及servlet又涉及被编译成servlet的JSP页面。 Ø Request是代表与web客户机发出的一个请求相关的对象和属性。一个请求也许跨越多个页面,涉及多个web组件(由于forward指令和include动作的关系) Ø Session是代表与用于某个web客户机的一个用户体验相关的对象和属性。一个web会话可以也经常会跨越多个客户机请求。 Ø Application是代表与整个web应用程序相关的对象和属性。这实质上是跨越整个web应用程序,涉及多个页面、请求和会话的一个全局作用域。 12. Request对象的重要方法? getParameter(String) 返回指定输入参数,假如不存在,返回null getParameterValues(String) 返回指定输入参数名的取值数组,假如取值不存在则返回null。它在参数具有多个取值的情况下十分有用。 getParameterMap() 返回请求参数的map()对象 getRequestURI() 返回URL中一部分,从“/”开始,涉及上下文,但不涉及任意查询字符串 getContextPath() 返回指定servlet上下文(web应用)的URL的前缀 setAttribute(String, Object) 在请求中设一个属性 getAttribute(String) 得到设立的属性的值 getSession() 返回当前http会话 getCookies(); 返回与请求相关cookie的一个数组 getRequestDispatcher(String) 用于转发转发到新的地址 setCharaterEncoding(String) 设立解析的编码 13. 具体描述MVC。 基于Java的web应用系统采用MVC架构模式,即model(模型)、view(视图)、control(控制)分离设计;这是目前WEB应用服务系统的主流设计方向。 Medel:即解决业务逻辑的模块,每一种解决一个模块; View:负责页面显示,显示model解决结果给用户,重要实现数据到页面转换过程; Control:负责每个请求的分发,把form数据传递给model解决,把解决结果的数据传递给view显示。 14. MVC的各个部分都有哪些技术来实现? MVC是Model-View-Controller的简写。“Model”代表的是应用的业务逻辑(通过JavaBean,EJB组件实现),“View”是应用的表达层(由JSP页面产生),“Controller”是提供应用的解决过程控制(一般是一个servlet),通过这种设计模型把应用逻辑,解决过程和显示提成不同的组件实现。这些组件可以进行交互和重用。 15. 有哪几种会话跟踪技术? Cookie、URL重写、设立表单隐藏域。 16. 过滤器有哪些作用? 可以验证客户是否来自可信的网络,可以对客户提交的数据进行重新编码,可以过滤掉客户的某些不应当出现的词汇,可以验证用户是否登录,可以验证客户的浏览器是否支持当前的应用,可以记录系统的日记等。 17. Web.xml的作用? 用于配置web应用的信息,如listener、filter及servlet的配置信息等。 18. 写出熟悉的JSTL标签。 <c:if>、<c:choose>、<c:when>、<c:otherwise>、<c:forEach>、<c:set>。 19. JSP标签的作用?如何定义? 作用:分离JSP页面的内容和逻辑; 封装业务逻辑; 可重用并且维护; 易于修改、维护; 提供简洁的语法。 定义:写标签解决器; 写tld文献; 将标签解决器和tld文献放到同一个包里面; 把jsp页面和标签库配置部署在一起。 20. JavaScript的内置对象: JavaScript有11种内置对象: Array、String、Date、Math、Boolean、Number、Function、Global、Error、RegExp、Object。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服