J2EE 简答题 1、简述 J2EE 的四层模型。 运行在客户端机器上的客户层组件;运行在 J2EE 服务器上的 Web 层组件;运行在J2EE 服务器上的业务逻辑层组件;运行在 EIS 服务器上的企业信息系统层软件 2、什么是对象持久化? 即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的数据存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML 数据文件中等等。 3、简述一下 ORMAPPING,为什么我们使用它? ORM(Object Relational Mapping)是一种为了解决面向对象与关系型数据库存在的互不匹配的现象的技术。简单说:ORM 是通过使用描述对象和数据库之间映射的元数据,将 Java 程序中的对象自动持久化到关系数据中。本质上就是将数据从一种形式转换到另外一种形式。 原因:用它来架起对象和关系型数据库的桥梁,可解决对象层次的映射、对象关系的映射以及对象的持久化问题。 4、简述一下如何使用 Hibernate 实现对象持久化的过程(可画图或用伪码描述) STEP 1:创建 Configuration 对象。在这一步中主要为了进行配置文件的装载操作,读取所有的配置文件并进行解析、 STEP 2: 创建SessionFactory 对象。通过创建好的Configuration 对象可以创建一个sessionFactory 对象的实例,同时是生成Session 对象实例的工厂,他在整个应用中应该是,唯一的。 STEP 3:创建Session 对象。 Session 对象类似于数据库的连接对象,可以理解为与数据库建立的一个连接,但是他的功能要比JDBC 中的Connection 对象丰富很多。 STEP 4:开始一个事务。在Java 中定义一个事务操作的开始,这是使用Hibernate 进行持久化操作必不可少的步骤 STEP 5:进行持久化操作。在这个步骤中可以读取或者保存Java 对象。 STEP 6:结束事务。在操作完成之后还要进行显式的结束事务的操作。 STEP 7:关闭Session。类似于释放数据库的连接。 5、为什么要实现序列化? 1、序列化以某种存储形式使自定义对象持久化 2、序列化将对象转换为可传输方式从一个地方传递到另一个地方 3、序列化使程序更具维护性 6、比较一下 sessionFactory 中的opensession()和getcurrentsession()方法 1、getCurrentSession 创建的session 会和绑定到当前线程,而openSession不会。 2 、getCurrentSession 创建的线程会在事务回滚或事物提交后自动关闭,而openSession 必须手动关闭 7、比较一下 sessi...