Struts2框架action路径问题心得----》页面url请求怎么找action

Struts2 页面url请求怎么找action

Struts2 页面url请求如何找action

1.我们使用最原始的方法去查找action,不同注解。

struts.xml文件先配置

<!-- 新闻信息action -->
<action name="newsInfoAction" class="com.xxx.NewsInfoAction">
<result name="add">news/addNewsInfo.jsp</result>
<result name="update">news/editNewsInfo.jsp</result>
<result name="dataList">news/newsInfo.jsp</result>
</action>

action 默认执行的是NewsInfoAction中的excute方法。 http://localhost:8080/test/newsInfoAction.html 或者http://localhost:8080/test/newsInfoAction.action 看你如何在struts.xml文件中的配置(

<!-- 修改后缀 -->
<constant name="struts.action.extension" value="action,html" />  )

那么有一个疑问,我们怎么访问NewsInfoAction中的其他方法呢?

访问指定方法

方式一:

http://localhost/struts2/simple/hello!say.action

可以调用hello这个action中的say方法

方式二:

http://localhost/struts2/simple/hello.action?method:say=xxx

可以调用say方法,在这里,参数的名称是:method:say,这是最主要的,struts2正是

根据参数的名称来决定该调用哪个方法,而不是参数的值,所以参数的值可以是任意的

方式三:

struts2的配置文件的action标签中存在一个method属性,用来指定访问特定的方法

<action name="hello" class="helloAction" method="say">

方式四:

<action name="hello_*" class="helloAction" method="{1}">

这样在页面中的action路径可写为hello_say.action就是访问say方法了。

2.如果struts2已经交给spring容器管理了,我们就可以通过注解来找action以及该action的方法了。(推荐使用这种方法,这样我们你就不用在struts.xml文件中再去配置各种action,可以给struts.xml减肥啦。)

url为 :http://localhost:8080/test/admin/editproduct.html?productInfoId=1    //参数可有可无

@SuppressWarnings("unchecked")
@Action(value = "/admin/editproduct", results = { @Result(name = "update", location = "product/editProductInfo.jsp") })
public String toUpdateProductInfo() throws Exception {

。。。。。。。

}

配置文件只需要配置注解即可:

<mvc:annotation-driven />
<context:annotation-config></context:annotation-config>                             不能简写成<context:annotation-config/>

时间: 2024-11-29 03:27:58

Struts2框架action路径问题心得----》页面url请求怎么找action的相关文章

Struts2 页面url请求如何找action

1.我们使用最原始的方法去查找action,不同注解. struts.xml文件先配置 <!-- 新闻信息action --> <action name="newsInfoAction" class="com.xxx.NewsInfoAction"> <result name="add">news/addNewsInfo.jsp</result> <result name="upda

Struts2 页面url请求怎样找action

1.我们使用最原始的方法去查找action.不同注解. struts.xml文件先配置 <!-- 新闻信息action --> <action name="newsInfoAction" class="com.xxx.NewsInfoAction"> <result name="add">news/addNewsInfo.jsp</result> <result name="upda

struts2框架-----Action

控制器Action Action对象是struts2框架的核心,每个URL映射到特定的Action,其提供处理来自用户的请求所需要的处理逻辑.Action有两个重要的功能,即将数据从请求传递到视图和协助框架确定哪个结果应该是呈现在响应请求中的视图中. 一.Action接口 Action是com.opensymphony.xwork2包中的一个接口,提供了5个静态的成员变量,是struts2框架中为处理结果定义的静态变量. Action接口的静态变量: ActionSupport类实现了Actio

基础篇-三大框架之一(struts2框架的搭建)

Struts2是一种基于MVC的轻量级的WEB应用框架. 1.web应用框架,也就是说struts2的运行环境是一个web容器,运行于Web容器中的程序就必须遵循基本开发标准和规范:servlet标准和JSP标准(不同的Web服务器对于servlet标准和JSP的标准是不一样的),对于struts2而言,它支持的Servlet标准最低版本要求是2.4,相对于JSP的最低版本要求是2.0.struts2作为开发框架的运行环境提出了要求,要求其必须运行在JDK1.5版本以上. 2.轻量级,相对于重量

Struts2框架详解

目录: 1.Struts2的工作原理 2.Struts2的搭建 3.Struts2的核心文件 3.1 Struts.xml配置详解 4. Struts2重点 4.1 动态方法调用 4.2 多个配置文件 4.3 Action搜索顺序 4.4 从界面输入接收参数(登陆为例) 4.5 处理并返回结果(响应前端页面) 4.6 Action后缀设置 4.7 访问Servlet API 4.8 默认Action 5.Struts2拦截器 5.1 拦截器的定义 5.2 拦截器的作用 5.3 自定义拦截器 5.

JAVAWEB开发之Struts2详解(一)——Struts2框架介绍与快速入门、流程分析与工具配置以及Struts2的配置以及Action和Result的详细使用

Struts2框架介绍 三大框架:是企业主流JavaEE开发的一套架构.Struts2 + Spring + Hibernate 什么是框架?为什么要学习框架? 框架是实现部分功能的代码(半成品),使用框架简化企业级软件开发. Struts2与MVC? Struts是一款优秀的MVC框架 MVC:是一种思想,是一种模式,将软件分为Model模型.View视图.Controller控制器 JAVAEE软件三层架构:web层(表现层).业务逻辑层.数据持久层(Sun提供javaEE开发规范) Jav

Struts2框架学习(二) Action

Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器拦截请求,创建代理Action对象,执行方法,返回结果,界面跳转. 拦截器解析请求路径,获取Action的名称,到配置文件中查找action的完整类名,利用反射创建对象. 每请求一次,就创建一个对象,所以action是多例的,也是线程安全的. 2,关系 请求的路径和配置文件的对应关系: 配置文件中包

关于Struts2框架下jsp获取action的布尔值问题

-------------------------------------------------------------------------------------------------------------------- 问题:action中的布尔值无法取值 原因:boolean型变量在MyEclipse自动生成get和set方法会发生改变,改变之后无法对应Struts2的赋值规律 解决办法:按照Struts的赋值规律修改boolean变量的get和set方法,具体修改请看下文: -

struts2框架s:action标签无效原因

1.没在jsp页面中导入标签库 解决方法:在页面中加入<%@ taglib uri="/struts-tags"  prefix="s"  %> 2.action路径拼写有误 解决方法:检查页面中的action路径和struts.xml中action的name是否一致 3.s:action标签中的namespace和struts.xml中对应的action的namespace不一致 解决方法:确保页面的s:action标签中的namespace属性值与s