【正确答案】
B
【答案解析】 session译为会话,指的是有始有终的一系列动作/消息,例如在打电话时,从拿起电话拨号到挂断电话这中间的一系列过程可以称为一个session。当程序需要为某个客户端的请求创建一个session时,服务器会首先检查这个客户端的请求里是否已经包含了一个session标识,这个标识被称为session ID。如果已经包含一个session ID,则说明以前已经为此客户端创建过session,此时服务器就按照session ID把这个session检索出来使用(如果检索不到,可能会新建一个);如果客户端请求不包含sessionID,则为此客户端创建一个session,并且生成一个与此session相关联的session ID。
HttpServletResponse接口提供了重写URL的方法,如下所示:
public java.lang.String encodeURL(java.lang.String url);
该方法的实现机制如下:先判断当前的Web组件是否启用session,如果没有启用session,则直接返回参数url,再判断客户端浏览器是否支持cookie,如果支持cookie,则直接返回参数url;如果不支持cookie,就在参数url中加入session ID信息,然后返回修改后的url。因此,这个方法可以用来把session ID加入到URL中。所以,选项B正确。