SSH面试常考题(3)

转载 2015年11月21日 15:55:48

其实spring,hibernate,struts面试的话 一般不会问什么太深的问题  一般只是看你用过没有  做过什么什么项目  有个面试官就问我 ssh集成要配置多少个xml文件 哇哈哈 很简单的就答出来了 不过有些同学也问得挺难的 下面是些常问的问题

 

1.MVC,分析一下struts是如何实现MVC的
m:JavaBean 或结合 EJB 组件或者pojo构成
c:Action 来实现
v:一组 JSP 文件及其标签构成。

2.struts中的几个关键对象的作用

Action:控制器类,

ActionForm:表单对象,

DynaValidatorForm:

动态form,ActonMapping:

配置文件中action节点的信息..

3.Hibernate有哪几种查询数据的方式
hql查询,sql查询,条件查询

4.load()和get()的区别
hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,load默认支持延迟加载,在用到对象中的其他属性数据时才查询数据库,但是万一数据库中不存在该记录,只能抛异常ObjectNotFoundEcception;所说的load方法抛异常是指在使用该对象的数据时,数据库中不存在该数据时抛异常,而不是在创建这个对象时。由于session中的缓存对于hibernate来说是个相当廉价的资源,所以在load时会先查一下session缓存看看该id对应的对象是否存在,不存在则创建代理(load时候之查询一级缓存,不存在则创建代理)。get()现在一级缓存找,没有就去二级缓存找,没有就去数据库找,没有就返回null ;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。

5.spring的事务有几种方式?谈谈spring事务的隔离级别和传播行为。
声明事务和编程事务
隔离级别:
- DEFAULT使用数据库默认的隔离级别
- READ_UNCOMMITTED会出现脏读,不可重复读和幻影读问题
- READ_COMMITTED会出现重复读和幻影读
- REPEATABLE_READ会出现幻影读
- SERIALIZABLE最安全,但是代价最大,性能影响极其严重
和传播行:
- REQUIRED存在事务就融入该事务,不存在就创建事务
- SUPPORTS存在事务就融入事务,不存在则不创建事务
- MANDATORY存在事务则融入该事务,不存在,抛异常
- REQUIRES_NEW总是创建新事务
- NOT_SUPPORTED存在事务则挂起,一直执行非事务操作
- NEVER总是执行非事务,如果当前存在事务则抛异常
- NESTED嵌入式事务
6.Spring对多种ORM框架提供了很好的支持,简单描述在Spring中使用Hibernate的方法,并结合事务管理。
getHiberanteTemplate里面提供了save,update,delete,find等方法。
简单说一个:如果配置了声明式事务,当执行getHibernateTemplate的各种方法的时候,事务会

自动被加载
如果没有配置事务,那么以上操作不会真正的被同步到数据库,除非配置了hibernate的

autocommit=true

7.spring的事务有几种方式?谈谈spring事务的隔离级别和传播行为。
spring事务分两种形式,声明式事务和编程式事务,spring提供了一个事务的接口

PaltformTractionManager接口,针对不同的事务,spring进行了不同的实现,对hibernate事务

的实现HIbernateTractionManager,对JDBC的JdbcTractionManager,

DataSourceTractionManager以及JdoTractionManager。接口platformTractionManager提供了三

个方法,获取事务,提交和回滚的方法。

8.Hibernate中怎样实现类之间的关系?(如:一对多、多对多的关系)

类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one、one-to-many、many-to-many、

C++面试常考题型

1. 结构体和共同体的区别。 定义: 结构体struct:把不同类型的数据组合成一个整体,自定义类型。 共同体union:使几个不同类型的变量共同占用一段内存。 地址: struct和union都有内...
  • sinat_33718563
  • sinat_33718563
  • 2017年07月16日 21:03
  • 345

近期面试题整理

1.     有25匹马,速度都不同,但每匹马的速度都是定值。现在只有5条赛道,无法计时,即每赛一场最多只能知道5匹马的相对快慢。问最少赛几场可以找出25匹马中速度最快的前3名?(人人) 网上解答: ...
  • yutianzuijin
  • yutianzuijin
  • 2013年11月25日 16:51
  • 2628

SSH面试常考题(6)

一、spring工作原理: 1.spring mvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作。 2.Dispatche...
  • u012723548
  • u012723548
  • 2015年11月21日 16:00
  • 254

SSH面试常考题(1)

Spring面试:什么是Spring, 它有什么特点   Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。      ◆轻量——从大小与开销两方面而言Sp...
  • u012723548
  • u012723548
  • 2015年11月21日 15:51
  • 327

SSH面试常考题(5)

Struts2 1、为什么每次请求都要创建一个Action对象? 是出于对线程安全的考虑,每次请求的时候都会创建一个action的实例,这样会保证线程的安全。Struts1只是在第一次请求...
  • u012723548
  • u012723548
  • 2015年11月21日 15:59
  • 297

SSH面试常考题(4)

1.strust的。 Action是不是线程安全的?如果不是 有什么方式可以保证Action的线程安全?如果是,说明原因 2.MVC,分析一下struts是如何实现MVC的 3.struts中的几...
  • u012723548
  • u012723548
  • 2015年11月21日 15:58
  • 157

SSH面试常考题(2)

Hibernate工作原理及为什么要用? 原理: 1. 读取并解析配置文件 2. 读取并解析映射信息,创建SessionFactory 3. 打开Sesssion 4. 创建事务Tr...
  • u012723548
  • u012723548
  • 2015年11月21日 15:54
  • 325

Shell常见面试题目

一 利用top取某个进程的CPU的脚本 #/bin/sh Max_CPU=0 Avg_CPU=0 Total_Time=1 Process=$1 Interval=$2 # check t...
  • tianmo2010
  • tianmo2010
  • 2011年11月21日 20:39
  • 1763

谷歌面试题——动态规划

#谷歌面试题# 两个鸡蛋:两个软硬程度一样但未知的鸡蛋,它们有可能都在一楼就摔碎,也可能从一百层楼摔下来没事。有座100层的建筑,要你用这两个鸡蛋以最少的次数确定哪一层是鸡蛋可以安全落下的最高位置。可...
  • Linoi
  • Linoi
  • 2013年08月06日 15:58
  • 2416

Linux 笔试面试常见题目(整理)

16. 内核分为 进程管理系统 、 内存管理系统 、 I/O管理系统 和文件管理系统 等四个子系统。 17. 内核配置是系统管理员在改变系统配置 硬件 时要进行的重要操作。 18. 在安装Linux系...
  • xy010902100449
  • xy010902100449
  • 2015年06月17日 19:46
  • 15039
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SSH面试常考题(3)
举报原因:
原因补充:

(最多只允许输入30个字)