JavaWeb 基础笔试题(企业实战版)_第1页
JavaWeb 基础笔试题(企业实战版)_第2页
JavaWeb 基础笔试题(企业实战版)_第3页
JavaWeb 基础笔试题(企业实战版)_第4页
JavaWeb 基础笔试题(企业实战版)_第5页
已阅读5页,还剩2页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JavaWeb基础笔试题(企业实战版)考试说明:满分100分,考试时间90分钟,闭卷作答;题型包含选择题、填空题、简答题、编程题、实操应用题,考察JavaWeb核心基础、常用框架、web开发常见问题及实战能力。一、单项选择题(共15题,每题2分,共30分)1.下列关于Servlet的生命周期,执行顺序正确的是()A.初始化、实例化、服务、销毁

B.实例化、初始化、服务、销毁

C.初始化、服务、实例化、销毁

D.实例化、服务、初始化、销毁2.HttpServletRequest对象中,用来获取客户端请求参数的方法是()A.getHeader()

B.getParameter()

C.getAttribute()

D.getRequestURI()3.以下哪个对象的作用域是整个Web应用,所有用户共享()A.pageContext

B.request

C.session

D.application4.JSP中,用于引入静态资源文件的指令是()A.<%@page%>

B.<%@include%>

C.<%@taglib%>

D.<jsp:include%>5.下列关于Cookie和Session的说法,错误的是()A.Cookie存储在客户端浏览器

B.Session存储在服务器端

C.Session可以完全脱离Cookie使用

D.Cookie可以设置过期时间6.Servlet中,doGet和doPost方法的默认访问权限是()A.public

B.private

C.protected

D.default7.转发(forward)和重定向(redirect)的区别,以下说法正确的是()A.重定向地址栏不变,转发地址栏改变

B.转发是服务器内部跳转,只产生一次请求

C.重定向是服务器内部跳转

D.转发可以跳转到外部网站8.下列不属于JSP九大内置对象的是()A.response

B.out

C.servlet

D.page9.Tomcat默认的服务端口号是()A.80

B.8080

C.8090

D.330610.过滤器(Filter)的执行时机是()A.客户端请求到达Servlet之前

B.Servlet执行完毕之后

C.项目启动时直接执行

D.会话创建时执行11.以下EL表达式写法正确的是()A.${}

B.#

C.<%=%>

D.${user->name}12.解决POST请求中文乱码的正确代码是()A.response.setContentType("text/html;charset=UTF-8")

B.request.setCharacterEncoding("UTF-8")

C.System.setProperty("encoding","UTF-8")

D.newString(param.getBytes(),"UTF-8")13.Session默认的超时时间是()A.10分钟

B.30分钟

C.60分钟

D.永久有效14.下列关于Listener监听器的说法,正确的是()A.监听器可以拦截用户请求

B.监听器用于监听Web域对象的创建、销毁、属性变更事件

C.监听器需要手动调用执行

D.一个项目只能配置一个监听器15.MVC模式中,Controller的主要作用是()A.展示页面数据

B.封装业务数据

C.接收请求、分发处理、控制流程

D.处理数据库交互二、填空题(共10空,每空1分,共10分)1.Web开发中,HTTP协议默认的请求方式有_________和_________两种。2.JSP的本质是_________。3.实现Servlet过滤器需要实现_________接口。4.服务器端跳转使用_________方法,客户端跳转使用_________方法。5.域对象中,_________作用域仅当前页面有效,_________作用域单次请求有效。6.删除Session中指定属性的方法是_________。7.Cookie默认的生命周期是_________。三、简答题(共5题,每题6分,共30分)1.简述Servlet的完整生命周期,以及各个阶段的触发时机和作用。2.详细说明转发(forward)和重定向(redirect)的核心区别,分别适用于什么业务场景?3.简述Cookie和Session的区别,各自的优缺点是什么?4.Web开发中常见的中文乱码问题有哪些?分别给出对应的解决方案。5.简述Filter过滤器的工作原理,以及在项目中的常用应用场景。四、编程题(共2题,每题10分,共20分)1.基础Servlet开发编写一个LoginServlet,实现以下功能:(1)接收前端表单提交的username、password两个参数;

(2)解决POST请求中文乱码问题;

(3)判断用户名密码,用户名admin、密码123456则登录成功,跳转到success.jsp,否则跳转fail.jsp;

