您好,欢迎来到华佗健康网。
搜索
您的当前位置:首页j2ee题库

j2ee题库

来源:华佗健康网
填空:

1.Struts 2框架由__xwork__和_WebWork__框架发展而来。

2.Struts 2以 WebWork 为核心,采用 的机制来处理用户的请求。

3.构建Struts 2应用的最基础的几个类库是 common-logging 、freemarker 、 core 、 xwork 和ognl 4.Struts 2中的控制器类是一个普通的 POJO类 。(ActionSupport类的子类)

5.如果要在JSP页面中使用Struts 2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为<%@ taglib uri=”/struts-tags” prefix=”s” %> 。 6.在Struts 2表单标签库中,表单标签为 。 7.ActionSupport类实现了 Action_接口和 Validatable_等接口。 8.通过控制器类中的 validate 方法来输出校验错误信息。

9.Struts 2以 FilterDispatcher 为核心控制器,它的初始化方法为__init()__。

10.Hibernate配置数据库连接的四种属性名是 url、 driver_class 、 username 、 password 。

11.在Hibernate XML影射文件中描述主键生成机制,其属性描述了主键的生成策略,至少写出三种策略名 assigned 、hilo、seqhilo、sequence、native、uuid.string、foreign、uuid.hex 、 identity 、increment 。 12.基于Hibernate用标注(annotations)描述映射关系,映射实体类中表示主键的属性的标注是 @id ;映射实体类中普通属性的标注是 @Column ;实体属性对应的列用标注 @Entity 。

13.Hibernate的会话接口中声明了持久化的操作,删除一个实体的方法是 delete() ,合并一个实体的方法是 merge() ,获得事务处理接口的方法是 getTransaction () 。

14. Hibernate的会话接口同时又是一个工厂类型:创建一个HQL查询接口的方法是 createQuery ,创建基于公式(标准)接口的方法是 Create criteria 。

15. 对象关系映射(ORM)的基本原则是: 类型(class)映射 table (表),属性(property)映射 field (表的列), 类型的实例或对象(instance | object)映射 database (表的行)。

16. Hibernate应用缺省的XML格式的配置文件名是 hibernate.cfg.xml , 放置在 classpath (classes)下;配置数据库方言的属性名是 dialect 。

17. 在Hibernate中级联操作的属性值至少写出三个 save-update 、 delete 、 all-delete 。(all、none、save-update、delete、all-delete-orphan。)

18 基于Hibernate用标注(annotations)描述映射关系,实体类型用标注 @Entity ;实体对应的表用标注 @table 。

19 Hibernate的会话接口是 session ,它由接口 sessionFactory 创建;Hibernate处理事务的接口是__Transcraction__;封装HQL的接口是 Query 。

20 EJB有三种类型:Entity bean 、 Message-Driver bean 、 session bean 。(会话Bean、实体Bean、消息驱动Bean。)

21 为配置Jboss作为EJB的运行环境,需要设置 JBOSS_HOME 换进变量。 22 Jboss作为EJB的运行环境,EJB应该部署在 JBOSS安装 目录

23 无状态的会话Bean的生命周期只有两个阶段_ dose not exit状态__和_method-ready pool状态__ 24 在EJB调用机制中,存根(stub)是在 客户 端产生的 25 禁用默认的注释是 @exclude default Interceptors 26 注入资源的注释是 @Resource 27 如果在某个特点时间执行某段程序,应使用EJB提供的 定时服务 28 如果实体Bean需要返回客户端,必须实现 Serializer 接口

29 如果不想让实体Bean的某些属性映射到表的字段,用 @column 注释 30 在JPQA查询中,排除相同的对象用 distinct

20 Struts2中编写Action类可以实现 业务 接口,也可以继承 com.opensymphony.xwork2.ActionSupport 类。 21 Struts2中的com.mysoft.action.UserloginAction类要实现输入表单验证,需要在 WEB-INF (文件位

置)建立文件名为 validation.xml 的xml文件。

23.Ajax的XMLHttpRequest对象发送请求相关的方法有两个它们是 post 、 get 。 24.Ognl主要应用于 Struts2 框架。 名词解释:

1.RMI:(Remote Method Invocation)远程方法调用。正如其名字所表示的那样,RMI协议调用远程对象上方法。它使用了序列化方式在客户端和服务器端传递数据。RMI是一种被EJB使用的更底层的协议。 2.JTA:Java Transaction API Java事务API JTA定义了一种标准的API,应用系统由此可以访问各种事务监控。

