SSH面试

---------------------------------------------MVC部分-----------------------------------------
1. MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻     辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
 
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
  通常模型对象负责在数据库中存取数据。
  View(视图)是应用程序中处理数据显示的部分。
  通常视图是依据模型数据创建的。
 Controller(控制器)是应用程序中处理用户交互的部分。
  通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
 
-------------------------------------------Struts2部分-----------------------------------------
1. Struts 2是基于mvc的web框架,是在 WebWork的技术基础上开发的全新MVC框架。
 
2. 工作流程

  1> 客户端浏览器发出HTTP请求.

  2> 根据web.xml配置,该请求被FilterDispatcher接收

  3> 根据struts.xml配置,找到需要调用的Action类和方法, 并通过IoC方式,将值注入给Aciton

  4> Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证。

  5> Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面

  6> 返回HTTP响应到客户端浏览器

 

3. 工作原理

  1>  客户端初始化一个指向Servlet容器的请求 

  2>  这个请求经过一系列的过滤器(Filter)

  3>  接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action 

  4>  如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy 

  5 > ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类 

  6>  ActionProxy创建一个ActionInvocation的实例。 

  7>  ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。 

  8>  一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。

 

4. 为什么使用struts2?

  1> 开源的mvc框架

  2> 纯pojo的Action

  3> 更好的标签特性

  4> 易测试

  5> 易扩展

 

------------------------------------------Hibernate部分-----------------------------------------

1.  Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库
 
2. 工作原理

1>  通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件
2>  由hibernate.cfg.xml中的<mapping resource="com/xx/User.hbm.xml"/>读取并解析映射信息
3>  通过config.buildSessionFactory();//创建SessionFactory
4>  sessionFactory.openSession();//打开Sesssion
5>  session.beginTransaction();//创建事务Transation
6>  persistent operate持久化操作
7>  session.getTransaction().commit();//提交事务
8>  关闭Session

9>  关闭SesstionFactory

 

3. 为什么使用Hibernate?

 

Hibernate对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码

 

Hibernate是一个基于jdbc的主流持久化框架,是用优秀的orm实现,它很大程度的简化了dao层编码工作

------------------------------------------Spring部分-----------------------------------------
1. Spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架。
 
2.  控制反转——Spring通过一种称作控制反转IOC)的技术促进了松耦合。当应用了IOC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
   
3. 面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务 逻辑系统服务事务进行 内聚性的开发。
 
4.为什么使用Spring?
 1> 方便解耦,简化开发
 2> 方便程序的测试
 3> 方便集成各种优秀框架
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值