struts2 result类型为redirectAction时的参数传递

本文详细介绍了如何通过Action类实现取消订单的功能,并通过GetOrderListByIdAction类获取订单列表,包括订单数量和产品信息的展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

action部分

<!-- 取消订单 -->
		<action name="cancelOrderAction" class="com.hcj.action.database.user.CancelOrderAction">
			<result type="redirectAction">
				<!-- actionName指定要调整的action名,这里actionName的值固定 -->
				<param name="actionName">getOrderListByIdAction</param>
				<!-- 这里的id为GetOrderListByIdAction的属性,这里把user_id作为id的值传递过去 -->
				<param name="id">${user_id}</param>
			</result>
		</action>


 GetOrderListByIdAction类

package com.hcj.action.database;

import java.util.List;

import com.hcj.model.Order;
import com.hcj.service.UserService;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class GetOrderListByIdAction extends ActionSupport {
	private UserService userService;
	
	private int id;
	
	public UserService getUserService() {
		return userService;
	}

	public void setUserService(UserService userService) {
		this.userService = userService;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	@Override
	public String execute() throws Exception {
		List<Order> orderList = userService.getOrderListById(id);
		System.out.println("订单数量为" + orderList.size() + "产品名称为" + orderList.get(0).getTea().getName());
		ActionContext.getContext().put("orderList", orderList);
		return super.execute();
	}
}


CancelOrderAction类

package com.hcj.action.database;

import com.hcj.service.UserService;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class CancelOrderAction extends ActionSupport {
	private UserService userService;
	
	private int order_id;
	
	private int user_id;
	

	public UserService getUserService() {
		return userService;
	}

	public void setUserService(UserService userService) {
		this.userService = userService;
	}

	
	public int getOrder_id() {
		return order_id;
	}

	public void setOrder_id(int order_id) {
		this.order_id = order_id;
	}

	public int getUser_id() {
		return user_id;
	}

	public void setUser_id(int user_id) {
		this.user_id = user_id;
	}

	@Override
	public String execute() throws Exception {
		// TODO Auto-generated method stub
		userService.cancelOrder(order_id);
		return SUCCESS;
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值