3.AJAX:全称AsynchronousJavaScript+XML。Ajax(AsynchronousJavaScriptandXML)是结合了Java技术、XML以及JavaScript等编程技术,可以让开发人员构建基于Java技术的Web应用,并打破了使用页面重载的惯例。Ajax是使用客户端脚本与Web服务器交换数据的Web应用开发方法。这样,Web页面不用打断交互流程进行重新加裁,就可以动态地更新。使用Ajax,用户可以创建接近本地桌面应用的直接、高可用、更丰富、更动态的Web用户界面。

4.EJB:Enterprise JavaBeans 企业JavaBean组件。它们提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化了具有可伸缩性和高度复杂的企业级应用的开发。EJB 从技术上而言不是一种\"产品\" EJB 是一种标准描述了构建应用组件要解决的: 可扩展 (Scalable) 分布式 (Distributed) 事务处理 (Transactional) 数据存储 (Persistent) 安全性 (Secure)

5.HQL(Hibernate Query Language):Hibernate官方推荐的标准查询方式,HQL查询在涵盖Criteria查询的所有功能的前提下,提供了类似标准SQL语句的查询方式,同时也提供了更加面向对象的封装。

6.Log4j:Apache的一个开放源代码项目,通过使用Log4j,可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。7.Apache 8.Sun:美国SUN(Stanford University Network)公司,在中国的正式中文名为“太阳计算机系统(中国)有限公司”,是开放式网络计算的领导者,是世界上最大的UNIX系统供应商。

9.JBoss:一个基于J2EE的开放源代码的应用服务器。 因为JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3.0的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。

10.IOC:控制反转(Inversion of Control)。由容器控制程序之间的关系,不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器负责将这些联系在一起。

11.MVC:模型(Model),视图(View),控制Controller)。MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。

12.Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

13.OGNL:Object-Graph Navigation Language。是一种功能强大的表达式语言,通过简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。使用相同的表达式去存取对象的属性。

14.Struts2:在WebWork2基础发展而来,和struts1一样,Struts2也属于MVC框架。Struts2的应用可以不依赖于Servlet API和struts API,属于无侵入式设计。Struts2提供了,类型转换器,支持多种表现层技术,输入校验可以对指定方法进行校验,提供了全局范围、包范围和Action范围的国际化资源文件管理

实现。

15.Spring:Spring的核心是个轻量级容器(container),实现了IoC(Inversion of Control)模式的容器,Spring的目标是实现一个全方位的整合框架,在Spring框架下实现多个子框架的组合,这些子框架之间彼此可以,也可以使用其它的框架方案加以替代。

16.JPA:全称Java Persistence API。JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。

17.对象持久化:已经存储到数据库或保存到本地硬盘中的对象,称之为持久化对象。持久化就是把数据同步保存到数据库或某些存储设备中。在软件的分层体系结构中,持久化层是与数据库打交道的逻辑层。在数据库中对数据的增加、删除、查找和修改操作由持久化层来处理。

