Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx

上传人:b****1 文档编号:2430667 上传时间:2023-05-03 格式:DOCX 页数:22 大小:33.45KB
下载 相关 举报
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第1页
第1页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第2页
第2页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第3页
第3页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第4页
第4页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第5页
第5页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第6页
第6页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第7页
第7页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第8页
第8页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第9页
第9页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第10页
第10页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第11页
第11页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第12页
第12页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第13页
第13页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第14页
第14页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第15页
第15页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第16页
第16页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第17页
第17页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第18页
第18页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第19页
第19页 / 共22页
Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx

《Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx》由会员分享,可在线阅读,更多相关《Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx(22页珍藏版)》请在冰点文库上搜索。

Java EE架构设计与开发教程方巍机工版课后习题答案完整版.docx

JavaEE架构设计与开发教程方巍机工版课后习题答案完整版

一、选择题

1.D2.D3.A4.C5.A

二、填空题

1.ApplicationContextAware接口,WebApplicationObjectSupport抽象类。

2.XML

3.服务技术

4.JavaEE、Servlet

5.J2EE

6.Spring、Struts、Hibernate

7.SessionFactory、Transaction、Configuration

三、简答题

1.什么是JavaEE?

JavaEE(JavaEnterpriseEdition,在2005年之前称为J2EE),即Java平台企业版,是在JavaSE基础上建立起来的一种标准开发架构,主要用于企业级应用程序的开发。

2.什么是JavaServlet?

Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。

它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。

与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。

3.什么是JavaEE容器?

JavaEE容器用于解决事务处理,状态管理,多线程,资源池和其他复杂底层细节问题,使程序员能够专注于业务逻辑的开发。

是指JavaEE组件与Java平台之间的应用接口,在运行一个JavaEE组件之前,需要把这个组件装配到各自的窗口中,装配包括为每个组件和JavaEE程序指定窗口设置。

4.JavaEE应用有哪些优点?

 

独立于硬件配置和操作系统;坚持面向对象的设计原则;灵活性、可移植性和互操作性;轻松的企业信息系统集成。

5.根据不同的应用领域将Java语言划分为哪三个大平台?

Java分为三个体系,分别为JavaSE(J2SE,Java2PlatformStandardEdition,标准版),JavaEE(J2EE,Java2Platform,EnterpriseEdition,企业版),JavaME(J2ME,Java2PlatformMicroEdition)。

一、选择题

1.C2.A3.C4.D5.D

二、填空题

1.不会,会。

2.Maven

3.静态资源、动态资源

4.注入攻击

5.Gclogviewer、SLF4J、CommonsLogging、Flume

6.Model、View、Control。

三、简答题

1.简述GET/POST方法有何区别?

Form中的get和post方法,在数据传输过程中分别对应了HTTP协议中的GET和POST方法。

二者主要区别如下:

1、Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。

2、Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?

”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。

3、Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。

另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。

Post的所有操作对用户来说都是不可见的。

4、Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。

5、Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。

6、Get是Form的默认方法。

2.简述Web程序开发过程。

在传统Web应用程序的开发过程中,开发一个应用系统一般情况下需要以下几个步骤:

客户端/服务器端软件的开发、服务器端程序的部署、客户端程序的部署、客户端软件的安装,只有完成这几个步骤,用户才可以通过客户端访问服务器提供的服务。

而在基于B/S架构的Web程序开发过程中,只需要开发服务器端的功能代码,然后把服务器端的程序部署到Web服务器软件中即可,在部署结束之后,启动Web服务器,用户就可以通过浏览器访问Web应用程序提供的服务。

在C/S和B/S两种架构之间,并没有严格的界限,两种架构之间没有好坏之分,使用这两种架构都可以实现系统的功能。

开发人员可以根据实际的需要进行选择,例如需要丰富的用户体验,那就选择C/S架构,在目前的网络游戏中,基本都是选择C/S架构;如果更偏重的是功能服务方面的实现,就需要选择B/S架构,这也正是目前绝大部分管理应用系统采用的软件架构方法。

3.什么是JDBC?

简述其连接过程。

 

JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

是Java访问数据库的标准规范JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。

JDBC开发步骤主要分为以下六步:

1.注册驱动

2.获得连接

3.获得语句执行平台

4.执行sql语句

5.处理结果

6.释放资源

一、选择题

1.D2.D3.C4.C5.D6.C7.C8.D9.A

二、填空题

1.,。

2.,

3.、

4.,

5.在浏览器中显示时,按照编辑工具中文档预先排好的形式显示内容。

6.HTML元素的选取编制的,可以对元素执行某些操作。

7.模块化。

8.Flexbox,伸缩容器、伸缩项目

9.可以给盒子设置圆角

10.声明区、定义区、文档主体区

11.DOM解析、SAX解析。

三、简答题

1.简要说明表格与框架在网页布局时的区别

①表格是在同一个网页中将页面划分为不同区域,然后进行网页布局的,在它的单元格中可以放置具体的内容。

②框架是在同一个浏览器窗口中显示多个网页;

③框架可以通过指定超链接的目标框架获得交互式的布局效果。

2.表单是实现动态交互式的可视化界面,在表单开始标记中一般包含哪些属性,其含义分别是什么?

Name表示表单的名称,id表示表单的id标识,action将表单指向一个接收表单信息的程序文件,mothod定义了向服务器处理程序发送表单信息的方法,style定义表单的样式,title定义表单的标题等。

3.Javascript的常用数据类型有哪些?

并举例说明。

 

javascript中有5中数据类型(也称为基本数据类型):

Undefined、Null、Boolean、Number和String,还有一种复杂数据类型object。

object本质是由一组键值对组成的。

typeof操作符:

用于检测给定变量的数据类型,对一个值试用typeof操作符可能返回下列某个字符串:

“undefined”表示值未定义;“boolean”表示值是布尔值;“string”表示值是字符;“number”表示值是数值;“object”表示值是对象或null;“function”表示值是函数;

Undefined类型:

Undefined类型只有一个值即undefined。

对未初始化和未声明的变量执行typeof操作符都会返回undefined,这就说明当我们对一个变量执行typeof操作符时我们不能立即确定这个变量是未初始化还是未声明,因此显示的初始化变量依然是明智的选择,但不应该初始化为undefined。

Null类型:

Null类型是第二个只有一个值的数据类型即null。

null值表示一个空指针对象,因此typeof操作符检测null值时返回“object”。

如果定义的变量将来用于保存对象那么最好将该变量初始化为null而非其他值,这样只要检查null值就可以知道相应的变量是否已经保存了一个对象的引用。

Boolean类型:

Boolean类型有两个字面值:

true和false。

true不一定等于1,false不一定等于0。

需要注意的是true和false是区分大小写的,也就是说True和False(以及其他的混合大小写形式)都不是Boolean值,只是标识符。

在javascript中所有类型的值都有与这两个Boolean值等价的值,要讲一个值转换为布尔值可以调用转型函数Boolean()。

 

String类型:

数值、布尔值、对象、字符串值都有toString()方法,但null和undefined值没有。

在不知道要转换的值是不是null或undefined的情况下,可以使用转型函数String(),这个函数能将任何类型的值转换为字符串。

Number类型:

数字Number是javascript中基本的原始数据类型,同时javascript也支持Number对象,它是一个原始数值的包装对象。

在需要时,javascript会自动在原始形式和对象形式之间转换。

4.简述JSON概念

JSON(JavaScriptObjectNotation,JS对象简谱)是一种轻量级的数据交换格式。

它基于ECMAScript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。

简洁和清晰的层次结构使得JSON成为理想的数据交换语言。

易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

5.简述Ajax开源框架DWR大概开发过程。

第一步:

下载DWR包。

从网站(http:

//directwebremoting.org/dwr/download)下载最新的dwr.jar包,放在你的Application的WEB-INF/lib目录下。

第二步:

配置web.xml文件。

在web.xml文件的标签中添加配置。

第三步:

配置dwr.xml文件。

在Application的WEB-INF下新建dwr.xml文件。

第四步:

在JS中调用。

6.请简述JavaScript脚本语言的特性。

(1)脚本语言。

JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。

(2)基于对象。

JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。

(3)简单。

JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。

(4)动态性。

JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。

在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。

课后习题答案

一、选择题

1.A2.D3.C4.A5.ABCDE

6.A7.C8.B9.D10.B

二、填空题

1.javax.servlet,javax.servlet.http

2.加载阶段,初始化阶段,servlet运行阶段,servlet结束时期

3.jsp+javabean,jsp+javabean+servlet

4.web.xml

5.Httpservlet

三、简答题

1.高效、方便、功能强大、可移植性、节省投资

2.Servlet是用Java语言编写的运行在服务器端的小应用程序

3.JSP指令:

include指令、page指令、taglib指令

JSP动作:

forward动作、include动作、useBean动作

JSP的隐含对象:

输出对象out、请求对象request、响应对象response、会话对象session、Web服务器对象application

四、编程题

1.

program.java

packageservlet;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassprogramextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

out.println("

DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.01Transitional//EN\">");

out.println("");

out.println("AServlet");

out.println("");

out.print("Thisisaservletprogram!

!

");

out.println("");

out.println("");

out.flush();

out.close();

}

}

2.

request.java

packageservlet;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassrequestextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,

HttpServletResponseresponse)

throwsIOException,ServletException

