struts2伪静态

第一:url重新的方式。url重写就是将浏览器的一个请求在服务器端重定向到另一个可以处理请求的url上。

    例如:http://www.moonteam.net/news/1.htm 重定向到http://www.moonteam.net/news/viewNews.action?id=1

    这样的好处是地址统一,且利于搜索引擎。详见:http://www.sunxin.org/forum/thread/20748.html

第二:struts本身就支持风格化的url

       步骤:(1)、增加struts的扩展名<constant name="struts.action.extension" value="action,htm" />,struts2拥有了两个扩展名action和htm

                 (2)、  在web.xml中配置struts2的核心控制器将*.ation,*.htm的请求交给struts2来处理

<filter>
        <filter-name>struts2</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.FilterDispatcher
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>*.action</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>*.htm</url-pattern>
    </filter-mapping>

(3)、配置具体的action

<package name="news" extends="struts-default" namespace="/index">

        <action name="*" class="com.moonteam.struts2.action.ViewNewsAction" >
            <param name="paramName"  >{1}</param>
             <result name="success">index.jsp</result>
        </action>

</package>

这样一个http://www.moonteam.net/news/1.htm 就映射到了http://www.moonteam.net/news/viewNews.action?id=1

你可能感兴趣的:(struts)