18.JNDI:Java Naming and Directory Interface Java命名目录接口。JNDI API被用于执行名字和目录服务。它提供了一致的模型来存取和操作企业级的资源如DNS和LDAP,本地文件系统,或应用服务器中的对象。 19.JMS:Java Message Service Java消息服务。JMS是用于和面向消息的中间件相互通信的应用程序接口(API)。它既支持点对点的域,有支持发布/订阅(publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递,一致性消息和具有持久性的订阅者支持。

20.JAF:JavaBeans Activation Framework。JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流可以被转换成Java对象,或者转换自Java对象。大多数应用都可以不需要直接使用JAF。

21.AOP:Aspect Oriented Programming面向切面编程。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。

22.JQuery:优秀的Javascript框架。轻量级的js库,它兼容CSS3和各种浏览器jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。

23.Spry框架是一个JavaScript 库,Web 设计人员使用它可以构建能够向站点访问者提供更丰富体验的 Web 页。有了Spry,就可以使用 HTML、CSS和极少量的JavaScript将XML数据合并到HTML文档中,创建构件,向各种页面元素中添加不同种类的效果。Spry可以使用XML和JSON两种格式的数据源。 24.DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站.它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样。

25.Dojo:用javascript语言实现的开源DHTML工具包。它是在几个项目捐助基础上建立起来的(nWidgets,Burstlib,f(m))。Dojo的目标是解决开发DHTML应用程序遇到的那些,长期存在、历史问题。historicalproblemswithDHTML跨浏览器问题。

26.POJO:Proterozoic Java Object Java。简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter setter方法的类,有时可以作为value object或dto(Data Transform Object)来使用。

27.JDO::ava Data Object是Java对象持久化的新的规范,也是一个用于存取某种数据仓库中的对象的标准化API。JDO提供了透明的对象存储,因此对开发人员来说,存储数据对象完全不需要额外的代码。 28.iBATIS一词来源于“internet”和“abatis”的组合,是一个由Clinton Begin在2001年发起的开放源代码项目。最初侧重于密码软件的开发,现在是一个基于Java的持久层框架。

29.TopLink:Java 对象关系可持续性体系结构,为在关系数据库表中存储 Java 对象和企业 Java 组件 (EJB) 提供高度灵活和高效的机制。为开发人员提供极佳的性能和选择,可以与任何数据库、任何应用服务器、任何开发工具集和过程以及任何 J2EE 体系结构协同工作。

30.WebWork:致力于组件化和代码重用的J2EE Web框架。WebWork已经被拆分成了Xwork1和WebWork2两个项目。WebWork的三个关键部分:1.Actions。一般一个Action代表一次请求或调用。2.Results。它

是一个结果页面的定义。3.Interceptors。WebWork的,WebWork截获Action请求,在Action执行之前或之后调用方法。

31.JSTL(JSP Standard Tag Library,JSP标准标签库)由四个定制标记库(core、format、xml 和 sql)和一对通用标记库验证器(ScriptFreeTLV 和 PermittedTaglibsTLV)组成。

32.Oracle:世界领先的信息管理软件开发商,因其复杂的关系数据库产品而闻名。Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。

33.MySQL:关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL“结构化查询语言”。SQL是用于访问数据库的最常用标准化语言。MySQL软件采用了GPL(GNU通用公共许可证)。

34.Ant:一个类似make的工具,用来编译/运行/测试java程序。构建、包装和发布过程中几乎每一件事都可以由Ant的任务来处理.

35.JUnit:由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。

36.:可以动态的拦截发送到指定Action的请求,通过机制,可以在Action的执行前插入某些代码,通过这种方式,就可以把多个action中需要重复指定的代码提取出来,就在是定义而提供了更好的代码重用。是AOP的编程思想,允许在Action处理之前和处理之后,加入用户自定义代码;它的作用:进行权限控制,跟踪日志,跟踪系统瓶颈

37.依赖注入:控制反转还有一个名字叫做依赖注入(Dependency Injection)。简称DI。控制反转(IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题。

38.Java EE的四层模型:一个典型的Java EE Web应用系统被开发设计成一个四层的系统结构:客户端层、Web层、业务层和企业信息系统层。

①客户端层(Client-Tier)。包括各种客户端应用界面组件,部署运行在客户端的机器上。

②Web层(Web-Tier)。包括各种JSP编写的动态页面组件与Servlet组件,运行在Java EE的应用服务器上。 ③业务层(Business-Tier)。主要由Java企业Bean构成,被部署运行于Java EE的应用服务器上。 ④企业信息系统层(Enterprise Information System-Tier)。一般指各种存储应用数据的关系数据库系统或文件系统,一般是部署运行在专门的数据库服务器上。

39.国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式。它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素。换言之,应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产。开发这样的程序的过程,就称为国际化。 简答:

1.Spring框架的优点都有什么?

Spring是分层的架构,你可以选择使用你需要的层而不用管不需要的部分;Spring是POJO编程,POJO编程使得可持续构建和可测试能力提高;依赖注入和IoC使得JDBC操作简单化;Spring是开源的免费的; Spring使得对象管理集中化合简单化

2.描述一下Spring中实现DI(Dependency Injection)的几种方式

1)接口注入,在实际中得到了普遍应用,即使在IOC的概念尚未确立时,这样的方法也已经频繁出现在我们的代码中。

2)Type2 IoC: Setter injection对象创建之后,将被依赖对象通过set方法设置进去

3)Type3 IoC: Constructor injection对象创建时,被依赖对象以构造方法参数的方式注入Spring的方式 3.简述你对IoC(Inversion of Control)的理解

一个类需要用到某个接口的方法,我们需要将类A和接口B的实现关联起来,最简单的方法是类A中创建一个对于接口B的实现C的实例,但这种方法显然两者的依赖(Dependency)太大了。而IoC的方法是只在类A中定义好用于关联接口B的实现的方法,将类A,接口B和接口B的实现C放入IoC的 容器

(Container)中,通过一定的配置由容器(Container)来实现类A与接口B的实现C的关联。 4. 简述AOP核心?

