j2ee框架Struts2HibernateSpring考试复习题库

合集下载

Struts2+Hibernate机试试卷

Struts2+Hibernate机试试卷

内部测试-机试试卷
一、功能要求
采用Struts 2 +Hibernate开发基于WEB的学员管理系统。

具体要求如下:
(1)学员列表页面:要求显示所有学员的编号,姓名,年龄,所在班级4项和相关操作按钮,如图-1所示。

(2)学员详情页面:需显示编号,姓名,年龄,所在班级。

如图-2所示。

(3)删除学员页面:点击删除按钮,删除掉对应的学员。

(4)修改学员页面:需有编号,姓名,年龄,所在班级。

其中编号和所在班级不可更改。

点击“更新”按钮则提交更新,然后返回列表页面。

点击“返回”按钮则直接返回列表页面。

如图-3所示。

图-1 列表页面
图-2 详情页面
图-3 修改页面
(5)点击“增加学生”超链接,进入增加学生页面,其中所属班级是从班级表中查询出来的
注:图上的“查询学生”不需要做!
二、数据库设计
三、具体要求及推荐实现步骤
1、数据库使用Mysql,使用Struts2+Hibernate集成开发
2、时间:100分钟以内
3、将Mysql数据库文件及整个程序放到一个文件夹下,文件夹命名格式为”学号+姓名”,将文件夹打包后提交到学习委员处!。

Hibernate考试试题(题库)

Hibernate考试试题(题库)

Hibernate考试试题(题库)Hibernate考试试题(题库)1、 在Hibernate中,下列说法正确的有( )。

【选三项】A.Hibernate是⼀个开放源代码的对象关系映射框架B.Hibernate对JDBC进⾏了轻量级的对象封装C.Hibernate可以⼤⼤减少操作数据库的⼯作量D.Hibernate提供了数据查询机制,但没有提供恢复机制2、 关于Hibernate,下列说法错误的是( )。

A.Hibernate是⼀个对象-关系映射⼯具B.在MVC模式中,Hibernate属于控制层C.Hibernate在JDBC的⽅式上进⾏封装,以简化JDBC⽅式繁琐的编码⼯作D.在Hibernate中,可以通过xml格式的配置⽂件保存对象-关系的映射信息3、 在Hibernate中,下列关于SessionFactory说法正确的有( )。

【选两项】A.它是线程安全的B.它不是线程安全的C.它是轻量级的D.⼀个SessionFactory实例对应⼀个数据存储源4、 在Hibernate中,下列关于Session说法正确的有( )。

【选三项】A.它是线程安全的B.它不是线程安全的C.它是轻量级的D.Session也被称为持久化管理器,它提供了和持久化相关的操作5、 在Hibernate中,下列关于Transaction说法正确的有( )。

【选三项】A.事务Transaction为应⽤程序指定以原⼦操作单元为范围的对象B.在对数据库进⾏增加、修改和删除操作时⼀定要加上TransactionC.在对数据库进⾏查询操作时⼀定要加上TransactionD.获得Transaction的⽅法:Transaction tr = session.beginTransaction();6、 在Hibernate中,如果数据库是MySql或者SQLServer,则generator属性值不可以使⽤( )。

A.hiloB.nativeC.sequenceD.indentity7、 在Hibernate中,如果数据库是Oracle或者DB2,则generator属性值不可以使⽤( )。

j2ee考试题及答案

j2ee考试题及答案

J2EE考试题及答案
一、概述
本文档收集了一些J2EE考试题与相应的答案。

这些问题涵盖了
J2EE的不同方面,包括Servlet、JSP、EJB、Web服务等。

下面依次列出各个部分的考试题目及答案。

二、Servlet
1. Servlet的生命周期是什么?
答案:
Servlet的生命周期包括以下4个阶段:
1.实例化:当容器接收到对Servlet的请求时,会创建Servlet的实例。

2.初始化:在创建完实例后,容器会调用init方法对Servlet进行初始化。

这个方法只会在Servlet的生命周期中被调用一次。

3.服务处理:一旦初始化完成,Servlet就可以处理来自客户端的请求。

容器会多次调用Servlet的service方法来处理不同的请求。

4.销毁:当容器关闭或发生其他终止条件时,容器会调用destroy 方法销毁Servlet实例。

在销毁之前,容器会先调用Servlet的destroy方法进行一些清理工作。

2. Servlet的线程模型是什么?答案:
Servlet的线程模型是。

Java高级框架应用开发案例教程——Struts 2+Spring+Hibernate课后习题

Java高级框架应用开发案例教程——Struts 2+Spring+Hibernate课后习题

第三章P74 1-81.什么是MVC模式?模型(Model)视图(View)控制器(controller) 2106162.Struts2的工作原理?1)浏览器发送请求2)核心控制器FilterDispatcher根据请求决定调用合适的Action。

3)WebWork的拦截器链自动对请求应用通用功能,例如验证等功能。

4)回调Action的execute方法。

实际上,因为Action只是一个控制器,它会调用业务逻辑组件(Model)来处理用户的请求。

5)输出结果到页面3.Struts2的核心控制器FilterDispaer如何配置?<filter><!--配置struts2核心Filter的名字--><filter-name>struts</ filter-name><!--配置struts2核心Filter的实现类--><filter-class>org.apache. struts2.dispatcher.Filter Dispatcher </filter-class><init-param><!--配置struts2框架默认加载的Action包结构--><param-name>actionpackages</param-name><param-value> org.apache.struts2.showcase.person</param-value></init-param><!--配置struts2框架的配置提供者类--><init-param>< param- name>configProviders< /param- name><param-value>com.ascent.MyConfigurationProvider</param-value></init-param></filter>4.Struts2的Action类如何开发?对于Struts 2应用而言,Action是应用系统的核心,我们也称Action为业务控制器。

J2EE期末考试深刻复知识题(88份)

J2EE期末考试深刻复知识题(88份)

J2EE期末考试试题(笔试)A卷姓名:学号:注意事项:(考试时间90分钟)1)整个试卷中不得做任何形式的书写或标记,是否试卷成绩做废;2)认真准确填写并核对答题卡中的各项内容,因填涂错误造成的任何后果,由考生自负;3)考试完毕,不得将所有考卷.答题卡.草稿纸带离考场,否则试卷成绩作废;4)作弊,雷同答卷,成绩一律为0分答题结束后,必须经监考老师确认考卷,答题卡,草稿纸已经提交后,方可离开考场一、选择题(单项选择,每题2分,共50题)1、下面对Web应用开发中Servlet组件说法错误的是。

A)Servlet是按照接受请求/返回响应的模式工作的B)运行于Servlet容器中,是被动态加载的C)在Struts框架中,Servlet充当模型组件D)在Struts框架中,Servlet充当控制器组件2、在Struts应用中,能在下列哪几种范围内共享数据说法错误的是。

A)只有request与sessionB)requestC)sessionD)application3、下面那个选项不属于MVC三个核心模块。

A)模型B)视图C)数据库连接D)控制器4、下列关于Struts框架的说法中,正确的是。

A)Struts实质是在JSP Model2的基础上实现的一个MVC框架B)在Struts框架中,模型是由实现业务逻辑的JavaBean与EJB组件构成C)在Struts框架中,视图是由一组JSP文件组成D)以上都是5、关于在web.xml文件中配置欢迎文件清单说法错误的是。

A)使用<welcome-file-list>元素配置欢迎清单B)只能配置一个欢迎文件C)可以配置多个欢迎文件D)Web容器调用会依次寻找欢迎文件,直到找到为止6、下列哪个元素可以配置数据源。

A)<formbean>元素B)<data-sources>元素C)<global-forward>元素D)<message-resources>元素7、下列对<action-mappings>元素属性描述正确的有。

struts2理论考试题目

struts2理论考试题目

struts2理论考试题目第一篇:struts2理论考试题目1.MVC的各个部分都有那些技术来实现?如何实现? 答:MVC是Model-View-Controller的简写。

Model 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现),View 是应用的表示面(由JSP页面产生),Controller 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。

这些组件可以进行交互和重用。

