Struts简单介绍

Posted gavanwanggw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts简单介绍相关的知识,希望对你有一定的参考价值。

一、在介绍struts之前,先来了解一下什么是MVC框架吧。
1、MVC介绍
        MVC全名是Model View Controller。是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范。用一种业务逻辑、数据、界面显示分离的方法组织代码。将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同一时候。不须要又一次编写业务逻辑。

当中三层各自的功能:

          Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。

  通常模型对象负责在数据库中存取数据。
View(视图)是应用程序中处理数据显示的部分。
  通常视图是根据模型数据创建的。
Controller(控制器)是应用程序中处理用户交互的部分。
  通常控制器负责从视图读取数据。控制用户输入,并向模型发送数据。

MVC 分层同一时候也简化了分组开发。

不同的开发者可同一时候开发视图、控制器逻辑和业务逻辑。


2、struts介绍
        Struts是MVC架构,使用Struts的目的是为了帮助我们降低在运用MVC设计模型来开发Web应用的时间。假设我们想混合使用Servlets和JSP的长处来建立可扩展的应用,struts是一个不错的选择。

二、  struts执行原理:
        技术分享
        结合上面的图,来理解struts的执行原理:
                1、初始化。读取配置文件:在Web应用启动时就会载入并初始化ActionServlet。在载入Struts应用程序时,会先载入web.xml中与Struts相关的一些配置參数,找到struts-config.xml文件。然后通过循环来读取此文件和解析里面的内容。并初始化相关对象。
                2、用户请求:用户提交表单或调用url向Web应用程序php?

adclass=0&app_id=0&c=news&cf=1001&ch=0&di=8&fv=17&is_app=0&jk=38f8cdd40b779ad&k=%B7%FE%CE%F1%C6%F7&k0=%B7%FE%CE%F1%C6%F7&kdi0=0&luki=2&n=10&p=baidu&q=sayyescpr&rb=0&rs=1&seller_id=1&sid=ad79b740dd8c8f03&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1366390&u=http%3A%2F%2Fblog%2Eknowsky%2Ecom%2F179728%2Ehtm&urlid=0" id="5_nwl" style="text-decoration:none">server提交一个请求,  首先会到达ActionServlet这个对象中,在此截取发送请求的URI地址。在和第一步中读取出来的配置文件信息相关内容做对照,找到和这个URI地址相匹配的地址。然后确定其要转向的Action。在此过程中。如这个Action有一个对应的ActionForm。则会把表单中提交的一些数据自己主动匹配到ActionForm的一个实例中,并传递到要转向的Action。

                3、业务处理:Action一般仅仅包括一个execute()方法,它负责运行对应的业务逻辑。

在Action中获取传递过来的ActionForm中的数据,然后在调用相关业务逻辑。运行完成后返回一个ActionForward对象,控制器通过该ActionForward对象进行转发工作(通常是跳转到JSP页面对结果进行处理)。

                4、接收结果:接收Action中处理的结果,在界面给用户显示相关数据。

三、使用struts的有点:
1. 实现MVC模式,结构清晰,使开发人员仅仅关注业务逻辑的实现.
2. 有丰富的tag能够用 ,Struts的标记库(Taglib),如能灵活动用。则能大大提高开发效率
3. 页面导航.页面导航将是今后的一个发展方向,其实,这样做,使系统的脉络更加清晰。通过一个配置文件。就可以把握整个系统各部分之间的联系,这对于后期的维护有着莫大的优点。
4. 提供Exception处理机制 .
5. 数据库链接池管理

6. 支持I18N

  










以上是关于Struts简单介绍的主要内容,如果未能解决你的问题,请参考以下文章

spring的struts简单介绍

简单介绍使用GooUploader.js实现批量上传文件的方法(使用struts2)

Struts简单入门

SpringMVC:SpringMVC的简单介绍

JAVA SSH 框架介绍

Struts2系列:Action的访问路径和缺省后缀