javaweb面试题

本文涵盖JSP与Servlet的基础知识点,包括JSP指令的区别、页面间传值的方法、Cookie与Session的应用及区别、Servlet中页面跳转的技术,并对比Forward与Redirect的不同之处。此外,还介绍了JSP内置对象及域对象的用途。


专栏笔记:https://blog.csdn.net/blu_111/category_10397159.html


1. <%%> 与 <%!%> 的区别?(拓展:<%=%> 和 <%:%> )

<%%> (JSP脚本)中的内容会翻译在Servlet的Service方法中,用于编写逻辑
<%!%>(JSP声明)中的内容会翻译在生成的Servlet类中,用于定义方法
<%=%>(JSP表达式)会把 Java 对象直接输出到 HTML ⻚面中
<%:%> 和 <%=%> 作用相同


2. 页面间传值有哪几种几种方式
  1. 直接在URL请求后添加:?k1=v1&k2=v2
  2. form表单传值:
<input type="text" name="age" value="23"/>
  1. 使用Cookie和Session实现数据共享

3. cookie与session区别,如何使用

cookie数据保存在客户端,session数据保存在服务器端。
cookie的键和值都是字符串类型,session的值可以是对象类型。
Session大小受服务器内存控制, Cookie一般最大为4k

通过 response.addcookie() 向客户端设置cookie
通过 request.getCookies() 获取从客户端提交过来的所有cookie

request.getSession() 获取session


4. 在servlet里面实现页面跳转的几种方式

1)redirect方式:response.sendRedirect("/index.jsp");
2)forward方式:request.getRequestDispatcher("/index.jsp").forward(request,response);


5. Forward 和 Redirect 的区别

从地址栏显示来说:
Forward(转发)地址栏不变
Redirect(重定向)地址栏改变

从请求次数来看:
Forward(转发)是服务器内部跳转,是一次请求
Redirect(重定向)是客户端的跳转,属于多次请求

从数据共享来说:
Forward 转发页面和转发到的页面可以共享请求数据
Redirect 不能共享数据

从运用地方来说:
Forward 一般用于用户登陆的时候,根据角色转发到相应的模块
Redirect 一般用于用户注销登陆时返回主页面

此外,Redirect 还能够重定向到其他站点


5. JSP的9大内置对象和4大域对象

9大内置对象

内置对象名		 类型
request			(HttpServletRequest)
response		(HttpServletResponse)
config			(ServletConfig)
application		(ServletContext)
session			(HttpSession)
exception		(Throwable)
page			(Object(this))
out				(JspWriter)
pageContext		(PageContext)

4大域对象

ServletContext		context		只能在同一个web应用中使用 (全局的)
HttpSession			session		只能在同一个会话(session对象)中使用 (私有的,多个请求和响应之间)
HttpServletRequet	request		只能在同一个请求中使用 (转发才有效,重定向无效)
PageContext			page		只能在当前jsp页面使用 (当前页面)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值