您的位置:首页 > 编程语言 > Java开发

struts2深入浅出

2016-01-07 10:32 344 查看
Framework概念

伴随着软件开发的发展,在多层的软件开发项目中,可重用、易扩展的,而且是经过良好测试的软件组件,越来越为人们所青睐。这意味着人们可以将充裕的时间用来分析。构建业务逻辑的应用上,而非繁杂的代码工程。于是人们将相同类型问题的解决途径进行抽象,抽取成一个应用框架。这就是我们所说的Framework

通过基于请求响应(Request-Response)模式的应用

Framework,基本上有如下几个表现逻辑结构组成。

Ø 控制器(Controller)控制整个Framework中各个组件的协调工作。控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。

Ø 业务逻辑层(Business Logic)对Framework本身来说,这里仅仅只是概念和几个提供服务的基础组件,真正的实现与客户的业务逻辑接轨,还需要开发人员在Framework上再次扩展。

Ø 数据逻辑层(Data Logic)绝大多数应用系统都需要涉及到数据交互,这一层次主要包括了数据逻辑和数据访问接口。

Struts有其自己的控制器(Controller),同时整合了其它的一些技术去实现模型层(Model)和视图层(View)在模型层,Struts可以很容易的与数据访问技术相结合,包括EJB,JDBC等,在视图层,Struts能够与jsp表示层组件相结合。

Struts2框架的优势

良好的架构和设计

可重用,模块化,扩展性好

Open source

MVC的优点

首先,最重要的一点事多个视图能共享一个模型,同一个模型也可以被不同的视图重用,大大提高了代码的可重用性。

由于MVC的三个模型相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松耦合的构件。

此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。







MVC处理过程

首先控制器接受用户的请求,并决定应该调用哪个模型来进行处理。

然后根据用户请求进行相应的业务逻辑处理,并返回数据。

最后控制器调用相应的试图格式化模型返回的数据,并通过视图呈现给用户。

早期的java web应用中,jsp文件同时负责生成网页、控制到下一个网页的流程以及负责业务逻辑,这给web开发带来一系列问题:

Html和java强耦合在一起,jsp文件的编写者必须既是网页设计者,又是java开发者。
可读性差
调试困难
不利于维护,更改业务逻辑或数据可能牵涉相关的多个网页
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: