JavaWeb判断题详解

JavaBean

  1. jsp:getProperty中的name及property区分大小写。(t)
    用于获取被加载到当前页面中的JavaBean的某个属性值:
    <jsp:getProperty name=”beanInstanceName” property=”propertyName”>
    name:JavaBean对象的名字,property:获取哪个属性的值
  2. 在JavaBean中有很多方法,其中包含了主方法。(f)
    所有属性的Get/Set方法
  3. JavaBean中的属性既可以是public型的,也可以是private型的。(f)
    都是private
  4. JavaBean中的方法既可以是public型的,也可以是private型的。(f)
    都是public
  5. JavaBean实质上是一个Java类,该类可以被JSP程序进行直接调用。(f)
    需要使用<jsp:useBean id=” beanInstanceName” class=”package.class”
    scope=”page”>标签装载一个在JSP页面中使用的JavaBean
  6. 编写JavaBean可以先不必加入到JSP程序中调用,而直接用main方法来进行调试,调试好后就可以在JSP中使用了。(t)

JSP内置对象部分

  1. Application的生命周期比session的生命周期长。(t)
    Application:保存整个web应用运行期间的全局数据和信息。只要web应
    用正常运行,application对象就可以访问
    Session:当用户打开网页,服务器就生成一个session对象。除非用户关闭
    浏览器,否则该对象一直伴随用户(例如在用户登录过程中,可以用session记录用户的登录状态:session.setAttribute(“status”, “Login”);)
    两者区别:只要web应用还在正常运行,application对象就可以访问,而
    session对象在用户离开系统就被注销(关闭浏览器再打开新窗口,application对象还在)

  2. Request的生命周期比Session的生命周期长。(f)
    request:用户的需求被抽象成request对象,该对象包括:用户所有的请求
    数据(例如通过表单提交的表单数据、通过URL等方式传递的数等)、服务器的信息(端口、真实路径、访问协议等)…
    生命范围:从http请求发起,到服务器处理结束返回响应的整个过程(响应完成,request消失)

  3. 当request对象获取客户端提交的汉字字符时,会出现乱码问题,解决方式是改变编码格式为UTF-8。(f)
    乱码问题:本质就是把中文字符转换成合适的编码方式,或者是在显示中文
    的环境中声明采用GB2312的编码(UTF-8、GBK、GB2312都支持中文显示)
    1.JSP页面:设置对整个页面起作用的page指令,让其支持中文显示的编码方式:<%@ page language=”java” import=”java.util.*” contentType=”text/html; charset=gb2312”%>
    2.URL传递参数:咱可以用类似

    http://localhost:8080/chapt4/ URLCharset.jsp? param='中文’

    这种形式传递参数(通过URL链接)。仅仅转换这个字符串的编码或设置JSP页面显示编码都不能解决问题。需要修改Tomcat的
    conf目录下的server.xml配置文件:<Connector port=”8080” URIEncoding =”gbk2312” …>
    3.表单提交:在Tomcat中,对于以POST方法提交的表单采用的默认编码为
    ISO-8859-1(不支持中文字符)。使用过滤器filter解决,对所有的请求进行编码格式的处理:在web.xml中添加如下内容:

    <filter>
    	<filter-name>SetCharacterEncoding</filter-name>
    	<filter-class> SetCharacterEncodingFilter</filter-class>
    	<init-param>
    		<param-name>encoding</param-name>
    		<param-value>gb2312</param-value>
    	</init-param>
    	<init-param>
    		<param-name>enable</param-name>
    		<param-value>true</param-value>
    	</init-param>
    </filter>
    <filter-mapping>
    	<filter-name> SetCharacterEncoding</filter-name>
    	<url-pattern>/*</url-pattern>
    </filter-mapping>
    

    过滤器的基本原理:对于每一个用户请求,都必须经过过滤器的处理才能发到目的页面。在JSP中,以POST方式提交的表单在本质上就是封装在request对象中,而request对象是必须要经过过滤器处理的
    4.数据库操作:
    向数据库中正常写入中文数据:

    jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs;
    useUnicode=true; characterEncoding=gb2312

  4. 使用Request对象的getRemoteAddr()方法可以获取客户端的IP地址。(t)

  5. 通过Post方法提交数据,会将所有数据显示在URL地址的后面。(f)
    Get方法:把参数数据添加到表单的action属性所指向的URL中,例如:

    http://www.xxx.com?sessonid=1234&name=hongten&age=20

    因此安全性较差
    Post方法:将表单内各个字段与其内容放置在Html Header内,对用户来说是透明的,较安全

  6. Cookie文件是存放在服务器端的。(f)
    cookie对象将数据写到客户端浏览器的cookie文件中,该文件保存再客户端
    内存中

  7. 在设置cookie的最大存在时间时,可以设置为负值和零。(t)

    cookie.setMaxAge(0) ; //不记录cookie
    cookie.setMaxAge(-1); //会话级cookie,关闭浏览器失效

  8. JSP内置对象是指不用声明就可以在JSP页面的脚本部分使用的对象。(t)

  9. Out对象的作用范围是Application。(f)
    功能:想JSP页面输出数据信息

  10. Out对象的clearBuffer()方法用来清除缓存区里的数据,但并不把数据写到客户端。(f)

  11. Out对象的clear()方法用来清除缓存区里的数据,并把数据写到客户端。(f)
    1.clear()方法:清除缓冲区数据(仅仅是清楚),不向用户输出
    2.clearBuffer()方法:清除缓冲区数据,同时向用户输出

  12. 空字符串“”和NULL的意义是相同的,都表示这个对象不存在。(f)

  13. 当request对象获取客户提交的汉字字符时,会出现乱码问题,解决乱码问题的关键是将编码方式改变为UTF8.(f)
    同题目3

  14. Session对象的存在期限是指浏览器未关闭之前及默认时间内。(t)

  15. Cookie对象的存在期限是指浏览器未关闭之前及设定时间内。(t)

  16. Session对象通常存在于客户端。(f)
    数据保存到服务器端内存:session对象、application对象
    数据保存到客户端内存:cookie对象

  17. 在某些情况下,当响应客户时,需要将客户重新引导指另外一个页面,这时可以使用response对象的sendRedirect(URL)方法实现客户的重定向。(t)

  18. Response.setHeader(“refresh”,“2”)可以实现两秒钟刷新一次的效果。(t)

  19. 和Session对象一样,当不同的客户在访问服务器时,服务器会创建不同的Application对象。(f)
    Application对象被所有用户共享

  20. 与Session不同到的是,所有客户的application对象都是同一个,即所有客户共享这个内置的application对象。(t)

  21. 在浏览器上存放cookie的数量是没有限制的。(f)
    有限制的

  22. 在服务器上存放cookie的数量是有限制的。(f)
    存放在客户端上

  23. 从执行的速度上来分析,Session对象的处理速度通常比Cookie对象的处理速度快。(f)

  24. 可以通过调用SetMaxAge()方法来设置Cookie将要存在的最大时间。(T)

  25. 如果SetMaxAge()方法中的值为负值表明要立即删除该Cookie对象。(f)
    不是立即删除,表明当关闭浏览器时,cookie失效

  26. 如果SetMaxAge()方法中的值为0表明当浏览器关闭时,该Cookie对象将被删除。(f)
    cookie对象立即失效,不需要关闭浏览器

Jsp数据库部分

  1. JDBC不支持三层模型。(f)

  2. 使用JSP不能实现数据库的分页浏览。(f)

  3. 在进行数据库连接时,作用于用户和驱动程序之间的类是DriverManager类(t)

  4. Connection接口代表与数据库的连接,并拥有创建SQL语句的方法。(t)

  5. 在执行一个存储过程之前,必须先对其中的Out参数进行注册。(t)
    存储过程:存在数据库服务器中的函数,接受输入并返回输出。该函数会在
    数据库服务器上进行编译,供用户多次使用,可大大提高数据操作的效率
    利用CallableStatement对象可以调用存储过程,该对象可处理两种形式的存储过程(带/不带结果参数)。如果存储过程返回的是输出参数,则在执行CallableStatement对象前必须注册每个输出参数的JDBC类型。当存储过程从执行中返回后,它会用之前设置的JDBC类型设置OUT参数的值。

    CallableStatement cstmt = conn.prepareCall(“{ call insertNewStudent(?, ?) }”);
    cstmt.registerOutParameter(1, java.sql.Types.INTEGER); //注册out参数
    cstmt.execute(); //执行存储过程
    Int number=cstmt.getInt(1); //从第一个参数中取出Integer对象

  6. DriverManger类是JDBC的管理者,主要负责加载、注册JDBC驱动程序。(t)

  7. DriverManager类的getConnection()方法用于建立指定数据库的连接,该方法中有三个参数,第一个参数就是数据库的用户名,第二个参数是密码,第三个参数指定数据库的URL。(f)
    第一个参数是url:

    ”jdbc:mysql://localhost:3306/simple”
    (数据库的连接字符串=连接协议+数据库地址+数据库名称)

    第二个参数是username:root
    第三个参数是password:root

  8. 可以通过检查机器中的1433端口是否已经打开来判断SQL Server 2000 是否安装了SP3 或 SP4.(t)

  9. JSP连接数据库需要使用的端口是80端口。(f)

  10. 执行Statement接口的executeUpdate()方法会返回一个ResultSet对象。(f)
    返回整数值
    Statement接口提供3种执行语句的方法:
    1.executeQuery(String sql):产生单个结果集的语句(执行select查询语句)
    2.executeUpdate(String sql):
    返回值是一个整数(指示受影响的行数):执行insert、update或delete语句;
    返回值为0:执行DDL语句,例如Create table或Drop table
    3.execute(String sql):执行返回多个结果集、多个更新计数或二者组合

  11. Statement接口的executeQuery()方法的返回类型是Boolean型。(f)
    返回单个结果集ResultSet对象

  12. Statement接口的execute()方法的返回类型是Int型。(f)
    返回多个结果集ResultSet对象

  13. 通常执行Statement接口的executeQuery()方法会得到一个ResultSet,且指针指向记录的第1行。(f)

  14. Statement接口是PreparedStatement接口的子接口,它直接继承并重载PreparedStatement的方法。(f)
    PreparedStatement接口继承并扩展了Statement接口,用来执行动态SQL
    语句。该SQL语句可具有一个或多个参数,每个参数保留一个问号(?,作为占位符)

  15. 一个PreparedStatement的对象中包含的SQL语句是预编译的,允许包含多个输入参数,输入参数用?代替。(t)
    JSP语法部分
    JSP指令标识:设定当前页面范围内有效的信息,被服务器解释执行,不产
    生输出到网页的内容
    <%@ 指令名 attribute1=”attributeValue1” attribute2=”attributeValue2”%>

  16. 会在客户端(浏览器)显示的注释是隐藏注释。(f)

  17. 会在客户端(浏览器)显示的注释是输出注释。(t)

  18. <%@ page%>指令不一定放在页面的头部。(t)

  19. <%@ page import=”java.util.,java.lang.”buffer=”5kb”autoFlush=”false”%>,这句代码是正确。(t)

  20. <%@ Include%>指令只能包括后缀名为.jsp的文件。(f)
    include指令:仅仅是静态包含一个文件(和当前页面组成一个整体文件)

    <%@ include file=”header.txt”%>

    include动作指令:可以动态包含一个文件(静态文件或动态脚本)

    <jsp:include flust=”true” page=”header.txt” page=”header.txt”>
    <jsp:param name=”param” value=”test”/ >
    </jsp:include>

  21. 使用jsp:forward指令可以传递参数。(t)
    可以用来控制网页的重定向(从当前页面跳转到另一个页面)

    <jsp:forward page=”www.sohu.com”></jsp:forward>

  22. <%@ Include%>指令只能包括后缀名为.jsp的文件。(f)

  23. 格式如”<!—注释内容–>”的注释是隐藏注释。(f)
    输出注释:”<!—注释内容–>”
    隐藏注释:”<%–注释内容–%>”

  24. 格式如”<%–注释内容–%>”的注释是输出注释。(f)

  25. JSP编译器是不会对”<%–“和”–%>”之间的语句进行编译的,它不会显示在客户的浏览器中,也不会在源代码中被看到。(t)

  26. 在JSP声明中只能一次一个的声明要用到的变量和方法。(f)

    <%! 声明变量或方法 %>
    <%! int number=0;
    int count() {
    number++;
    return number;
    }
    %>

  27. 在JSP中使用表达式必须以“;”作为表达式的结束符。(f)
    <%= 表达式 %>:用于向页面输出信息
    表达式可以是任何合法的Java语言表达式(运算结果转换为字符串),其
    可以插入到页面文本/插入HTML标记
    <%= now%>:当前时间

  28. JSP中的表达式必须有返回值,且返回值被转换为字符串。(t)

  29. Page指令的language属性用于指定在脚本元素中的脚本语言,默认值是Java,在JSP2.0规范中,该属性的值也可以是JavaScript和vbscript等语言。(f)
    当前只支持Java

  30. 即使没有使用Page指令设置charset为GB2312,JSP程序终中的中文显示也不会出现乱码。(f)

  31. Page指令的所有属性都可以重复设置。(f)

  32. Page指令中只有import属性可以重复设置。(t)

  33. 无论将Page指令放在JSP文件的哪个位置,它的作用范围都是整个JSP页面。(t)
    因此<%@ page %>指令不一定放在页面头部

  34. 在使用include指令时,在被包含文件中可以使用、、、<等标签时,不会引发错误。(f)
    Include指令是静态包含,include动作指令可以包含,详见题5

  35. 在使用include指令时,包含文件中的变量和方法可以与包含文件中的变量和方法同名,不会引发错误。(f)

  36. 在使用自定义标签之前必须使用<%@ taglib>指令引用标签库,但是,在一个页面中只能使用一次。(f)

  37. jsp:include动作元素允许在页面被请求的时候包含一些其他的资源,如一个静态的HTML文件或动态的JSP文件。(t)

  38. jsp:forward操作允许将请求转发到其他的HTML文件、JSP文件或者是一个程序段,通常请求被转发后,会停止当前JSP文件的执行。(t)
    不确定

Servlet技术部分

  1. Servlet包含类包javax.servlet与javax.servlet.http。(f)
    Java Servlet API包含两个基本的包:
    javax.servlet:提供控制Servlet生命周期所需的类和接口
    javax.servlet.http:提供处理与http相关操作的类和接口
    一般通过继承javax.servlet.http.HttpServlet或javax.servlet.GenericServlet间
    接实现Servlet接口
  2. 在Servlet中系统自动解决中文显示问题。(f)
  3. 如果用JDK直接编译Servlet将引起程序错误。(t)
    Servlet本质上Java类,但是需要在特定的容器中才能运行(服务器端)
  4. Session不可以与Servlet进行通信。(f)
  5. Servlet和applet一样都是运行在浏览器上的程序。(f)
  6. Servlet进程只有在Web Server卸载时被卸载。(t)
  7. 在编译Servlet之前,无须像JDK一样设置Classpath。(f)
    编写一个servlet的步骤:
    1)编写servlet的功能代码(实现功能的代码类)
    2)将servlet放在服务器端编译,生成对应servlet类文件,将编译成功的
    Servlet功能代码类文件拷贝到当前项目的WEB-INF/classes目录下
    3)在web.xml中添加对servlet的配置信息:

servlet>

<servlet-name>HelloWorld</servlet-name>
<servlet-class>servlets.HelloWorld</servlet-class>

/servlet>
servlet-mapping>

<servlet-name> HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>

/servlet-mapping>

  1. 编写Servlet程序以后,不需要进行任何配置就可以正常访问。(f)
  2. doGet和doPost方法通常会抛出两个异常:ClassNotFoundException和ServletException。(f)
    抛出IOException和ServletException
  3. Javax.servlet.GenericServlet类为java.lang.Object类的子类,并且实现了javax.servlet.Servlet接口、javax.servlet.ServletConfig接口和javax.io.Serializable接口。(t)

基础部分

  1. JSP(Java Server Pages)是由Sun公司在Java语言开发出来的一种静态网页制作技术。(f)
  2. Charset=GB2312指明了页面中html静态内容的编码方式。(t)
  3. Charset=GB2312指明了页面中html动态内容的编码方式。(f)
  4. 学习JSP并不需要学习JavaBean。(f)
  5. JSP的执行肯定要经过Servlet才能执行。(f)
  6. JSP就是ASP,它们没什么区别。(f)
  7. JSP不带Session的管理。(f)
  8. 不能应用JSP制作聊天室。(f)
  9. JSP不带Application处理。(f)
  10. 在JSP开头并不需要<% page language=”java”%>这句话。(t)
    <%@ page language=”java” %>
  11. Myname与myname是同样的两个变量。(f)
  12. 静态网页的每个网页都有一个固定的URL,且网页URL以.html、.htm、.shtml等常见形式为扩展名,而不含“?”。(t)
  13. 静态网页的每个网页都有一个固定的URL,且网页URL以.html、.htm、.shtml等常见形式为扩展名,但可以包含“?”。(f)
  14. 通常,静态网页不需要数据库的支持,而动态网页却需要数据库的支持。(t)
  15. 通常,静态网页需要数据库的支持,而动态网页却不需要数据库的支持。(f)
  16. 动态网页是指在接到用户访问要求后动态生成的页面,页面内容会随着访问时间和访问者发生变化。(t)
  17. 静态网页实际上并不是独立存在于服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页。(f)
    静态页面:不能自主发布管理更新
    动态页面:可以通过网站后台管理下系统对内容进行更新管理
  18. CGI的中文全称叫通用网关界面。(t)
  19. 一台普通的计算机不需要做任何配置就可以成为Web服务器。(f)
  20. 一台普通的计算机要想成为Web服务器,必须通过相应的程序(如IIS、PWS和Apache等)来实现。(t)
  21. JSP拥有Java语言“一次编写,各处运行”的特点,几乎可以运行在所有平台上。(t)
  22. 运用JSP技术进行开发可以将内容的生成和显示相分离。(t)
  23. 在维护方面,B/S结构的维护比C/S困难,维护开支更大。(f)
  24. 在安全性方面,B/S结构对安全的控制能力比C/S结构强。(f)
  25. 在重用性方面,B/S程序侧重整体性考虑,构件的重用性不是很好,而C/S一般采用多重结构,要求构件相对独立的功能,能够相对较好地实现重用。(f)
  26. JSP页面在第一次打开时速度较慢,因为要将JSP文件转换成Servlet文件。(t)
  27. 在服务器端运行环境的搭建中,Tomcat既可以作为JSP引擎,也可以作为Web服务器。(t)
  28. 在JDK环境变量的配置中,path的功能是说明java实用程序所在的位置。而CLASSPATH的功能是说明类和包文件的搜索路径。(f)
    不明白
  29. .html文件可以由浏览器直接解释执行,而.jsp文件不能由浏览器直接解释执行,必须由JSP引擎解释执行。(t)

猜你喜欢

转载自blog.csdn.net/weixin_43996795/article/details/85046909