struts2框架的学习一

strust2框架来历简介:

WebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的J2EE Web框架。(同时也是一个成熟的基于Web的MVC框架)。
MVC:Model View Controller, model是模型,view是视图,controller是控制器,是一种框架模式.
随着WebWork框架的发展,衍生出了strust2框架,因此strust2框架是WebWork的升级,而不是一个全新的框架,因此稳点性、性能等方面都有很好的保证,而且也同时吸收了struts1框架和WebWork俩者的优点.所以strust2框架也是一个基于Web的MVC框架.。

注意:strust2框架并不是struts1框架的延续或者升级,俩者有着很大的不同。

struts2框架的搭建

  • 1、 获取发布包 :struts2官网 apache github 百度,(如若需要这里有我自己搭框架时的struts2的框架包http://pan.baidu.com/s/1boIZIY7)

  • 2、导包:获取到jar包之后导入到自己的项目中,注意导入的jar包放在自己项目的WebContent\WEB-INF\lib\下面。

  • 3、配置web.xml:在web.xml文件中配置struts2框架的过滤器.
    这个过滤器的作用:拦截struts2框架中的action.注意:如果不配置这个filter,struts2框架就不能够工作。

      
          struts2
          
         org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
         
      
      
          struts2
          *.action
      
    
  • 4、配置struts2核心配置文件 struts.xml:在struts.xml配置action的目的和作用:通知 struts2框架我们写的这个类是一个Action,将来struts2框架中要给这个类创建对象,调用方法以及这个Action加入更多丰富的功能。

      
       
       
          
          
          
              
          
          
      
    

    注意如若在struts.xml里面没有默认提示,则需要自己手动的去给struts.xml文件添加提示,步骤为:

    第一步:解压struts2-core-2.3.24.1.jar包,并在文件里面找到struts-2.3.dtd文件,并放在你的项目下的dtd文件中。
    第二步:选择eclipse里面Window下面的preference,在搜索框里输入xml,在选择xml catalog,
    然后点击add,Location里选择你的dtd文件在项目中的位置,keytype选择URI,然后key为 http://struts.apache.org/dtds/struts-2.3.dtd,最后点击ok即可。

struts2项目开发

  • 1、编写Action类:在创建一个bean类之后,我们再创建一个与之对应的Action类,(如我们创建了一个名为User的bean类,再创建一个名为UserAction的Action类),同时注意我们的action类名编写是有一定的规律的,一般为相对应的bean类加上Action借尾的。

    一般Action类里面有大量返回值为String类型的方法,如:

    public String toLogin(){
    
      System.out.println("跳转到登陆页面");
    
      return "login";
    

    }

  • 2、 配置struts.xml:没创建了一个action类或者添加了返回值为String的方法之后都要去struts.xml文件里面去进行相应配置。

      
    
            
           /WEB-INF/jsp/login.jsp
          
        
    

    第一行package中的name属性意思为:表示给当前package起一个名字为default,并且唯一标识这个package。
    namespace属性意思为:表示当前package的命名空间为/,将来这个package里面的所有的action在被访问的时候,路径里面都要加上这个命名空间。
    extends属性意思为:继承的包名为那个,一般默认为继承struts2里面核心默认包struts-default。
    action里面的name标签:表示为将来在游览器要访问这个Action类就要以"user_"开头的名字去匹配。
    class:该Action类在你项目中的位置。
    method:调用方法匹配的字段,如若name="user__";则method="{2}";
    result:返回的结果为什么,则想某个页面跳转。

  • 3、测试:当我们把项目部署到服务器并启动服务器的时候,我们就可以在浏览器中输入"http://localhost:8888/week3/user_toLogin.action"的时候就可以访问到我们要跳转的页面了。

    注意:struts2框架是默认过滤以".action"结尾的url的,所以我们使用struts2框架访问时都要以.action结尾,否则是访问不到我们所需要的资源的。

你可能感兴趣的:(struts2框架的学习一)