(4)使用服务器内部转发实现页面跳转。2.Cookie实操编写代码实现:用户登录成功后,添加一个Cookie,保存用户账号,有效期为7天;并在页面中读取该Cookie信息,展示用户名。五、综合应用题(共1题,10分)结合JavaWeb基础知识点,设计一个简单的用户登录模块流程,要求说明:1.整体请求执行流程(从用户访问页面到登录结果展示);

2.用到的核心组件(Servlet、域对象、Cookie/Session等)及作用;

3.说明如何实现登录状态保持、退出登录功能;

4.简单说明如何防止用户未登录直接访问首页。参考答案一、单项选择题1.B2.B3.D4.B5.C

6.C7.B8.C9.B10.A

11.A12.B13.B14.B15.C二、填空题1.GET、POST

2.Servlet

3.Filter

4.request.getRequestDispatcher().forward()、response.sendRedirect()

5.page、request

6.removeAttribute()

7.浏览器会话(关闭浏览器即失效)三、简答题(核心要点)1.Servlet生命周期1.实例化:服务器接收请求后,首次访问Servlet时通过反射创建实例,仅执行一次;

2.初始化:调用init()方法,完成资源初始化,仅执行一次;

3.服务调用:每次请求都会调用service(),根据请求方式分发doGet/doPost,多次执行;

4.销毁:项目关闭/卸载时调用destroy(),释放资源,仅执行一次。2.转发和重定向区别及场景区别:1.转发是服务器内部跳转,1次请求,地址栏不变;重定向是客户端二次请求,2次请求,地址栏改变;2.转发可共享request域数据,重定向无法共享;3.转发仅可跳转项目内资源,重定向可跳转外部链接。

场景:转发用于页面数据携带跳转、业务视图跳转;重定向用于表单提交防重复、页面刷新、跨站点跳转。3.Cookie和Session区别1.存储位置:Cookie客户端、Session服务端;

2.容量限制:Cookie容量小、有数量限制,Session无严格限制;

3.安全性:Session安全性更高,Cookie易被篡改窃取;

4.依赖关系:Session默认依赖Cookie存储JSESSIONID;

优点:Cookie减轻服务器压力,Session数据安全可靠;

缺点:Cookie安全性差,Session占用服务器资源,大量用户访问易造成压力。4.常见乱码及解决方案1.POST请求乱码:request.setCharacterEncoding("UTF-8");

2.GET请求乱码:修改Tomcat配置URIEncoding="UTF-8",或手动转码;

3.响应输出乱码:response.setContentType("text/html;charset=UTF-8");

4.JSP页面乱码:设置页面page指令编码为UTF-8。5.Filter工作原理及场景原理:过滤器位于客户端和资源之间,请求到达Servlet、JSP等资源前,拦截请求和响应,进行预处理和后处理,采用链式执行。

场景:统一编码设置、登录权限拦截、资源过滤、请求日志记录、防重复提交。四、编程题(核心代码)1.LoginServlet核心代码java

@WebServlet("/login")

publicclassLoginServletextendsHttpServlet{

@Override

protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{

//解决POST乱码

request.setCharacterEncoding("UTF-8");

//获取参数

Stringusername=request.getParameter("username");

Stringpassword=request.getParameter("password");

//逻辑判断

if("admin".equals(username)&&"123456".equals(password)){

//登录成功转发

request.getRequestDispatcher("/success.jsp").forward(request,response);

}else{

//登录失败转发

request.getRequestDispatcher("/fail.jsp").forward(request,response);

}

}

@Override

protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{

doPost(request,response);

}

}2.Cookie实操核心代码java

//登录成功后创建Cookie

Cookiecookie=newCookie("username",username);

//设置有效期7天

cookie.setMaxAge(7*24*60*60);

//设置有效路径

cookie.setPath("/");

//添加到客户端

response.addCookie(cookie);

//读取Cookie

Cookie[]cookies=request.getCookies();

StringuserName="";

if(cookies!=null){

for(Cookiec:cookies){

if("username".equals(c.getName())){

userName=c.getValue();

}

}

}

request.setAttribute("userName",userName);五、综合应用题(参考答案要点)1.执行流程:用户访问登录页面→输入账号密码提交表单→请求提交至Log

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论