Struts Spring Hibernate面试题汇总
1. 谈谈你mvc的理解 MVC是Model—View—Controler的简称。即模型—视图—控制器。MVC是一种设计模式,它强制性的把应用程序的输入、处理和输出分开。 MVC中的模型、视图、控制器它们分别担负着不同的任务。 视图: 视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并接受用户的输入。视图不进行任何业务逻辑处理。 模型: 模型表示业务数据和业务处理。相当于JavaBean。一个模型能为多个视图提供数据。这提高了应用程序的重用性 控制器: 当用户单击Web页面中的提交按钮时,控制器接受请求并调用相应的模型去处理请求。 然后根据处理的结果调用相应的视图来显示处理的结果。 MVC的处理过程:首先控制器接受用户的请求,调用相应的模型来进行业务处理,并返回数据给控制器。控制器调用相应的视图来显示处理的结果。并通过视图呈现给用户。 【SSH面试题汇总】主要涉及的是Struts、Spring和Hibernate这三个流行Java EE框架的相关知识,以及MVC设计模式的理解。MVC(Model-View-Controller)模式是软件工程中的一种架构模式,它将应用程序分为三个核心组件:模型、视图和控制器。 1. **MVC模式详解**: - **模型(Model)**:模型代表业务数据和业务逻辑处理。它通常以JavaBean的形式存在,负责处理数据和业务规则。一个模型可以为多个视图提供数据,增强了代码的复用性。 - **视图(View)**:视图是用户看到并与之交互的界面。视图负责展示模型中的数据,接受用户的输入,但不进行任何业务逻辑处理。它通常由HTML、JSP或其他视图技术构建。 - **控制器(Controller)**:控制器接收用户的请求,根据请求调用相应的模型进行处理,然后将处理结果转发给视图进行展示。在Web应用中,控制器通常由Servlet或Action类实现。 2. **Struts1与Struts2的区别**: - **Action类**:Struts1要求Action类继承特定基类,而Struts2的Action类需继承ActionSupport。 - **线程模式**:Struts1的Action是单例的,需要确保线程安全,而Struts2为每个请求创建新的Action实例,无需担心线程安全问题。 - **Servlet依赖**:Struts1的Action直接依赖于Servlet API,Struts2则减少了对容器的直接依赖,更易于测试。 - **可测性**:Struts2的Action更容易测试,支持依赖注入,提供更好的单元测试支持。 3. **使用SSH的原因**: - **Struts**:作为MVC框架,Struts帮助分离业务逻辑和表现层,提供丰富的标签库提高开发效率。 - **Hibernate**:作为ORM框架,Hibernate简化了数据库操作,提供高效的对象-关系映射,支持轻量级持久化。 - **Spring**:Spring的核心特性包括IoC(Inversion of Control,控制反转)和AOP(面向切面编程),用于构建松散耦合的系统,支持事务管理和其他企业服务。 4. **Struts的国际化实现**: - 实现Struts的国际化通常涉及配置资源文件(如ApplicationResource.properties)和在视图中引用这些资源,以便根据用户的选择显示不同语言的文本。 5. **Struts与Spring的集成**: - Struts1中,Action通常继承自`org.apache.struts.action.Action`,而Spring框架中,类的依赖和生命周期管理由Spring容器负责,通过AOP实现事务管理和其他服务。Struts1与Spring的集成通常通过Spring的Action代理实现,以便Spring管理Struts的Action实例。 在面试中,理解和熟悉这些概念和技术细节对于展示你作为一名Java开发者的专业技能至关重要。同时,理解如何在实际项目中应用这些技术,以及它们的优点和缺点,都是面试官希望听到的。
剩余18页未读,继续阅读
- y05hcy2011-10-15很好,东西很全,有架构的原理,适合面试的同学看~~
- 321_tony2013-01-26ssh面试题整理得非常好,都是在面试过程中遇到的问题
- 粉丝: 5
- 资源: 33
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- IOException(解决方案).md
- ImportError.md
- NSInvalidObjectException如何解决.md
- DSP信号采集处理与控制系统设计总结实验报告(卷积 FFT FIR 滤波算法源码)
- 毕设和企业适用springboot智慧办公平台类及城市智能运营平台源码+论文+视频.zip
- 电力系统静态稳定性仿真Matlab编程 simulink仿真 1.用Matlab编程,把转子运动方程(摇摆方程)在运行点处线性化,采用小信号分析法,对线性化之后状态方程的系数矩阵求解特征值,根轨迹,通
- EXCEL使用宏实现筛选重复项并对该行进行填充内容的操作
- 锂电池主动均衡simulink仿真 四节电池 基于buckboost(升降压)拓扑 (还有传统电感均衡+开关电容均衡+双向反激均衡+双层准谐振均衡+环形均衡器+cuk+耦合电感)被动均衡电阻式均衡
- Python实现递归遍历Windows文件系统:os模块与pathlib模块的比较
- 操作系统:核心功能、发展历程及未来趋势
- 基于蚁群算法解决的旅行商问题(Vrp)
- b站上是教程,这个是狂暴机器人源码
- 小蜗牛-STC3F.zip
- untitled.fig
- 1834_129789020.html
- 堆排序算法解析:原理、实现与优缺点