2.说说struts1与struts2的区别"""""""都是MVC的WEB框架;struts1的前端控制器是一个Servlet,名称为ActionServlet,struts1的action需要继承Action类,struts2的action可以不继承任何类;Struts1依赖与servlet的API struts1对同一个路径的所有请求共享一个Action实例,struts2对同一个路径的每个请求分别使用一个独立Action实例对象,所有对于struts2的Action不用考虑线程安全问题;在struts1中使用formbean封装请求参数,在struts2中直接使用action的属性来封装请求参数;struts1中的多个业务方法放在一个Action中时(即继承DispatchAction时),要么都校验,要么都不校验;对于struts2,可以指定只对某个方法进行校验,当一个Action继承了ActionSupport且在这个类中只编写了validateXxx()方法,那么则只对xxx()方法进行校验;3.转发和重定向的区别? ""4.Struts2执行流程"""""客户端发出一个指向servlet容器的请求(tomcat)这个请求经过一系列的过滤器(Filter),最后达到StrutsPrepareAndExecuteFilter 过滤器是struts2框架的心脏,询问ActionMapper类来查找请求中需要用到的Action,如果找到需要调用的Action,过滤器会把请求的处理交给ActionProxy。

(完整word版)J2EE考试复习试题_struts2_spring_hibernate(答案整合完毕)

(完整word版)J2EE考试复习试题_struts2_spring_hibernate(答案整合完毕)

一、填空:1.Struts 2框架由__webWork______和___xWork_框架发展而来。

XWork是一个标准的Command模式实现,并且完全从web层脱离出来。

Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Navigation Language),IoC(Inversion of Control倒置控制)容器等。

其目的是:创建一个泛化的、可重用且可扩展的命令模式框架,而不是一个特定在某个领域使用的框架。

其特点是:1、基于一个简单的接口就可以进行灵活且可自定义的配置;2、核心命令模式框架可以通过定制和扩展拦截器来适应任何请求/响应环境;3、整个框架通过类型转换和使用OGNL的action属性验证来构建;4、包含一个基于运行时Attribute和验证拦截器的强大的验证框架。

Xwork和WebWork的关系WebWork2 被构建在XWork之上,以XWork为基础。

通过使用XWork的命令模式框架和拦截器框架,提供了一个支持Web功能、能快速构建Web应用的命令模式框架。

xwork和Webwork的交互图2.Struts 2以__过滤器__为核心,采用__拦截器__的机制来处理用户的请求。

3.构建Struts 2应用的最基础的几个类库是_struts2-core__、_commons-logging_、_xwork-core_、__freamarker___以及_ognl_。

4.Struts 2中的控制器类是一个普通的_POJO_。

5.如果要在JSP页面中使用Struts 2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为___ <taglib><taglib-uri>/struts-tags</taglib-uri><taglib-location>/WEB-INF/lib/struts2-core-2.0.11.1.jar</taglib-location></taglib> ________。

Spring,hibernate,struts的面试笔试题

Spring,hibernate,struts的面试笔试题

Spring,hibernate,struts的面试笔试题一、H ibernate工作原理及为什么要用?原理:1. 读取并解析配置文件2. 读取并解析映射信息,创建SessionFactory3. 打开Sesssion4. 创建事务Transation5. 持久化操作6. 提交事务7. 关闭Session8. 关闭SesstionFactory为什么要用:1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。

2. Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。

他很大程度的简化DAO层的编码工作3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。

4. hibernate的性能非常好,因为它是个轻量级框架。

映射的灵活性很出色。

它支持各种关系数据库,从一对一到多对多的各种复杂关系。

二、H ibernate是如何延迟加载?1. Hibernate2延迟加载实现:a)实体对象b)集合(Collection)2. Hibernate3 提供了属性的延迟加载功能当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。

三、H ibernate中怎样实现类之间的关系?(如:一对多、多对多的关系)类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one、one-to-many、many-to-many、四、说下Hibernate的缓存机制1. 内部缓存存在Hibernate中又叫一级缓存,属于应用事务级缓存2. 二级缓存:a) 应用及缓存b) 分布式缓存条件:数据不会被第三方修改、数据大小在可接受范围、数据更新频率低、同一数据被系统频繁使用、非关键数据c) 第三方缓存的实现五、H ibernate的查询方式Sql、Criteria, Object comptositionHql:1. 属性查询2. 参数查询、命名参数查询3. 关联查询4. 分页查询5. 统计函数六、如何优化Hibernate?1. 使用双向一对多关联,不使用单向一对多2. 灵活使用单向一对多关联3. 不用一对一,用多对一取代4. 配置对象缓存,不使用集合缓存5. 一对多集合使用Bag,多对多集合使用Set6. 继承类使用显式多态7. 表字段要少,表关联不要怕多,有二级缓存撑腰七、S truts工作机制?为什么要使用Struts?工作机制:Struts的工作流程:在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象当ActionServlet接收到一个客户请求时,将执行如下流程.1. 检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径无效信息;2. 如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;3. 根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法;4. 如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象, 就表示表单验证成功;5. ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法; 6. Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给ActionForward对象指向的JSP组件;7. ActionForward对象指向JSP组件生成动态网页,返回给客户;为什么要用:JSP、Servlet、JavaBean技术的出现给我们构建强大的企业应用系统提供了可能。

hibernate考试题及答案

hibernate考试题及答案

hibernate考试题及答案一、单选题(每题2分,共10分)1. Hibernate中的对象状态有以下几种?A. 瞬时态B. 持久态C. 游离态D. 以上都是答案:D2. Hibernate中哪个接口负责事务管理?A. SessionB. TransactionC. SessionFactoryD. Configuration答案:B3. 在Hibernate中,以下哪个注解用于指定类与表的映射关系?A. @EntityB. @TableC. @ColumnD. @Id答案:A4. Hibernate中的延迟加载技术是通过以下哪个接口实现的?A. SessionB. CriteriaC. QueryD. StatelessSession答案:D5. Hibernate中,以下哪个是正确的主键生成策略?A. IDENTITYB. SEQUENCEC. AUTOD. 以上都是答案:D二、多选题(每题3分,共15分)1. Hibernate中支持的关联关系有哪些?A. 一对一B. 多对一C. 多对多D. 一对多答案:A, B, C, D2. 在Hibernate中,哪些是有效的缓存策略?A. 一级缓存B. 二级缓存C. 查询缓存D. 会话缓存答案:A, B, C3. Hibernate中,哪些是有效的查询方式?A. HQL查询B. SQL查询C. Criteria查询D. Query查询答案:A, B, C, D4. Hibernate中,以下哪些是有效的集合映射类型?A. SetB. ListC. BagD. Map答案:A, B, C, D5. 在Hibernate中,以下哪些是有效的事务管理策略?A. 声明式事务B. 编程式事务C. 自动提交事务D. 手动提交事务答案:A, B三、判断题(每题1分,共5分)1. Hibernate是一个半自动ORM框架。

(错误)2. Hibernate支持多数据库方言。

J2EE框架考试试题

J2EE框架考试试题

Java 考试笔试试卷1) 1)下列关于package元素中说法正确的是()。

(选择一项)a) a)name 属性为必需的并且是唯一的,用来指定包得名称<.package name=””>属性为必须的并且是唯一的,用来指定包的名称b) b)extends属于是一个可选属性,定义了包的命名空间c) c)namespace是指要扩展的命名空间d) d)package元素中只能包含一个Action配置2) Hibernate 中实体类对象的状态不包括()。

(选择一项)a) 瞬时状态b) 持久状态c) 查询状态d) 游离状态3) 关于Web服务遵循的标准技术,下面错误的是()。

(选择一项)a) XMLb) SOAPc) WSDLd) HTML4) 在Oracle 数据库中在使用序列时,需要使用到序列的哪些伪列()。

(选择二项)a) nextvalb) nextvaluec) currvald) currvalue5) 以下关于Struts2的配置内容应该在哪个配置文件中编写()。

<filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAdnExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</utl-pattern></filter-mapping>(选择一项)a) struts-defalut.xmlb) struts.xmlc) web.xmld) filter.xml6) 在Hibernate的ORM映射文件中包含:<class name=”er” table=”user”>,这一句中table属性的作用是().(选择一项)a) 指定表名b) 指定类名c) 指定数据库名d) 指定ORM映射文件名7) 以下选项中,关于依赖注入的描述正确的是()。

J2EE开发基础(习题卷20)

J2EE开发基础(习题卷20)

J2EE开发基础(习题卷20)第1部分:单项选择题,共57题,每题只有一个正确答案,多选或少选均不得分。

1.[单选题]以下哪些不属于Spring 4.3版本中Bean的作用域()A)applicationB)requestC)responseD)globalSession答案:C解析:2.[单选题]在Servlet 过滤器的生命周期方法中,每当传递请求或响应时, web 容器会调用( )方法。

A)serviceB)initC)destroyD)doFilter答案:D解析:3.[单选题]下面一对多关联的配置中,存在哪些错误( )。

<set name="orders" inverse="false" cascade="true"><one-to-many class="com.x.entity.Order"column="customer_id" /></set>A)inverse 属性不可以设置为falseB)cascade属性可设置为trueC)class="com.x.entity.Order" 应为type="com.x.entity.Order"D)column 属性不可再<one-to-many> 节点内设置答案:D解析:4.[单选题]在JSP页面中可以通过Struts 2 提供的()标签来输出国际化信息A)<s: texts >B)<s: submit >C)<s: input >D)<s:text>答案:D解析:5.[单选题]<html ><body><jsp:useBean id="address" class="Address Bean" / ><jsp:setPropertyname="address" property="city" / ><jsp:get Property name="address" property="city" / >http://localhost:8080/ address.jsp?city=ChicagoA)MiamiB)ChicagoC)以上都不对D)Los Angeles答案:B解析:6.[单选题]在web.xml文件中,描述了一个Servlet,其中( )指定了Servlet类的访问路径。

J2EE期末考试复习题

J2EE期末考试复习题

一、填空题发布到服务器上的组件除包含自身实现的代码文件外,还要包含一(XML)部署描述文件。

Java EE技术框架可分为三部分:组件技术、(服务技术)、通信技术。

Servlet 最大的用途是通过(动态响应)客户机请求来扩展服务器功能。

表单数据的提交方法有两种,(Post)方法和Get方法。

(Filter)拦截请求和响应,以便查看、提取正在客户机和服务器之间交换数据。

(Listener)实现了Servlet的事件驱动。

JSP页面的脚本元素用来嵌入(java)代码.JSP动作组件是一些(XML)语法格式的标记,被用来控制Web容器的行为。

JSP供提供九种内置对象,(request)对象代表的是来自客户端的请求。

JSP 标准标记库是一个实现(Web )应用程序中常用功能的定制标记库集。

java.sql.Statement对象代表一条发送到数据库执行的SQL语句。

有(三)种Statement 对象。

Servlets可以使用(MIME)类型来向浏览器传送非HTML 文件。

Enterprise Bean 是在(多)台机器上跨几个地址空间运行的组件。

JavaBean 是(一)台机器上同一个地址空间中运行的组件.在标记描述TLD文件中Required 定义为(true)代表为必须。

二、单项选择题1、表单数据的提交方法有两种,()方法使得数据由标准的输入设备读入。

A.GetB. PostC.Read D。

Input2、在表单提交的数据中,如果变量的值有多个,这时应调用( )方法,A。

getParameterValues() B. getParameter()C。

getParameterNames()D。

getAttribute()3、Servlet的事件驱动由()实现.A。

Filter B。

Listener C 。

Response D. Request4、标记名称由两部分组成,()用来区分不同标记库。

A. 后缀B. 前缀C。

struts和spring和hibernate面试必备题

struts和spring和hibernate面试必备题

Struts/spring/hibernate面试题集1 Action是不是线程安全的?如果不是有什么方式可以保证Action的线程安全?如果是,说明原因不是声明局部变量,或者扩展RequestProcessor,让每次都创建一个Action,或者在spring 中用scope="prototype"来管理2.MVC,分析一下struts是如何实现MVC的m:JavaBean 或结合 EJB 组件或者pojo构成c:Action 来实现v:一组 JSP 文件及其标签构成。

3.struts中的几个关键对象的作用(说说几个关键对象的作用)Action:控制器类,ActionForm:表单对象,DynaValidatorForm:动态form,ActonMapping:配置文件中action节点的信息......4.说说AOP和IOC的概念以及在spring中是如何应用的AOP:面向方面编程,ioc:依赖注入;声明式事务和编程式事务积极一些通用部分5.Hibernate有哪几种查询数据的方式hql查询,sql查询,条件查询6.load()和get()的区别hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,load默认支持延迟加载,在用到对象中的其他属性数据时才查询数据库,但是万一数据库中不存在该记录,只能抛异常ObjectNotFoundEcception;所说的load方法抛异常是指在使用该对象的数据时,数据库中不存在该数据时抛异常,而不是在创建这个对象时。

由于session中的缓存对于hibernate来说是个相当廉价的资源,所以在 load时会先查一下session缓存看看该id对应的对象是否存在,不存在则创建代理(load时候之查询一级缓存,不存在则创建代理)。

get() 现在一级缓存找,没有就去二级缓存找,没有就去数据库找,没有就返回null ;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。

J2EE企业级架构试题+答案

J2EE企业级架构试题+答案

一、选择题1、以下哪些框架属于ORMapping框架技术(C)(常见的ORM框架包括Hibernate、iBATIS、TopLink、Castor JDO、Apache OJB等)a)Struts b)Spring c)Hibernate d)MyBATIS2、下面针对Hibernate框架描述错误的是(D)a)Hibernate框架是一个ORMapping框架,可以完成对象与表之间的映射关系b)Hibernate的映射关系只能由XML来完成c)Hibernate框架中用来作为数据库连接操作的核心对象是Sessiond)Hibernate中使用HQL语句可以完成针对数据的添加,修改,删除和查询功能3、以下针对Struts2框架描述错误的是(C)a)Struts2框架中接收参数是在Action类中完成的。

b)编写Struts2的Action类必须继承ActionSupport类c)Struts2的分发操作只能使用!来完成d)Struts2框架存在重大漏洞,在2.3以后的版本中才被修复4、以下框架或技术中与Struts2功能类似的框架是(D)a)Hibernate b)JDBC c)JSP/Servlet d)Spring MVC5、以下针对Spring框架描述正确的是(D)a)Spring框架是一个单独使用的框架,不需要结合其他框架技术来应用b)SpringMVC是前端框架,功能类似Struts框架c)SpringMVC需要编写xml配置文件来对Action类进行配置,自己编写的Action类必须继承ActionSupport类d)Spring框架结合Hibernate开发时,需要保留hibernate.cfg.xml配置文件,并在里面配置数据库连接相关的配置,由Hibernate来管理连接的关闭和事务处理。

6、以下关于IoC理解正确的是(C)a)控制反转b)一定要用接口c)通过<ref>来设置注入d)通过<value>来设置注入7、对Hibernate的支持主要用到了Spring的哪个模块?(C)a)Spring Core b)Spring IoC c)Spring ORMapping d)Spring Web MVC8、以下哪个不属于Hibernate中Session的方法?(D)a)save() b)delete() c)update() d)open()二、简答题1、列出Hibernate中常用的主键生成方式,并说明他们的作用(至少4种)1)assigned:通过程序添加。

Java技能考题——J2EE(中级)题目及答案

Java技能考题——J2EE(中级)题目及答案

Java技能考题——J2EE(中级)题目一、填空1、从J2EE的系统总体架构模式分析应用Struts2 + Spring +Hibernate(简称为S2SH)技术实现的J2EE应用系统,其中Struts2框架主要承担MVC中的_________ 和_________职责、而Spring 和Hibernate框架共同承担MVC中的_________职责,同时应用Spring框架中的两个核心技术_________和_________实现整个系统的松藕合连接。

2、为了能够让Struts2框架中的Action类获得国际化、异常处理等方面的功能支持,需要让它继承于Struts2框架中的_________类;Struts2框架中的拦截器属于MVC模式中的_________;如果在Struts2框架中的struts.xml配置文件中有如下配置项目:<result>/index.jsp</result>,其中的<result>标签的名字是_________。

3、在基于Hibernate框架的系统开发中,主要的XML配置文件有_________和_________;Hibernate框架中负责执行数据库操作的对象是_________;一个客户有多个订单,一个订单只属于一个客户。

其中采用CUSTOMERS表存储客户信息,而ORDERS表存储订单信息,客户CUSTOMERS与订单ORDERS之间存在_________关系。

4、Spring框架中的对象管理技术主要包括_________ 和_________;在对象管理的XML配置文件中可以应用_________引用所定义出的其它目标对象,而应用_________实现为各个组件对象注入具体的参数值。

二、问答1、为了能够在页面中请求访问Servlet程序,必须要在web.xml配置哪些元素?<jsp:forward/>的作用是什么?2、Struts2框架中的Action组件类的execute()方法的返回值是什么数据类型?什么是Struts2框架中的拦截器组件链?3、什么是Struts2框架中的全局拦截器?为什么Struts 2框架中的Action组件类是线程安全的?三、上机操作1、在某个页面中存在下面的超链接:<a href="/webapp/someRequest.do?userID=1&userType=1">产生请求</a>请编程一个获得请求中的userID和userType值并在Tomcat服务器的控制台上显示输出其值的Servlet类程序。

struts2+spring+hibernate期末复习资料

struts2+spring+hibernate期末复习资料

struts2+spring+hibernate期末复习资料
第一章STRUTS2入门
1. MVC:(jsp+servlet+javabean)
V:view 视图层,jsp,用于界面显示
C:controller 控制层,servlet实现,用于处理请求和界面转发等等。

M:model 模型层, dao、pojo实现,用于进行数据处理
【注意】实际项目环境下,会根据需要在MVC三成架构基础上封装更多的层优点:方便项目维护,便于分工协作,例如不同的人开发不同的层。

2. Struts2框架是一个实现MVC框架,核心是xwork,使用拦截器处理请求。

struts2对MVC的实现主要在两个方面:
(1) V:view视图,struts2提供标签库。

(2) C:controller控制器,struts2提供核心控制器和业务逻辑控制器。

3.struts2案例:helloworld
具体步骤:
(1) 创建java web项目,添加struts2的jar包(参考struts2-blank.war)
(2)在web.xml中配置struts2核心控制器(是过滤器)
struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAn…..。

struts2复习题(含答案)5篇

struts2复习题(含答案)5篇

struts2复习题(含答案)5篇第一篇:struts2复习题(含答案)Struts2复习题1.以下属于struts2的控制器组件是:A.ActionB.ActionFormC.ActionServletD.dispatchAction 2.以下属于struts2的体系结构的是:(多选)A.struts2控制器组件B.struts2配置文件C.FilterDispathcerD.Action 3.以下属于struts2配置文件中的配置元素是:(多选)A.B. C. D. 4.关于struts1和struts2对比的说法正确的是:A.struts1要求Action类继承struts1框架中的Action父类,struts2中则不一定需要继承,可以是POJO类B.struts1中的Action不是线程安全的,而struts2中的Action 是线程安全的C.struts1和struts2中都使用ActionForm对象封装用户的请求数据D.struts1使用OGNL表达式语言来支持页面效果,struts2通过ValueStack技术使标签库访问值5.以下关于ValueStack说法正确的是:(多选)A.每个Action对象实例拥有一个ValueStack对象B.每个Action对象实例拥有多个ValueStack对象C.Action中封装了需要传入下一个页面的值,这些值封装在ValueStack对象中D.ValueStack会在请求开始时被创建,请求结束时消亡 6.关于struts2配置文件说法正确的是:A.必须在WEB-INF/classes目录下B.名字必须为struts.xmlC.配置Action时,必须配置包信息D.使用元素配置转发 7.在struts2配置中用()元素来配置常量: A. B. C. D.8.关于struts2包的说法正确的是:A.struts2框架使用包来管理常量B.struts2框架定义包时必须指定name属性C.struts2框架中配置包时,必须继承自struts-default包,否则会报错D.struts2框架中使用包来管理Action9.struts2中获取Servlet API的方法正确的是:(多选)A.使用ActionContext对象以解耦合的方法访问Servlet API B.使用ServletActionContext对象以解耦合的方式访问Servlet API C.使用ActionContext对象以耦合的方式访问Servlet API D.使用ServletActionContext对象以耦合的方式访问Servlet API 10.struts2动态调用的格式为: A.ActionName?methodName.actionB.ActionName!methodName.actionC.ActionName*methodName.action******************************11.如果要实现struts2的数据校验功能A.普通Action类可以实现B.继承自Action接口可以实现C.继承自ActionSupport类可以实现D.继承自ActionValidate类可以实现12.如果要实现自定义处理结果,需继承那个类A.DispathcerB.StrutsResultSupportC.SupportD.Action 13.实现动态返回结果,在配置元素时使用()指定视图资源A.${属性名}B.@{属性名}C.${'属性名'}D.${“属性名”} 14.用于实现国际化的struts2标签是:A.B. C.D. 15.struts2默认的处理结果类型是:A.dispatcherB.redirectC.chainD.forward 16.自定义转换器继承的抽象类是:A.ConverterB.TypeConverterC.StrutsTypeConverterD.converts 17.自定义转换器的注册方式有:A.只有全局注册方式B.只有局部注册方式C.只有全局和局部注册方式D.以上说法都不对18.自定义拦截器类的方式有:(多选)A.实现Interceptor接口B.实现AbstractInterceptor接口C.继承Interceptor类D.继承AbstractInterceptor类19.在struts.xml文件中,使用()元素定义拦截器A. B.C. D. 20.在OGNL中?操作符的作用是: A.取出符合选择逻辑的第一个元素B.取出符合选择逻辑的最后一个元素C.取出符合选择逻辑的所有元素 D.以上说法都不对21.以下属于struts2标签的是:(多选)A.Ajax标签B.数据访问标签C.logic标签D.bean标签 22.以下哪个标签是struts2中的用于循环迭代: A. B.C. D. 23.Struts2主要核心功能是由()实现a)过滤器 b)拦截器 c)类型转换器 d)配置文件24.Struts中的ActionServlet属于MVC模式()a)视图 b)模型 c)控制器 d)业务层25.Struts2框架由()和()框架发展而来的【选择二项】a)b)c)d)Hibernate Struts Spring WebWork 26.Struts2以(B)为核心,采用()的机制处理用户请求a)Struts b)WebWork c)拦截器 d)jar包27.struts2中,不属于Action接口中定义的字符串常量的是()a)SUCCESS b)FAILURE c)ERROR d)INPUT 28.struts2在控制器类中一般需要添加相应属性的()和()【选择二项】a)setter方法 b)as方法 c)getter方法 d)is方法29.struts2控制器需要在()配置文件中进行配置a)web.xml b)struts.xml c)application.porperties d)webwork.xml 30.不属于struts2标签库的是()在JSP页面中可以通过Struts2提供的()标签来输出国际化信息a) b) c) d) 31.资源文件的后缀名为()a)txt b)doc c)property d)properties32.a)b)c)d)33.a)b)c)d)34.a)b)c)d)35.a)struts2自定义类型转换器必须实现的接口是()Convert TypeConverter StrutsTypeConverter StrutsConvert struts2关于注册全局类型转换器的说法正确的是()【选择二项】必须提供xwork-conversion.properties文件注册文件的格式为:复合类型=对应类型转换器注册文件的格式为:对应类型转换器=复合类型以上说法都不正确struts2自定义拦截器中的“return invocation.invoke()”代码表示()【选择二项】不执行目标Action的方法,直接返回执行目标Action的方法在自定义拦截器中,该代码是必需的在自定义拦截器中,该代码是可选的struts2中,以下配置文件上传拦截器只允许上传bmp图片文件的代码,正确的是()image/bmpb)c)d)36.a)b)c)d)37.a)b)c)d)38.39.a)b)c)d)40.a)b)c)d)41.a)b)c)d)42.a)b)c)d)43.a)b)c)d)*.bmpbmpimage/*.bmp 以下关于OGNL的说法正确的是()【选择二项】ActionContext是OGNL的上下文环境 StackContext是OGNL的上下文环境 ValueStack是OGNL的根 ActionContext是OGNL的根假设在Session中存在名为uid属性,通过OGNL访问该属性,正确的代码是()#uid #session.uid uid ${session.uid}假设在某JSP页面中存在””代码,则以下说法正确的是()编译JSP页面时会出现错误编译JSP页面时不会出现错误,但页面不会显示任何内容该代码用于输出位于ValueStack(值栈)栈顶的对象以上说法都不正确struts2默认的处理结果类型是()dispatcher redirect chain 以上说法都不正确下列选项中,关于Struts2配置文件说法正确的是()必须置于WEB-INF/classes目录下必须为Struts.xml 配置Action时必须配置包信息使用元素配置转发下列选项中,关于Struts2的Action说法正确的是()【选择二项】struts2会为每一个请求创建一个对应的Action实例struts2在请求处理过程中,只有一个Action实例struts2通过属性来封装用户请求参数在struts2中定义的属性都用于封装用户请求参数struts2中动态方法调用的格式为()ActionName_methodName.do ActionName!methodName.doActionName_methodName.actionActionName!methodName.action问答题:MVC是什么含义?第三篇:struts2搭建Struts2环境时:1找到开发Struts2应用需要使用到的jar文件.2编写Struts2的配置文件3在web.xml中加入Struts2 MVC框架启动配置struts2-core-2.x.x.jar :Struts 2框架的核心类库xwork-2.x.x.jar :XWork类库,Struts 2在其上构建ognl-2.6.x.jar :对象图导航语言(Object Graph Navigation Language),struts2框架通过其读写对象的属性freemarker-2.3.x.jar :Struts 2的UI标签的模板使用FreeMarker 编写commons-logging-1.1.x.jar :ASF出品的日志包,Struts 2框架使用这个日志包来支持Log4J和JDK 1.4+的日志记录。

软件开发框架(J2EE)Struts 2标签库习题与答案

软件开发框架(J2EE)Struts 2标签库习题与答案

一、多选题1.Struts 框架提供了哪几种标签库()。

A.HTML 标签库B.Bean 标签库C.Logic 标签库D.Template 标签库E.Nested 标签库2.下列哪个Strtus 标签能生成HTML 超链接<a>元素()。

A.<html:html>标签B.<html:base>标签C.<html:img>标签D.<html:link>标签E.<html:rewrite>标签3.以下哪些Struts标签()能生成与HTML 表单相关的元素。

A.<html:link>标签B.<html:text>标签C.<html:radio>标签D.<html:multibox>标签E.<html:select>标签4.下面哪些标签()能创建HTML 表单复选框控件。

A.<html:checkbox>标签B.<html:radio>标签C.<html:multibox>标签D.<html:select>标签E.<html:cancel>标签5.使用下列哪个标签()能在页面输出在验证表单时发生的错误。

A.<html:multibox>标签B.<html:errors>标签C.<html:messages>标签D.<html:error>标签E.<html:cancel>标签6.Struts Bean标签库能提供下列哪些服务()。

A.访问HTTP 请求报头信息B.访问JSP 隐含对象C.访问Web 应用资源D.定义JavaBeanE.输出JavaBean7.下列哪个标签()能访问JSP 隐含对象。

A.<bean:cookie>标签B.<bean:header>标签C.<bean:parameter>标签D.<bean:page>标签E.以上标签都能访问8.下列关于<bean:parameter>标签说法正确的是()。

j2ee框架期末考试题及答案

j2ee框架期末考试题及答案

j2ee框架期末考试题及答案一、单项选择题(每题2分,共20分)1. J2EE的全称是什么?A. Java 2 Platform, Enterprise EditionB. Java 2 Platform, Standard EditionC. Java 2 Platform, Micro EditionD. Java 2 Platform, Mobile Edition答案:A2. 在J2EE中,以下哪个组件是用于表示业务逻辑的?A. ServletB. JSPC. EJBD. JDBC答案:C3. J2EE中,以下哪个是用于构建Web应用的核心技术?A. EJBB. JSPC. JDBCD. RMI答案:B4. 在J2EE中,以下哪个是用于数据库连接的API?A. JNDIB. JDBCC. RMID. JMS答案:B5. J2EE中,以下哪个是用于消息传递的API?A. JNDIC. JMSD. RMI答案:C6. 在J2EE中,以下哪个是用于查找和访问外部资源的API?A. JNDIB. JDBCC. JMSD. RMI答案:A7. J2EE中,以下哪个是用于创建Web服务的规范?A. EJBB. JSPC. JAX-WS答案:C8. 在J2EE中,以下哪个是用于事务管理的API?A. JTAB. JMSC. JDBCD. JNDI答案:A9. J2EE中,以下哪个是用于分布式对象访问的API?A. RMIB. JMSC. JDBCD. JNDI答案:A10. 在J2EE中,以下哪个是用于安全控制的API?A. JAASB. JMSC. JDBCD. JNDI答案:A二、多项选择题(每题3分,共15分)11. J2EE中,以下哪些组件可以作为Web组件?A. ServletB. EJBC. JSPD. JDBC答案:A, C12. 在J2EE中,以下哪些是企业级应用的组成部分?A. Web应用B. 企业信息系统C. 消息服务D. 数据库答案:A, B, C, D13. J2EE中,以下哪些是用于连接数据库的技术?A. JDBCB. JNDIC. EJBD. RMI答案:A, B14. 在J2EE中,以下哪些是用于分布式应用的技术?A. RMIB. JMSC. EJBD. JDBC答案:A, B, C15. J2EE中,以下哪些是用于事务控制的技术?A. JTAB. JMSC. EJBD. JDBC答案:A, C三、填空题(每题2分,共20分)16. J2EE的架构模型包括______层和______层。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.Eclipse是IMB公司向开放源代码社区捐献的Java程序开发平台,是一个成熟的、可扩展的体系结构。

2.Eclipse主要包含3个子项目:平台子项目,Java开发工具子项目,插件开发环境子项目。

3.MVC是Model(模型)业务逻辑层,View(试图)表述层,Controller(控制)控制层。

4.Struts是Apache Jakarta项目于2001年推出的一个开元的Java Web框架,通过一个配置文件,把各个层面的应用组件联系起来,使组件在程序层面上联系较少,耦合度较低,提高了应用程序的可维护性和扩展性。

5. Struts框架有两种发行包:源代码(source)和二进制(binary)。

6. Struts框架大约由300个Java类组成,可分为8个核心包:config,action,actions,tiles,upload,taglib,util,validator。

7. Struts的核心API包括ActionServlet,ActionForm,Action,ActionMapping及ActionForward,它们构成了Struts框架中的控制器组件,视图组件,模型组件8.Hibernate是对象/关系映射(ORM)的解决方案,就是将Java对象与对象关系映射成关系数据库中表格与表格之间的关系。

9. Cache就是缓存,它往往是提高系统性能的在最重要手段,对数据起到一个蓄水池和缓冲的作用。

10. Session实现了第一级Cache,它属于事务级数据缓冲,二级Cache是SessionFactory范围内的缓冲,所有的Session共享同一个二级Cache。

11.设置Hibernate的二级Cache需要分两部进行:首先确认使用什么数据并发策略,然后设置缓存过期时间和设置Cache提供器。

12.Spring是指一个用于构造Java应用程序的轻量级框架。

13.IoC是一种将组件依赖关系的创建和管理置于程序外部的技术。

1.MVC设计模式的J SP Model1和JSPModel2的区别?答:对Model1而言,JSP页面会完成请求的所有处理事项,负责向客户显示输出,整个流程并没有Servlet的参与,客户请求直接送往JSP页面,JSP页调用JavaBean组件或其他业务组件处理请求,并把结果在另一个页面显示出来。

对Model2而言,客户请求不是直接送给JSP页面,而是送给一个Servlet 进行前端处理。

一旦请求处理完毕,Servlet会把请求重定向到适当的JSP页面。

2. Struts 的基本原理?答:首先从struts-config.xml文件中读取信息,根据这些信息,它的控制器ActionServlet知道把视图中的请求转发给哪个业务逻辑组件处理。

视图组件、控制器与业务逻辑组件之间没有代码上的联系,它们之间的关系在struts-config.xml中声明,这样大大提高了Web应用程序的可移植性和可维护性。

3. S truts的核心组件?答:ActionServlet的类扩展了javax.servlet.http.HttpServlet类,其职责是把HTTP消息打包起来并路由传送到框架中合适的处理器。

Struts框架中的org.apache.struts.action.Action类是控制器组件的一个扩展。

struts-config.xml是整个Struts 应用程序的枢纽。

ActionMapping,控制器要通过查看请求信息并使用一组动作映射对象来作出决定。

ActionForward,在Action完成之后,控制器要转交控制权的地方。

ActionForm 对象可用来在用户和业务层之间传输客户的输入数据。

4. Struts框架如何处理每个请求相应的ActionForm对象?答:①检查该项动作的相应映射,查看是否已经有某个ActionForm得到配置②如果对应这个动作配置了某个ActionForm,则使用action元素中的name属性来查找FormBean的配置信息③查看是否已经创建了ActionForm的一个实例④如果在适当的作用域内已经存在一个ActionForm实例,而且这个实例的类型正是这个新请求所需要的类型,则重用这个实例⑤否则,创建所需ActionForm 的一个新实例,并存储在适当的作用域。

⑥调用ActionForm实例的reset()方法⑦反复处理请求参数,如果参数名在ActionForm实例中具有对应的设置方法,就为它填上请求参数的值⑧如果validate属性的值设置为true,则调用ActionForm实例的validate()方法,并返回所出现的任何错误。

5.当ActionServlet接受到一个用户请求时,将执行如下流程?答:①检索和用户请求匹配的ActionMapping实例,如果不存在,就返回用户请求路径无效的错误信息②如果为ActionMapping配置了FormBean,则获取相应范围内的ActionForm实例。

如果ActionForm 实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中。

③根据ActionMapping配置信息决定是否需要验证表单。

如果需要验证,就调用ActionForm的validate()方法。

④如果ActionForm的validate()方法返回null,或者返回一个不包含任何ActionMessage的ActionErrors对象,就表明表单验证成功,继续执行下一步;否则,返回input属性指定的页面,并向用户显示ActionErrors集合中的错误信息。

⑤ActionServlet根据ActionMapping实例包含的映射信息决定将请求转发给那个Action,如果相应的Action实例不存在,则先创建这个实例,然后调用Action的execute()方法。

⑥Action 的execute()方法返回一个ActionForward对象,ActionServlet将请求转发到这个ActionForward对象指向的组件,通常是一个JSP组件或其它Action。

⑦如果ActionForward 对象指向一个JSP组件,则将该JSP组件生成的动态页面返回给用户,如果ActionForward 对想指向的仍然是一个Action,则重新开始执行。

6.表单验证是ActionForm的主要功能之一。

需要4个功能?答:①重写validate()方法②在资源文件ApplicationResources.properties中设置可能的验证错误的标识③要在配置文件struct-config.xml中把<action>元素的validate属性设置为true,并添加<message-resources>元素以指定资源文件的存放路径。

④在相应的输入页面的相应位置加入错误标记<html:errors>,以输出可能的验证错误。

7. Hibernate的特点?答:①目标是成为Java中管理持续性数据问题的一种完整的解决方案②是一种非强迫性的解决方案③是一个开房源代码的对象关系映射框架。

8. Hibernate软件包简介?答:①hibernate3.jar:包含Hibernate3.1的基础框架的核心API 类库,必须使用的jar包②cglib-2.1.2.jar:CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包。

③dom4j-1.6.1.jar包:dom4j是一个Java的XML API,类似于jdom,用来读写XML文件,必须使用的jar包。

④commons-collections.jar:Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大,必须使用的jar包。

⑤commons-logging.jar:Apache Commons包中的一个,包含了日志功能,必须使用的jar包。

⑥ant-1.6.5.jar:Ant编译工具的jar包,用来编译Hibernate源代码。

⑦c3p0-0.9.0.jar:C3P0是一个数据库连接池,Hibernate可以配置为使用C3P0连接池。

9. Hibernate核心组件?答:①Configuration类:用来读取Hibernate配置文件,并生成SessionFactory对象②SessionFactory接口:生成Session实例的工厂。

③Session接口:用来操作PO④Query接口:用来对PO进行查询操作⑤Transaction接口:用来管理Hibernate事务,它的主要方法有commit()和rollback(),可从Session的beginTransaction()方法生成。

⑥Hibernate配置文件主要用来配置数据库连接参数⑦映射文件用来把PO与数据库中的数据表、PO之间的关系与数据表之间的关系、以及PO的属性与表字段一一映射起来,是Hibernate 的核心文件⑧持久化对象可以是不同的JavaBeans,唯一特殊的是它们正与Session相关联。

10.Session-cache的4个重要的性能?答:①保证在一个Session中两次请求同一个对象时,取得的对象是同一个Java实例,有事它可以避免不必要的数据冲突②在对一个对象循环引用时,不至于产生堆栈移出③在数据库事务结束时,对于同一数据库行,不会产生数据冲突,因为对于数据库中的一行,至多有一个对象来表示它④一个事务中可能会有很多个处理单元,在一个处理单元中做的操作都会立即别另外的处理单元得知。

11. Spring的主要功能?答:Spring的核心是个轻量级的容器,它是实现控制反转容器(IoC),并提供面向对象编程(AOP)概念的实现方式,提供对持久层、事务的支持,提供MVC Web 框架的实现,并对一些常用的企业服务API提供一致的模型封装,是一个全方位的应用程序框架。

12.IoC的工作原理?答:IOC是一种新的设计模式,即IOC模式,系统中通过引入实现了IOC模式的IOC容器,即可由IOC容器来管理对象的生命周期、依赖关系等,从而使得应用程序的配置和依赖性规范与实际的应用程序代码分开。

其中一个特点就是通过文本的配件文件进行应用程序组件间相互关系的配置,而不用重新修改并编译具体的Java代码。

13.IoC 的3中依赖注入类型?答:①通过接口注射,这种方式要求我们的类必须实现容器给定的一个接口,然后容器会利用这个接口给我们这个类注射它所依赖的类。

②通过setter方法注射,这种方式也是Spring推荐的方式③通过构造方法注射类,这种方式Spring同样给予了实现,它和通过setter方式一样,都在类里无任何侵入性,但是,不是没有侵入性,只是把侵入性转移了。

相关文档
最新文档