{

response.setContentType("text/html;charset=GB2312");

Stringtitle="计算圆面积和周长";

PrintWriterout=response.getWriter();

out.println("");

out.println("");

out.println("");

out.println(""+title+"");

out.println("");

out.println("");

out.println("

"+title+"

");

Stringradius=request.getParameter("radius");

if(radius!

=null)

{

floatr=(newFloat(radius)).floatValue();

doubles=2*3.14*r;

doublearea=3.14*r*r;

out.println("圆的周长:

"+s+"
");

out.println("圆的面积:

"+area);

}

else

{

out.println("您还未提交!

");

}

out.println("

");

out.println("");

out.println("请你输入圆的半径:

");

out.println("
");

out.println("");

out.println("

");

out.println("");

out.println("");

}

publicvoiddoPost(HttpServletRequestrequest,

HttpServletResponseresponse)

throwsIOException,ServletException

{

doGet(request,response);

}

}

第五章习题答案

一、选择题

1、A2、C3、C4、BCD5、A6、A7、B8、C

二、填空题

1、WebWork,拦截器

2、WebWork,Struts1

3、Class

4、Struts2-core、freemarker、commons-logging、ognl、xwork

5、<%@tagliburi=”/struts-tags”prefix=”s”%>

6、

form>

7、Action,,Validateable

三、简单题

1、MVC的全称为model-view-controller(模式-视图-控制器)。

MVC是一种开发应用程序的模式,这个模式已经具有了很好的框架架构,并且十分容易维护。

使用MVC开发出来的应用程序一般包括以下几个内容:

1)控制器(Controller):

控制器类处理客户端向Web应用程序发出的请求,获取数据,并指定返回给客户端,用来显示处理结果。

2)模型(Model):

模型类代表了应用程序的数据,这些数据通常具有一个数据验证逻辑,用来使得这些数据必须符合业务逻辑。

3)视图(View):

视图类是Web应用程序中用来生成并显示HTML格式的服务器端对客户端请求的响应结果的模板文件。

2、

用户提交自己的请求;

由web.xml拦截,转发到action进行处理;

Struts.xml根据相应的action配置,调用相应的方法来处理,并根据结果转发到不同的页面。

3、

定义自己的拦截器实例,并继承相应的拦截器类;

在struts.xml中配置拦截器。

使用声明拦截器,在内以调用拦截器或者使用拦截器;

用户发送添加评论的请求,有struts.xml捕获,并交由拦截器处理;

拦截器根据定义的方法进行校验,放回相应的执行结果,实现文字屏蔽效果。

4、

客户端校验:

在客户端使用javascript脚本对用户输入的数据进行校验;

服务器校验:

在服务器端对数据进行校验。

5、加载全局范围资源文件,加载包范围资源文件,加载action范围资源文件,加载临时范围内的资源文件。

6、Servlet被服务器实例化后,容器运行其init()方法,请求到达时运行其service()方法,service()方法自动派遣运行与请求对应的doGet、doPost方法等,当服务器决定将实例销毁的时候调用其destroy方法。

四、上机操作题

略。

6.6课后习题

一、选择题

1.一般情况下,关系数据模型与对象模型之间有__________匹配关系。

(多选)

A、表对应类

B、记录对应对象

C、表的字段对应类的属性

D、表之间的参考关系对应类之间的依赖关系

答案:

ABC

2.事务隔离级别是由_______实现的?

A、Java应用程序B、Hibernate

C、数据库系统D、JDBC驱动程序

答案:

C

3、假设对Customer类的orders集合采用延迟检索策略,编译或运行以下程序,会出现的情况是_________。

Sessionsession=sessionFactory.openSession();

tx=session.beginTransaction();

Customercustomer=(Customer)session.get(Customer.class,newLong

(1));

mit();

session.close();

IteratororderIterator=customer.getOrders().iterator();

A、编译出错

B、编译通过,并正常运行

C、编译通过,但运行时抛出异常

答案:

C

4、以下关于SessionFactory的说法_________正确?

(多选)

A、对于每个数据库事务,应该创建一个SessionFactory对象

B、一个SessionFactory对象对应一个数据库存储源。

C、SessionFactory是重量级的对象,不应该随意创建。

如果系统中只有一个数据库存储源,只需要创建一个。

D、SessionFactory的load()方法用于加载持久化对象

答案:

BC

5、元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,casecade属性应该取_________值?

A、noneB、save

C、deleteD、save-update

答案:

D

二、简答题

1、简述对象关系映射ORM概念。

答案:

对象关系映射(ObjectRelationalMapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。

简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将java程序中的对象自动持久化到关系数据库中。

本质上就是将数据从一种形式转换到另外一种形式。

2、Hibernate的5个核心接口有哪些?

答案:

通常开发过程中,所有Hibernate应用中都会访问Hibernate的5个核心接口:

Configuration接口、SessionFatory接口、Session接口、Transaction接口、Query和Criteria接口。

3、简述Hibernate3Web应用的开发步骤。

答案:

Hibernate3Web应用的开发一般经过以下几个步骤:

(1)创建数据库。

(2)将Hibernate所需的JAR包复制到WEB-INF/lib

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2