一J2EE复习资料资料

上传人:痛*** 文档编号:86536509 上传时间:2022-05-07 格式:DOC 页数:11 大小:98KB
返回 下载 相关 举报
一J2EE复习资料资料_第1页
第1页 / 共11页
一J2EE复习资料资料_第2页
第2页 / 共11页
一J2EE复习资料资料_第3页
第3页 / 共11页
点击查看更多>>
资源描述
填空题复习:P1 P4 P18-19 P35 P40 P54 P62 P82-83 P127 P119 P122、单选题复习1. 如果你已知某个实例的持久化标识,你可以使用 Session的_ 方法来获取它(A)A)load() B) loadAll()C) getAllData()D) init()2. 如果你不能确定你要寻找的对象的持久化标识符, 那么你需要使用查询, 使用Session的_方法(A)4.对原生 SQL 查询的控制是通过接口进行的。(AA)可以不写数据库方言B) 数据库方言没有作用, 可以随便写C) 有通用的数据库方言可以使用 D) 数据方言对应于每个数据库,主要用于 产生 SQL语句7. 下面不属于持久化的是( A )A)把对象转换称字符串的形式通过网络传输, 在另一端接收到这个字符串后能 把对象还原出来B)把程序数据从数据库中读出来A) createQuery()ryObject()B) query()C) queryAll()D) que3._使用 Session的会把对象的状态从数据库中移除(A)A) delete()B) remove()C) clear()D) removeAll()A) SQLQueryB) SessionC) ListD) Query5. 使用 Hibernateselect count(*)( B)的QBC 查.询,要使用 SQL 中的类似from tablename 方法求出记录数,必须使用哪一个类。A) RestrictionsB) ProjectionsC) Criteria D) Criteron6. 在 Hibernate 中, 关于数据库的方言,下面哪个说法是正确的( D )填空题复习:C)从 XML 配置文件中读取程序的配置信息D)把程序数据保存为文件8. 下面的程序执行后没有报错,但数据总保存不到数据库,最可能的原因是(E)public static void imain(String args)SessionFactory sf=new Configration().configure().buildSessionFactor y();Session session=sf.openSession();Medal medal=new Medal();medal.setOwner( “totong ”);medal.setType( “Gold medal”);session.save(user);session.close();A)配置文件配置有误B)没有在配置文件中包含对映射文件的声明C)配置文件配置有误D)没有对持久化操作捕捉异常E)没有开启事务9. 已知 wage.getItem().size() 的值是 1。要想使执行 session.update(wage) 时自动执行 session.update(wage.getItems().get(0) ,必须配置(D)A), B), C),D), 10. 关于 spring 说法错误的( D)A)Spring 是一个轻量级 JAVA EE 的框架集合B)Spring 包含一个“依赖注入”模式的实现C)使用 Spring 可以实现声明事务D)Spring 提供了 AOP 方式的日志系统11. 依赖注入说法正确的( A)A)依赖注入的目标是在代码之外管理程序组建间的依赖关系B)依赖注入即是“面向接口”的编程C)依赖注入是面向对象技术的替代品D)依赖注入的使用会增大程序的规模12. 在三层结构中,数据访问层承担的责任是( B)a) 定义实体类b) 数据的增删改查操作c) 业务逻辑的描述d) 页面展示和控制转发13. 下面关于数据持久化概念的描述,错误的是( D)a) 保存在内存中数据的状态是瞬时状态b) 持久状态的数据在关机后数据依然存在c) 数据可以由持久状态转换为瞬时状态d) 将数据转换为持久状态的机制称为数据持久化14. 下面关于 Hibernate 的说法,错误的是( C)a) Hibernate 是一个“对象 - 关系映射”的实现b) Hibernate 是一种数据持久化技术c) Hibernate 是 JDBC 的替代技术d) 使用 Hibernate 可以简化持久化层的编码15. 在 Hibernate 关系映射配置中, inverse 属性的含义是( B)。a) 定义在 节点上,声明要负责关联的维护b) 声明在 节点上,声明要对方负责关联的维护c) 定义在 节点上,声明对方要负责关联的维护d) 声明在 节点上,声明要负责关联的维护16. 在使用了 Hibernate 的系统中,要想在删除某个客户数据的同时删除该客户 对应的所有订单数据,下面方法可行的是( B)。a) 配置客户和订单关联的 cascade 属性为 save-updateb) 配置客户和订单关联的 cascade 属性为 allc) 设置多对一关联的 inverse 属性为 trued) 设置多对一关联的 inverse 属性为 false17. 执行下面的 hql 查询,关于返回值的说法,正确的是( B)。select u.username,u.useridfrom com.x.entity.User uwhere u is not nulla) 语法错误,不能执行b) 返回一个类型为 List 的实例c) 返回一个数组d) 当返回结果只有一条时,返回一个数组18. 下面创建 Criteria 对象的语句中正确的是( D)。a) Criteria c = query.createCriteria();b) Criteria c = query.addCriteria();c) Criteria c = session.createCriteria();d) Criteria c = session.createCriteria(User.class);19. 元素有一个 cascade 属性,如果希望 Hibernate 级联保存集合中的对 象,casecade 属性应该取什么值?( D)a) noneb) savec) deleted) save-update20. 以下程序的打印结果是什么?( C)tx = session.beginTransaction();Customer c1=(Customer)session.load(Customer.class,new Long(1);Customer c2=(Customer)session.load(Customer.class,new Long(1);System.out.println(c1=c2);mit();session.close();a) 运行出错,抛出异常b) 打印 falsec) 打印 trued) 编译出错21. 以下程序代码对 Customer 的 name 属性修改了两次:(B)tx = session.beginTransaction();Customer customer=(Customer)session.load(Customer.class,new Long(1);customer.setName(Jack);customer.setName(Mike);mit();执行以上程序, Hibernate 需要向数据库提交几条 update 语句?a) 0b) 1c) 222. 关于 AOP 错误的(OA)AOP 各散落在系统中的“方面”代码集中实现B)AOP 有助于提高系统可维护性C)AOF 已经表现出将要替代面向对象的趋势D)AOP 是一种设计模式,Spring 提供了一种实现23. 关于 Spring AOP 错误的(A)A)首先要编写方面代码,实现 MethodBeforeAdvice 接口B)AOP 采取拦截方法调用方式实现,可以在调用方法前.后,抛出异常时拦截C)AOP 采取代理的方式实现,常用代理对象的类别为org.springframework.aop.framework.ProxyFactoryBeanD)AOP 可以在对目标(target )不做任何修改的情况下增加程序功能24. 不属于 Action 接口中定义的字符串常量的是( B)。A)SUCCESS B) FAILURE C) ERROR D) INPUT25. 控制器需要在 _ 配置文件中进行配置。( A)A) web.xml B) struts.xml C) struts2.xml D) webwork.xml26. 不属于 Struts2 表单标签库的是。( D)A) B) C) D)27. 在 JSP 页面中可以通过 Struts2 提供的_标签来输出国际化信息。(D)28.在 Hibernate 主配置文件(hibernate.cfg.xml 映射文件的 。( D)中,是通过哪个元素来配置A) 元素B) 元素C) 元素D)vmapp in g元素A) B)A)Hibernate 是以 xml 格式的文件来指定对象与关系数据之间的映射B) 在 hibernate.cfg.xml 文件中可以配置 vmapping 元素的 resource 属性 来指定映射文件。C) 配置映射文件时,需要遵循它对应的 DTD 文件格式D) 以上都正确30. 如何理解 SessionFactory 与 Session 的关系及它们的意义。( D)A) SessionFactory 的主要用来生成 Session 对象B) SessionFactory 是一个重量级的对象,一个应用程序只创建一个 SessionFactory实例,而可创建多个 Session 对象。C) SessionFactory 实例代表一个所要访问的数据库D) 都正确31. 如何理解 SessionFactory 与 Session 的关系及它们的意义。(D)A) SessionFactory 的主要用来生成 Session 对象B) SessionFactory 是一个重量级的对象,一个应用程序只创建一个 SessionFactory实例,而可创建多个 Session 对象。C) SessionFactory 实例代表一个所要访问的数据库D) 都正确三 . 简答题复习1.Hibernate 有哪 5 个核心接口?它们的作用分别是什么?答:Configuration 接口: 配置 Hibernate , 根据其启动 hibernate , 创建 SessionFactory对象;SessionFactory 接口: 初始化 Hibernate , 充当数据存 储源的代理, 创建 session对象, sessionFactory 是线程安全的,意味着它的 同一个实例可以被应用的多个线程共享,是重量级 .二级缓存; Session 接口: 负责保存 .更新. 删除. 加载和查询对象,是线程不安全的,避免多个线程共享同 一个 session ,是轻量级 . 一级缓存;Transaction 接口:管理事务; Query 和 Criteria 接口:执行数据库的查询。2. 什么是 ORM?C) D) 29. 下面关于 Hibernate 的映射文件说法正确的有哪些。( D)答:对象关系映射(Object Relatio nal Map pi ng,简称 ORM 是一种为了解决 面向对象与面向关系数据库存在的互不匹配的现象的技术;简单的说,ORM 是通过使用描述对象和数据库之间映射的元数据, 将 java 程序中的对象自动持久化 到关系数据库中;本质上就是将数据从一种形式转换到另外一种形式。3. 解释数据持久化的好处?答:数据库的读写是一个很耗费时间和资源的操作, 当大量用户同时直接访问数 据库的时候,效率将非常低,如果将数据持久化就不需要每次从数据库读取数据, 直接在内存中对数据进行操作, 这样就节约了数据库资源, 而且加快了系统的反 映速度。4. 简述 struts2 文件上传的方法。Commo ns FileUpload 通过将 HTTP 的数据保存到临时文件夹,然后 Struts 使用fileUpload 拦截器将文件绑定到 Action 的实例中。 从而我们就能够以本地文件 方式的操作浏览器上传的文件。5. 如果不写 action 的后面 mothod,默认的调用的方法是什么,如果写的话,写的时候有什么需要注意的?( P20)如果不写 action 的后面 mothod,会使用默认的处理方法 execute ()来处理请 求,在使用 method 属性的时候,由于在 Action 类中有多个业务逻辑处理方法, 在配置 Action时,就需要使用多个 action 元素。6. 请简述前台提交后是如何到达后台 action 的。通过 from 表单 action 找到 struts 配置文件相应 action 的类 再去找相应 action 类里的方法7. 简述你对 IoC(Inversion of Control)的理解一个类需要用到某个接口的方法,我们需要将类 A 和接口 B 的实现关联起来,最 简单的方法是类 A 中创建一个对于接口 B 的实现 C 的实例,但这种方法显然两者 的依赖(Dependency 太大了。而 loC 的方法是只在类 A 中定义好用于关联接口B 的实现的方法,将类 A,接口 B 和接口 B 的实现 C 放入 loC 的 容器(Container ) 中,通过一定的配置由容器(Container )来实现类 A 与接口 B 的实现 C 的关联。8.Spring 框架的优点都有什么?Spring 是分层的架构,你可以选择使用你需要的层而不用管不需要的部分Spring 是 POJC 编程,POJO 编程使得可持续构建和可测试能力提高依赖注入和 loC 使得 JDBC 操作简单化Spring 是开源的免费的Spring 使得对象管理集中化合简单化9请说出 Hibernate 中持久化对象的生命周期以及各种状态直接的区别,并描 述相互之间是如何转换的。答:Hibernate 中持久化对象的生命周期有临时态.持久态和游离态三种。处于 临时态的对象主键值为空, 并且未与 session 关联,数据未保存到数据库中处于 持久态的对象与 session 关联起来,持久化后对象中的数据被保存到数据库中, 并且主键值按照 .hbm.xml 文件中配置的生成方式生成相应的值处于游离态的对 象脱离了 session的管理,是持久化后的一种状态,主键值按照 .hbm.xml 文件 中配置的生成方式生成相应的值当 new 个新的对象时,该对象处于临时态当该 对象被当作 session 的参数使用的时候,该对象处于持久态事务提交, session 关闭后,该对象处于游离态。四、设计题复习(一)、使用域对象字段驱动方式写出一个登录注册界面程序及相关配置文件,包括设计以下内容:1.实体域对象 User.java 的设计,设计其属性 username 及 password。2.设计 UserLoginAction 类,创建 User 类型的对象 user 以及其 getter/setter 方法,在 execute ()方法中获取 ActionContext 对象访问 Servlet API,对 比从 user 对象中获取的用户名和密码来判断是否登陆成功。3.设计 userLogin.jsp,LoginSuccess.jsp,loginError.jsp。4.在 Struts.xml 文件中设计 userlogin action 来控制项目的运行。5.简述项目运行过程。(二)、设计 Hibernate 项目, 事项下图模型中的客户和订单之间的一对多的关 联关系,具体设计以下文件:1. Customer.java 客户的实体类。2. Order.java 订单的实体类。3. Order.hbm.xml 订单类的配置文件。4. Customer.hbm.xml 客户类的配置文件。5. OneToManyTest.java 测试类用于关联关系的测试。(三)、设计一个自定义的拦截器,实现权限控制,具体如下:1. 创建 User.java,用于处理用户登录的实体类。2. 设计 Log in Actio n.java 处理用户登录的 Action 类。3. 设计 BookAction.java,书籍 CRUD 操作的 Action 类(演示即可,不用设计数 据库处理方面的代码4. 设计拦截器 PrivilegeInterceptor.java实现用户对书籍 CRU 操作的权限控制,具体是:登录用户可以进行书籍的 CRU 嗓作,没有登录用户要求去登录, 不能执行 Book 实体的 CRDU 操作。5. 简述自定义拦截器工作的过程。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!