• struts配置


    创建struts2的应用,首先应如前面所示要搭建好环境。jar包的导入和web.xml配置这里不在写出来。 

       如上所示,struts2中是采用<package>元素来管理Action的,包的作用和java中的类包是非常类似的,它主要用

    于管理一组业务功能相关的action。在实际应用中,我们应该把一组业务功能相关的Action放在同一个包下。配置包时

    必须指定name属性,该name属性值可以任意取名,但必须唯一,它不对应java的类包,如果其它包要继承

    该包,必须通过该属性进行引用。包的namespace属性用于定义该包的命名空间,命名空间作为访问该包下Action

    路径一部分,如访问上面例子的Action,访问路径为:/test/sayHello.action。

    namespace属性可以不配置,如果不指定该属性,默认的命名空间为空字符串。

    配置namespace有什么好处呢?

        就名称空间而言可以有效防止名字重复,即请求路径一样,这样就会导致错误。

        第二个就是当有名称空间时,可以减少配置的书写量,因为相同路径的action请求可以放置在同一个名称空间下,

        这样就不用每次都写出名称空间值所代表的路径。除了上述两个属性,通常每个包都应该继承struts-default包,

        因为Struts2很多核心的功能都是拦截器来实现。

        如:从请求中把请求参数封装到action、文件上传和数据验证等等都是通过拦截器实现的。

    struts-default定义了这些拦截器和Result类型。因此,当包继承了struts-default才能使用struts2提供的核心功能。

    struts-default包是在struts2-core-2.x.x.jar文件中的struts-default.xml中定义。

    struts-default.xml也是Struts2默认配置文件。 Struts2每次都会自动加载 struts-default.xml文件。

    细心点其实可以发现struts-default.xml的name为struts-default包有一个属性abstract="true",

    这表示该包为抽象包,抽象包中不能包含action,抽象包是专门用来被其它包来继承的。

       接下来就是<action>元素的配置,其中name属性访问时路径的一部分,class为类的全限定名,

    最后就是一个method属性,表示应该被调用的方法。里面的<result>元素和struts1的forward元素一样,

    相当于视图的配置。接下来就是Action和JSP的代码片断:

  • 相关阅读:
    40 宾语从句的连词
    unar解压rar,zip等文件
    Disable beep in WSL terminal on Windows 10 [closed]
    Collins COBUILD Advanced Learner’s Dictionary (Collins COBUILD Dictionaries for Learners)
    中小学语文示范诵读库
    自己打印标准五笔字型教材(86)
    赵元任《施氏食狮史》
    西班牙语学习资源
    为什么“能”?为什么“行”?为什么“好”?答案在这里!
    社会主义好
  • 原文地址:https://www.cnblogs.com/chengbao/p/4866034.html
Copyright © 2020-2023  润新知