当前位置:文档之家› Java Web (重修复习资料)

Java Web (重修复习资料)

Java Web (重修复习资料)
Java Web (重修复习资料)

1.JSP 页面经过编译之后,将创建一个( B )。

A.applet B.severlet C.application D.exe文件

2.以下对象中的(D)不是JSP的内置对象。

A.request B.session C.application D.bean

3.下边哪个不是FORM的元素?(D )。

A.Input B.textarea C.select D.table

4.page指令的import属性的作用是:(C )。

A.定义JSP页面响应的MIME类型

B.定义JSP页面使用的脚本语言

C.为JSP页面引入JAVA包中的类

D.定义JSP页面字符的编码

5.关于JavaBean的说法,哪个是正确的?(D )

A.JavaBean的具体类可以不是public的。B.JavaBean可以只提供一个带参数的构造器。

C.jsp:userBean可以向HTML标记一样不关闭。D.JavaBean可以保存状态。6.JavaBean的生命周期中,哪个是用来跟踪用户的会话的?( A )

A.session B.request C.page D.application

7.在JSP中,要定义一个方法,需要用到以下(C )元素。

A.<%= %> B.<% %> C.<%! %> D.<%@ %>

8.下面的说法错误的是:(D )

A.JSP可以处理动态内容和静态内容

B.在JSP最终会编译成字节码后执行

C.在JSP中可以使用脚本控制Html的标签生成

D.JSP中不能使用//注释Java脚本中的代码

9.不能在不同用户之间共享数据的方法是:(A )

A.通过cookie B.利用文件系统C.利用数据库D.通过ServletContext对象10.( B )指令指定自定义标签的描述器所在位置?

A.page B.taglib C.include D.config

11.在J2EE中,${2 + “4”}将输出(B )。

A.2 + 4 B.6 C.24 D.不会输出,因为表达式是错误的

12.Java EE中,JSP EL 表达式:${user.loginName}执行效果等同于(a)。

A.<% = user.getLoginName()%> B.<%user.getLoginName();%>

C.<% = user.loginName%> D.<% user.loginName;%>

13.以下是部署在主机https://www.doczj.com/doc/b417327416.html, 80口上的web应用webdev的部署描述文件web.xml的一部分:

一个客户在浏览器的地址栏输入了如下URL:

https://www.doczj.com/doc/b417327416.html,/webdev/account/deposit?accno=1212&amt=1000

调用(13)G 或(14)E 的方法(15)F 可以获得初始参数interestRate的值。在accountServlet中调用HttpServletRequest的getRequestURI返回(16)H , 调用getQueryString返回__ (17)B ___,调用getContextPath返回(18)A , 调用getServletPath返回(19)C ,调用getPathInfo返回(20) D 。

A. /webdev

B. accno=1212&amt=1000

C. /account

D. /deposit

E. Servletconfig

F. getInitParameter

G. HttpServlet H. /webdev/account/deposit

二、简答题

1. JSP页面是如何被执行的?JSP执行效率比Servlet低吗?

当客户端向一个JSP页面发出请求时,Web Container将JSP转化成Servlet的源代码(只在第一次请求时),然后编译转化后的Servlet并加载到内存中执行,执行的结果Response到客户端。

JSP只在第一次执行的时候会转化为Servlet,以后每次执行Web容器都是直接执行编译后的Servlet,所以JSP和Servlet只是在第一次执行的时候不一样,JSP慢一点,以后的执行都是相同的

2.如何避免JSP页面自动生成session对象?为什么要这么做?

在默认情况下,在对一个JSP页面发出请求时,如果session还没有建立,JSP页面会自动为请求建立一个session 对象,但是session是比较消耗资源的,如果没必要保持和使用session,就不应该创建session, 例如一些只是用来宣传产品的网站,往往没必要使用session来保存信息,可以使用jsp页面指令session=”false”来避免JSP 页面为每个请求都自动创建session.实例代码如下:

<%@ page session=”false”>

3.标签和response.sendRedirect();有什么区别?

jsp:forward>只能在本网站内跳转

response.sendRedirect跳转到任何一个地址的页面

4.简述JSP常用的内置对象。

request,请求对象 response,响应对象

pageContext,页面上下文对象 session,会话对象

application,应用程序对象 out,输出对象

page, 页面对象 config,页面配置对象

exception,异常对象

5.简述解决汉字乱码问题的常用方法。

request.setCharacterEncoding(“GB2312”);

name=new String(name.getBytes(“ISO8859_1”), “gb2312”);

6.简述http协议数据提交方式。

http协议提交时默认为get.

用get方式提交时,地址栏中可见且有长度限制(225);

用post方式提交时,地址栏不可见,无长度限制,使用方式为:method="post"

7.简述MVC设计模式

1、模型(Model)

模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.

2、视图(View)

视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。

3、控制器(controller)

控制器工作就是根据用户的输入,控制用户界面数据显示和更新model 对象状态。

MVC不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性

8. 简述Servlet生命周期

Servlet是一种可以在Servlet容器中运行的组件,那么理所当然就应该有一个从创建到销毁的过程,这个过程我们可以称之为Servlet生命周期。Servlet的生命周期可以分为加载、实例化、初始化、处理客户请求和卸载五个阶段,体现在方法上主要是init ()、service()和destroy()三个方法。生命周期的具体说明如下:

·Servlet容器完成加载Servlet类和实例化一个Servlet对象

·init()方法完成初始化工作,该方法由Servlet容器调用完成

·service()方法处理客户端请求,并返回响应结果

·destroy()方法在Servlet容器卸载Servlet之前被调用,释放一些资源

三、程序设计题

1. 第一个Servlet1文件,读取两个请求参数first和second,将其转换为int值后相加,和存放在请求范围内,然后把请求转发第二个Servlet

2.。第二个Servlet2文件(url为output),向客户输出Servlet1计算的结果。根据注释补充下列代码。

public class Servlet1 extends HttpServlet {

public void service(ServletRequest request,ServletResponse response)

throws ServletException, IOException {

//读取两个请求参数,并将其转换为int值

int first = Integer.valueOf(request.getParameter("first")).intValue();

int second= 1 Integer.valueOf(request.getParameter("second")).intValue(); __ //将两个数字相加

int sum=first+second;

//在request对象中添加sum属性

/*把请求转发给Servlet2 */

ServletContext context = getServletContext();

RequestDispatcher dispatcher =context.getRequestDispatcher("/output");

dispatcher.forward(request, response);

}}

public class Servlet2 extends HttpServlet {

public void service(ServletRequest request,ServletResponse response)

throws ServletException, IOException {

//读取请求范围内Servlet1计算出的和

String sum=(String)request.getAttribute("sum");

//向客户端输出和

PrintWriter out=response.getWriter();

out.print("the sum is "+sum);

}}

2。写一个JSP访问MySQL数据库的userT表,并完成查询和修改操作;JDBC数据源名为test,驱动类名为:"com.mysql.jdbc. Driver",连接数据库的url为:"jdbc:mysql://localhost:3306/test"。user表中id字段为主键数据类型为整型,name字段为文本类型,password为数字类型。数据库数据如下所示:

①完成数据库的连接

create database uset

Use useT

②插入一条记录(”赵六”,001122)到userT表中

Insert into useT(name,password)

values(“赵六”,001122)

③查询所有记录,并将结果集显示到客户端

Select *from useT

相关主题
文本预览
相关文档 最新文档