Java企业应用框架一般划分为:表现层、业务逻辑层和持久层。
表现层用来建立应用系统的界面,对应视图(View)。
业务逻辑层组件用来开发应用逻辑,对应控制器(Controller)。如EJB3.0的Session Bean。
持久层是实现持久化存储,对应模型(Model)。例如EJB3.0的Bean持久化模型,Hibernate的O/R Mapping模型。
1.MVC的基本过程
控制器接受用户的输入并调用模型和视图去完成用户的需求,它是用户界面和Model的接口,一方面它解释来自于视图的输入,将其解释成为系统能够理解的对象,同时它也识别用户动作,并将其解释为对模型特定方法的调用;另一方面它处理来自模型的事件和模型逻辑执行的结果,调用适当的视图为用户提供反馈
模型是应用程序的主体部分,模型表示业务数据和业务逻辑,一个模型能为多个视图提供数据,由于同一个模型可以被多个视图重用,所以提高了应用的可重用性。
视图还能接收模型发出的数据更新事件,从而对用户界面进行同步更新。
2.Struts + Spring + Hibernate
Struts是基于模型-视图-控制器(MVC)模式的开源框架,主要用于企业应用中表示层的实现。借助于Struts,开发人员可以把主要精力集中在业务处理上,很好实现代码重用,提供开发效率。
Struts中的模型是一个Action类,开发者通过其实现商业逻辑。
Struts中的视图是与控制器配合工作的一整套JSP定制标签库构成,利用他们可以快速建立应用系统的界面。
Strutsd中的控制器本质上是一个Servlet,将客户端请求转发到相应的Action类。
Spring是业务组件层轻量级框架,它是一个基于IOC(依赖注入)和AOP(面向方面编程)的架构。用户可以通过Spring来利用普通Java对象编程。
Hibernate属于持久层框架,它是一个开源的O/R Mapping框架,对JDBC进行了非常轻量级的对象封装。