zoukankan      html  css  js  c++  java
  • Struts2学习笔记

    在struts.xml配置文件当中packet有一个属性字段namespace,这里必须详细了解一下,他的作用是可以让不同的packet里面包含相同action名称

    一般情况,如果没有namespace属性字段的默认为"",会被最后才搜索

    如果有两个相同的package,他们里面有相同的方法,有namespace的action会优先被搜索,在下面的代码当中,有两个package,一个是default,另一个是test1,大家里面都有Hello的action,如果Hello的action被调用,test1会被执行优先于default,意思是,程序会先搜索test1里面的Hello的action,所以这里的结果是会返回Hello2.jsp而不是Hello.jsp

    (注意:struts.xml配置文件中的package是由上往下读取的,被继承的package要先于继承的package,意思就是编写这个配置文件时父级别要优先于子级别的package)

    另外要主要的是这个namespace所指的在这个web app的根目录下的一个文件路径,namespace="/test"代表在根目录下的/test里面。所以以下的 代码表示返回的Hello3.jsp在Web App下的/test/里面

    最后还有一个要点就,如下面例子,请求http://localhost:8080/Strut2Namespace/test/Hello会出现404的结果,

    如果修改一下,在Hello.jsp前加上"/"代表相对路径的意思,则能显示Hello3.jsp的页面,我们来分析一下这个案例

    按照规则,先读取名为test2的package然后然后未能找到Hello的action,则开始读取默认的package,发现有Hello的action,则返回成功页面,Hello.jsp,因为这里默认的路径是"",所以为根目录,但在根目录下根本不能找到这个页面,则报404,如果改成/Hello.jsp,则返回的页面路径从test开始的Hello.jsp,这样在test下能找到Hello.jsp的页面,则能返回正确的页面,所这里需要这一点

  • 相关阅读:
    疑问
    Android之Adapter用法总结-(转)
    Android之Adapter用法总结(转)
    ListView中每个item条目在被单击选中时能够高亮显示
    使用简单的python语句编写爬虫 定时拿取信息并存入txt
    Python实现简单的爬虫获取某刀网的更新数据
    scrapy-redis(七):部署scrapy
    Scrapy-redis改造scrapy实现分布式多进程爬取
    Scrapy-redis实现分布式爬取的过程与原理
    https://blog.csdn.net/u012150179/article/details/38091411
  • 原文地址:https://www.cnblogs.com/oscar1987121/p/6368914.html
Copyright © 2011-2022 走看看