1)Aspect(切面) 切面,是对交叉业务逻辑的统称。 2)Joinpoint(连接点) 连接点,指切面可以织入到目标对象的位置(方法,属性等)。 3)Advice(通知) 通知,指切面的具体实现。 4)Pointcut(切入点) 切入点,指通知应用到哪些类的哪些方法或属性之上的规则。 5)Introduction(引入) 引入,指动态地给一个对象增加方法或属性的一种特殊的通知。 6)Weaving(织入) 织入,指将通知插入到目标对象。 7)Target(目标对象) 目标对象,指需要织入切面的对象。 8)Proxy(代理对象) 代理对象,指切面织入目标对象之后形成的对象。

5. EJB包括(SessionBean,EntityBean)说出他们的生命周期?

SessionBean:Stateless Session Bean 的生命周期是由容器决定的,当客户机发出请求要建立一个Bean的实例时,EJB容器不一定要创建一个新的Bean的实例供客户机调用,而是随便找一个现有的实例提供给客户机。当客户机调用了@PreDestroy修饰的方法时候,它就结束了。当客户机第一次调用一个Stateful Session Bean 时,容器必须立即在服务器中创建一个新的Bean实例,并关联到客户机上,以后此客户机调用Stateful Session Bean 的方法时容器会把调用分派到与此客户机相关联的Bean实例。

EntityBean:Entity Beans能存活相对较长的时间,并且状态是持续的。只要数据库中的数据存在,Entity beans就一直存活。而不是按照应用程序或者服务进程来说的。即使EJB容器崩溃了,Entity beans也是存活的。Entity Beans生命周期能够被容器或者 Beans自己管理。

6.如何在Spring的applicationContext.xml里面使用JNDI而不是datasource? 可以使用”org.springframework.jndi.JndiObjectFactoryBean”来实现。示例如下:

java:comp/env/jdbc/appfuse

7.Spring里面如何配置数据库驱动?

使用”org.springframework.jdbc.datasource.DriverManagerDataSource”数据源来配置数据库驱动。示例如下:

org.hsqldb.jdbcDriver

jdbc:hsqldb:db/appfuse

sa

8.Spring里面applicationContext.xml文件能不能改成其他文件名?

ContextLoaderListener是一个ServletContextListener, 它在你的web应用启动的时候初始化。缺省情况下, 它会在WEB-INF/applicationContext.xml文件找Spring的配置。 你可以通过定义一个元素名字为”contextConfigLocation”来改变Spring配置文件的位置。示例如下:

org.springframework.web.context.ContextLoaderListener

contextConfigLocation

/WEB-INF/xyz.xml

9.如何在web应用里面配置spring?

在J2EE的web应用里面配置spring非常简单,最简单的只需要把spring得ContextLoaderListener添加到你的web.xml文件里面就可以了,示例如下:

org.springframework.web.context.ContextLoaderListener

10.Spring里面如何定义hibernate mapping?

添加hibernate mapping 文件到web/WEB-INF目录下的applicationContext.xml文件里面。示例如下:

org/appfuse/model/User.hbm.xml

11.简述Struts 2框架的诞生和发展过程。

Struts最早是作为Apache Jakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高 JavaServer Pages 、Servlet、标签库以及面向对象的技术水准。Struts1支持的表现层技术单一,不能与视图层的模版技术进行整合;与Servlet API的严重耦合,使应用难于测试;代码严重依赖于Struts1 API,属于侵入性框架。Struts 2是Struts的下一代产品,是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 2框架。Struts2虽然是在Struts1的基础上发展起来的,但是实质上是以WebWork为核心的。Struts2为传统的Struts1注入了WebWork的先进的设计理念,统一了Struts1和WebWork两个框架。 12.简述Struts 2框架中控制器的特征,以及如何在配置文件struts.xml文件中配置。

核心控制器FilterDispatcher是Struts 2框架的基础,包含了框架内部的控制流程和处理机制。业务控制器Action和业务逻辑组件是需要用户来自己实现的。用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器FilterDispatcher来使用。在struts.xml配置文件中,每一个Aciton定义都有name和class属性,同时还要指定result元素。result元素指定了逻辑视图名称和实际视图的对应关系。每个result都有一个type属性,没有显式指定type值,即使用了默认的type类型:dispatcher,该结果类型支持JSP所谓视图资源。

13.简述Struts 2框架包含哪些表单标签,分别对应HTML标签中的哪些标签。

14.简述如何实现JSP页面国际化及校验错误信息国际化。 为各种版本提供resource bundles属性文件即可 <bean:submit property=\"submit\">实现按钮的国际化

<bean:img pageKey=\"xxx.xxx.xximage\" altKey=\"xxx.xxx.xxx\">实现图片的国际化 15 说出bean工厂创建bean的三种方式?

1) 通过构造方法直接创建:

2)通过静态工厂方法创建: 3)通过非静态工厂方法创建: 16 叙述StatefulBean和StatelessBean的区别?

