Java 工程师面试常考试题及答案 Java 工程师面试常考试题及答案 1.Hibernate 工作原理及为什么要用? 原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开 Session 4.创建事务 Transation 5.长期化操作 6.提交事务 7.关闭 Session 8.关闭 SesstionFactory 为什么要用: 1. 对 JDBC 访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。 2. Hibernate 是一个基于 JDBC的主流长期化框架,是一个优秀的 ORM 实现。他很大程度的简化 DAO层的编码工作 3. hibernate 使用 Java 反射机制,而不是字节码增加程序来实现透亮性。 4. hibernate 的性能特别好,由于它是个轻量级框架。映射的灵敏性很杰出。它支持各种关系数据库,从一对一到多对多的各种冗杂关系。 2.Hibernate 是如何延迟加载? 1. Hibernate2 延迟加载实现:a)实体对象 b)集合(Collection) 2. Hibernate3 供应了属性的延迟加载功能 当 Hibernate 在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节约了服务器的内存开销,从而提高了服务器的性能。 3.Hibernate 中怎样实现类之间的关系?(如:一对多、多对多的关系) 类与类之间的关系主要表达在表与表之间的关系进行操作,它们都是对对象进行操作,我们程序中把全部的表与类都映射在一起,它们通过配置文件中的 many-to-one、one-to-many、many-to-many 4.Struts1 流程: 1、客户端扫瞄器发出 HTTP 恳求。2、依据 web.xml 配置,该恳求被 ActionServlet 接收。3、依据 struts-config.xml 配置, ActionServlet 先将恳求中的参数填充到 ActionForm 中,然后ActionServlet 再将恳求发送到 Action 进行处理。4、是否验证,需要验证则调用 ActionForm 的 validate 方法,验证失败则跳转到input,成功则连续。5、Action 从 ActionForm 获得数据,调用javabean 中的业务方法处理数据。6、Action 返回 ActionForward 对象,跳转到相应 JSP 页面或 Action。7、返回 HTTP 响应到客户端扫瞄器。 MVC 设计模式:modal:"模型' 也称业务规律,是正真完成任务的代码,相当与 JavaBeanview:视图,其实就是显示界面,相当于JSPcontroller:把握器,他把握模型和视图的交互过程,相当于servletstruts1 是基于 MVC 设计模式 hibernate 是基于 ORM ...