struts2框架的总结

                                                                                                                   struts2框架的学习心得

  经过一段时间的学习,逐渐学会了java的一些框架,想在这里做个总结,可能有一些不足之处,日后补充。


一、struts2框架的历史

        struts2框架是由apache基金会研发的一种开源框架,但是并不是单纯的由struts1版本升级而来,而是apache根据一个名为webwork的项目发展来的,所以两者的关系并不大。


二、为什么要用struts2框架?

       在没有用struts2框架之前,我们编写控制器使用的servlet,在servlet中,如果要获取表单中的数据,需要编写大量的代码(request.getParameter(“name”)),一旦有很多的对象,太麻烦,其次,如果进行表单数据验证,需要编写很多硬编码代码,一旦修改,需要重新编译。

三、怎么用struts2框架?

      一个web应用程序,要使用struts2框架,首先要把jar包导入到web-inf下的lib文件夹中。然后把jsp页面编写完成,用来向控制器传递数据。假设一个简单的登录jsp页面如下图:

struts2框架的总结_第1张图片

   jsp页面编写完成以后,在控制器包中新建一个类作为控制器类,编写控制器的步骤如下:

  (一):继承ActionSupport(public class loginAction extends ActionSupport)

    (二):提供表单中的字段,并提供对应的get/set方法,这样就不用像servlet中使用request.getParameter(“name”)获取字段值了,节省了很多代码有木有?

   (三):获取了字段值以后,重写validate()和execute()方法,前者主要是进行数据校验,后者是进行页面跳转。在validate()返回时,struts会检查错误信息,如果有错误信息,返回INPUT,没有错误信息,执行execute()。代码片段如下图:

struts2框架的总结_第2张图片

四、配置struts2

       struts2的核心是strutsPrepareAndExecuteFilter,旧的版本核心(DispatcherFilter)首先要在web.xml中配置核心过滤器,作用是调度每个请求到控制器。代码如下图:struts2框架的总结_第3张图片

        

             配置完核心过滤器,再配置Action,传统的配置action的方法如下:

           struts2框架的总结_第4张图片struts2框架的总结_第5张图片

      在配置Action的时候,可以指定url对应的方法,虽然和Spring MVC类似,但是struts是共享方法之间的参数,并不是很符合程序设计思想。也可以不指定方法。执行完Action之后,可以返回到jsp页面,也可以返回到Action,上一个Action的对象会保存到调转的Action。


五、总结

     Struts2框架是一款用来快速构建灵活、稳定的wed应用程序的框架,相比于servlet,大大减少了程序的代码,而且struts框架还提供了资源文件和标签,用来解决硬编码和提示错误信息。

     

    

     


你可能感兴趣的:(java框架)