与SSH相关

http://blog.sina.com.cn/s/blog_733c197301010sjs.html

以上一篇不错的博客

1.谈谈你对MVC的理?

答:MVC是Model-View-Controller的简称,即模型-视图-控制器。MVC是一种设计模式,它强制性地把应用程序的输入、处理、输出分开。MVC中的模型、视图和控制器分别担负着不同的任务:

视图:视图是用户看到并与之交互的界面,视图向用户显示相关的数据,并接受用户的输入。视图不进行任何业务逻辑的处理。

模型:模型表示业务数据和业务处理。相当于JavaBean。一个模型能为多个视图提供数据。这提高了应用程序的重用性。

控制器:当用户单击Web页面中的提交按钮时,控制器接受请求并调用相应的模型去处理请求。

然后处理的结果调用相应的视图显示处理的结果。

MVC的处理过程:首先控制器接受用户的请求,调用相应的模型来进行业务处理,并返回数据给控制器。控制器调用相应的视图来显示处理的结果。并通过视图呈现给用户。

2.Struts1和Struts2的区别

a) Action类 

struts1.2要求Action类继承一个基类。struts2 Action要求继承ActionSupport基类

b)线程模式

struts1.2 Action是单例模式并且必须是线程安全的,因为仅有一个Action的实例来处理所有的请求。单例策略限制了struts2 Action能做的事,并且开发时特别小心。Action资源必须是线程安全的或者同步的。

Struts2 Action为每一个请求产生一个实例,因此没有线程安全问题。

c)Servlet依赖

struts1.2 Action依赖于Servlet API,因此当一个Action被调用时HttpServletRequest和HttpServletResponse被传递给execut方法。

struts2 Action仍然可以访问初始的Request和Response。但是其它的元素减少或者消除了直接访问HttpServletRequest和HttpServletResponse的必要性。

d)可测性

测试struts1.2 Action的一个主要问题是execute方法暴露了Servlet API(这使得测试要依赖于容器)。一个第三方扩展:struts TestCase提供了一套struts1.2的模拟对象来进行测试。

struts2 Action可以通过初始化、设置属性、调用方法来测试,“依赖注入”也使得测试更容易。

3.项目中为什么使用SSH

a).使用struts是因为struts是基于MVC模式的,很好地将应用程序进行了分层使开发者更关注于业务逻辑的实现。第二,struts有丰富的taglib,如能灵活运用,则能大大提高开发效率。

b).使用hibernate:因为hibernate为java程序提供了一个易用的、高效率的对象关系映射框架。hibernate是个轻量级的持久性框架,功能丰富。

c).使用Spring:因为spring基于IOC和AOP构架多层j2ee系统的框架,但它不强迫你必须在每一层必须使用spring,因为它模块化好,允许你根据自己的需要选择使用它的某一个模块。

采用IOC使得可以很容易实现bean的装配,提供了简洁的AOP并根据此实现事务管理等等。

4.struts与spring是如何继承的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值