yutaoaijingjing132
yutaoaijingjing132
2011-06-30 15:55

某公司关于spring和hibernate的面试题!高手来解答!!!!!!!

  • spring

1
extends HibernateDaoSupport
for(int i=0;i<3;i++){
this.getHibernateTemplate().save(obj);
}
为什么只发出了一次insert语句 就保存了一个user?

2
getHibernateTemplate().save(obj);拿到的session是不是和当前线程绑定的?

3
关闭事务是HibernateTransactionManager是由这个类来关闭的,那么如果我没有配置
事务管理呢,由谁来关闭?
4


tx:attributes





/tx:attributes
/tx:advice
aop:config


/aop:config
在配置事务传播特性的时候我给com.common.service.*这个包进行事务管理,他里边有一些save..,update,delete啥的,也有些关于业务逻辑的接口,例如login。。。,那么我的这个login方法是不是不满足事务的描述 ,他的事务传播方式会走<tx:method
name="*" propagation="SUPPORTS" read-only="true" 对吗?这个包是service层,他们底层调用的都是同一个DAO现类extends HibernateDaoSupport,在这个类里边有CRUD,那么我在DAO层的save里边调用delete方法,在delete方法中我抛出一个runtimeexception 是不是就会事务回滚?因为他们都在同一个事务当中!?这些事务传播特性是指我调用service层时传播,还是说具体到实现类中,还是底层DAO中进行传播呢?
5
spring所谓的单例 是JVM的单例 还是说每个线程单例就像是ThreadLocal,
如果是jvm单例,那么是线程安全的吗?

6
struts2里边的ACTION是否是线程安全的,JVM单例还是每个线程绑定一个?

7
struts2假如每个线程一个ACTION,那么当用SPRING时,SPRING容器NEW出来的是单例(service层)【假如是JVM就存在一个service】,那么每个线程的ACTION调用service时会不会出现线程问题?该如何处理这个问题?

以上为题希望各位大牛给下解释,谢谢

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

10条回答