Stateful Session Bean 可以记录呼叫者的状态,因此通常来说,一个使用者会有一个相对应的 Stateful

Session Bean 的实体。Stateless Session Bean 虽然也是逻辑组件,但是他却不负责记录使用者状态,也就是说当使用者呼叫 Stateless Session Bean 的时候,EJB Container 并不会找寻特定的 Stateless Session Bean 的实体来执行这个 method。换言之,很可能数个使用者在执行某个 Stateless Session Bean 的 methods 时,会是同一个 Bean 的 Instance 在执行。从内存方面来看, Stateful Session Bean 与 Stateless Session Bean 比较, Stateful Session Bean 会消耗 J2EE Server 较多的内存,然而 Stateful Session Bean 的优势却在于他可以维持使用者的状态。 17 EJB与JAVA BEAN的区别?

Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean。但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地进程内COM组件,它是不能被跨进程访问的。Enterprise Java Bean 相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。 18 举例说明struts2国际化问题的应用?

19 请说出Hibernate使用注解的方式建立实体映射时常用的注解名称、主要属性、功能,并举例说明使用方法。(6种以上)

20 说出spring中创建bean的三种方式? 21 简述ajax运行原理,和主要优点。 22 简述javaEE的十三项核心技术。 23 ajax有什么组成,各组件作用是什么?

由JavaScript、CSS、DOM、XMLHttpRequest组成。 JavaScript:将所有的东西绑定在一起。 CSS:级联样式表

DOM:进行动态显示及交互。

XMLHttpRequest:进行异步数据查询、检索。

24 请说出Hibernate中持久化对象的生命周期以及各种状态直接的区别,并描述相互之间是如何转换的。 Hibernate中持久化对象的生命周期有临时态、持久态和游离态三种。

处于临时态的对象主键值为空,并且未与session关联,数据未保存到数据库中;处于持久态的对象与session关联起来,持久化后对象中的数据被保存到数据库中,并且主键值按照.hbm.xml文件中配置的生成方式生成相应的值;处于游离态的对象脱离了session的管理,是持久化后的一种状态,主键值按照.hbm.xml文件中配置的生成方式生成相应的值。

当new一个新的对象时,该对象处于临时态;当该对象被当作session的参数使用的时候,该对象处于持久态;事务提交,session关闭后,该对象处于游离态。 25.spring和hibernate的事务管理方式有什么不同?

hibernate的事务管理方式仅仅就是托管给JDBC(如果用JTA那么就是JTA),而JDBC的一切行为包括事务是基于一个connection的,那么hibernate委托给JDBC的事务也就是基于一个session。JTA与JDBC事务不同在于可以跨连接。

spring也是调用hibernate中事务管理的API。hibernate的事务管理,一般是编程性的。而委托给spring之后,可以使用声明式的,也就是可以在XML之中配置哪些需要进行事务管理,哪些不需要。 26、Hibernate 有哪5个核心接口?它们的作用分别是什么?

Configuration 接口:配置Hibernate,根据其启动hibernate,创建SessionFactory 对象;

SessionFactory 接口:初始化Hibernate,充当数据存储源的代理,创建session 对象,sessionFactory 是线

程安全的,意味着它的同一个实例可以被应用的多个线程共享,是重量级、二级缓存;

Session 接口:负责保存、更新、删除、加载和查询对象,是线程不安全的,避免多个线程共享同一个session,是轻量级、一级缓存; Transaction 接口:管理事务;

Query 和Criteria 接口:执行数据库的查询。 27、什么是ORM?

对象关系映射(Object—Relational Mapping,简称ORM)是一种为了解决面向对象与面向关系数据库存在的互不匹配的现象的技术;简单的说,ORM 是通过使用描述对象和数据库之间映射的元数据,将java 程序中的对象自动持久化

到关系数据库中;本质上就是将数据从一种形式转换到另外一种形式。 28、解释数据持久化的好处?

数据库的读写是一个很耗费时间和资源的操作,当大量用户同时直接访问数据库的时候,效率将非常低,如果将数据持久化就不需要每次从数据库读取数据,直接在内存中对数据进行操作,这样就节约了数据库资源,而且加快了系统的反映速度。 29.简述ajax技术主要内容,主流框架?

30.简述struts2 ui标签,功能及用法?(6种以上) 31.简述spring主要功能,并简单举例用法。(6种以上) 32.简述Hibernate核心接口及其功能和用法。(5种以上)

33 简述Struts2+Spring+Hibernate整合开发web项目的步骤。(包括主要的jar包、主要配置文件名称、和相关参数配置,项目整体文件和文件夹结构,源代码包的划分等)

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务