jsp前3章试题分析

解析:web-inf目录中的文件不能被客户端直接访问。所以正确答案为c


解析:此题目考察的是jsp的是jsp内置对象的作用域。文件、数据库都是持久化保存数据的,所以是正确的,而servletcontext是上下文对象当然也可以。所以正确答案为A


解析:此题目考察的是jsp的是session对解。代码第二句已经设置session过期了所以第三局代码就不正确了。所以正确答案为A


解析:

设置响应的字符编码:
response.setCharacterEncoding( )
或者
response.setContentType( )
答案ab正确


解析:request.getParameter("userId")得到的是第一个表单元素名称为“userId”的值,而要获得同名的多个表单元素的值,则需要通过request.getParameterValues(“userId”)来获取,返回一个字符串数组。所以答案为bc




解析:

index.jsp中form中name为loginName最终值是bdqn到达loginDo.jsp后


再使用转发方式跳转到loginSuccess.jsp,故request的信息没有丢失使用可以得到参数名为loginName值是bdqn



解析:使用page指令的属性contentType:来告诉客户端浏览器以text/html的格式显示jsp文件,并charset编码方式为utf-8 A答案正确


解析:out.println("*");输出的内容在页面中不会换行显示。如果想换行

需要输出<br>标签


解析:首先,session的出现确实是为了解决HTTP无法保持客户状态的特点;因此A选项正确;用户信息也是客户状态的一部分,所以由A可以看出B的说法就不对了;接着,Session里信息是否安全并不取决于存放在哪里,而取决于session实现机制和获取机制,而且session也没有明确的规定其存放空间的大小限制,因此C、D也不对;


解析:首先,JSP从本质上讲是servlet,在后台进行动态编译后最终向客户端输出普通html代码,因此需要运行在servlet容器中,而tomcat是服务器端的servlet容器,所以需要在tomcat等服务器容器下运行,且可以输出动态页面,由此得出A选项正确,B选项错误。另一方面,JSP的全称为JavaServer Pages,字面意思是,一种java语言的服务器端页面技术,需要JDK的支持,因此C、D都不对。


解析:该题考查的是对jsp中内置对象config的认知程度。

Config对象是在服务器启动时就自动创建的对象,而Servlet创建时,通常是通过其获取初始化所需的信息。


解析:在JSP页面中,可以用java小脚本的输出语句来输出字符串变量name的值到页面上,也可以直接使用表达式来输出。


解析:静态包含将页面包含进来以后在一起执行。此时变量i重名


解析:
取出来request对象里的属性值,语法格式为:
request.getAttribute("myAtr");可以进行强制类型转换


解析:此题考查的是如何在JSP页面显示一个变量。注意b选项,最后不能加分号。


解析:
response.sendRedirect("index2.jsp");为重定向,得不到request对象里的值,所以输出内容为null


解析:
此题目考查的是对response对象设置编码的理解,response.setContentType("text/html;charset=UTF-8");是设置了编码和浏览器的使用什么编码打开,而response.setCharacterEncoding("UTF-8");指设置了编码,所以浏览器打开的话可能会出现乱码的问题


解析:所有的JSP都会在客户端发出请求后被容器转译成servlet的源代码(java),然后再将源码(java)编译成servlet的类(class),放入到内存里面。其中,<%!  int a=0;%>定义的是类的成员变量,<% int b=0; %>则定义的是service方法中的局部变量。除第一次请求外,其他两次请求都只调用service方法。




解析:
通过session.setAttribute("login","admin");往session里以key-value键值对的形式存入数据,那取数据的语法为:(String)session.getAttribute("login");通过key值,得到相对应的value






原文地址:https://www.cnblogs.com/WJ-163/p/5638251.html