SSH框架面试题及答案分享!

Posted 程序员的小傲娇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH框架面试题及答案分享!相关的知识,希望对你有一定的参考价值。

SSH框架面试题有哪些?目前常用的Java框架有很多,其中SSH(SpringMVC、Spring、Hibernate)是很多企业在招聘过程中经常提及的,接下来小千就给大家分享一下有关SSH框架的面试题。

1、什么是Spring?

Spring是一个容器,可以接管各个层次的Bean(action/domain/pojo/javabean),并且可以配置bean与bean之间的关系。在Java代码里使用bean只需要用ApplicationContext的getBean(配置文件里bean的id)方法就可以。

2、IOC是什么?

IOC(inverse of control)控制反转:所谓控制反转就是把对象(bean)对象和维护对象(bean)之间的关系的权利转移到Sqring容器中去了(ApplicationContext.xml)而程序本身不在维护了。

3、DI是什么?

DI(dependencyinjection)依赖注入:实际上DI和IOC是同一个概念,因为在ApplicationContext.xml配置文件中bean和bean之间通过ref来维护的时候是相互依赖的,所以又叫做依赖注入,也就是控制反转。

4、SpringMVC的工作流程是什么样的?

1)用户发送请求至前端控制器DispatcherServlet;

2)DispatcherServlet收到请求调用HandlerMapping处理器映射器;

3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet;

4)DispatcherServlet通过HandlerAdapter处理器适配器调用处理器;

5)执行处理器(Controller,也叫后端控制器);

6)Controller执行完成返回ModelAndView;

7)HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet;

8)DispatcherServlet将ModelAndView传给ViewReslover视图解析器

9)ViewReslover解析后返回具体View;

10)DispatcherServlet对View进行渲染视图(即将模型数据填充至视图中);

11)DispatcherServlet响应用户。

5、简述一下MVC思想

MVC是一种设计思想,M代表model,模型。V代表view,视图,C代表controller控制层。M主要是业务层以及数据实体类。V负责与用户交互,前台JSP等。C负责调度分配作用。从浏览器发出请求到收到响应显现在页面的顺序。

6、Spring中自动装配的方式有哪些?

1)No:即不启用自动装配。

2)byName:通过属性的名字的方式查找JavaBean依赖的对象并为其注入。比如说类Computer有个属性printer,指定其autowire属性为byName后,Spring IoC容器会在配置文件中查找id/name属性为printer的bean,然后使用Seter方法为其注入。

3)byType:通过属性的类型查找JavaBean依赖的对象并为其注入。比如类Computer有个属性printer,类型为Printer,那么,指定其autowire属性为byType后,Spring IoC容器会查找Class属性为Printer的bean,使用Seter方法为其注入。

4)constructor:通byType一样,也是通过类型查找依赖对象。与byType的区别在于它不是使用Seter方法注入,而是使用构造子注入。

5)autodetect:在byType和constructor之间自动的选择注入方式。

7、Hibernate优点:

1)对象/关系数据库映射(ORM);

2)透明持久化(persistent);

3)事务Transaction(org.hibernate.Transaction);

4)它没有侵入性,即所谓的轻量级框架;

5)移植性会很好;

6)缓存机制,提供一级缓存和二级缓存;

7)简洁的HQL编程。

8、Hibernate中的update()和saveOrUpdate()的区别

update是修改的方法,saveOrUpdate是保存或者更新。

saveorupdate()如果传入的对象在数据库中有就做update操作,如果没有就做save操作。

save()在数据库中生成一条记录,如果数据库中有,会报错说有重复的记录。

update()就是更新数据库中的记录。

想了解更多Java面试题,欢迎大家关注小千,后期会分享更多Java面试题。

本文来自千锋教育,转载请注明出处。

以上是关于SSH框架面试题及答案分享!的主要内容,如果未能解决你的问题,请参考以下文章

热乎的百度前端面试题及答案分享

前端vue面试题分享(附答案)

jQuery经典面试题及答案精选

jQuery经典面试题及答案精选(转)

PHP面试题及答案解析—PHP综合应用题

Java实用面试题及参考答案分享