Struts2_三种传参数方法

转载 于 2014-06-27 14:39:45 发布 · 377 阅读
· 0
· 0

java 同时被 3 个专栏收录
49 篇文章
订阅专栏
web
6 篇文章
订阅专栏
struts2
3 篇文章
订阅专栏
本文详细介绍了Struts2框架中的三种参数传递方式:通过属性传参数、通过域模型传参数以及通过模型驱动传参数,并提供了具体示例代码。

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

Struts2_三种传参数方法


1、通过属性传参数(Attr)
UserAction.java
package com.bebig.struts2.user.action;


import com.opensymphony.xwork2.ActionSupport;


public class UserAction extends ActionSupport {
    private String name;
    private int age;


    public String add() {
        System.out.println("name:"+name);
        System.out.println("age:"+age);
        return SUCCESS;
    }


    public int getAge() {
        return age;
    }


    public String getName() {
        return name;
    }


    public void setAge(int age) {
        this.age = age;
    }


    public void setName(String name) {
        this.name = name;
    }
}


调用方法:
<a href="user/userAdd.action?name=Don&age=26">添加用户</a>
2、通过域模型传参数(Domain Model)
UserAction.java
package com.bebig.struts2.user.action;


import com.bebig.struts2.user.dto.UserDTO;
import com.bebig.struts2.user.model.User;
import com.opensymphony.xwork2.ActionSupport;


public class UserAction extends ActionSupport {
    // 通过域模型传参数
    private User user;


    // 通过数据传输对象传参数
    // private UserDTO userDTO;


    public User getUser() {
        return user;
    }


    public void setUser(User user) {
        this.user = user;
    }


    public String add() {
        System.out.println("name:" + user.getName());
        System.out.println("age:" + user.getAge());
        // System.out.println("name:"+userDTO.getName());
        // System.out.println("age:"+userDTO.getAge());
        return SUCCESS;
    }


    // public void setUserDTO(UserDTO userDTO) {
    // this.userDTO = userDTO;
    // }
    //
    // public UserDTO getUserDTO() {
    // return userDTO;
    // }
}


User.java
package com.bebig.struts2.user.model;


public class User {
    private String name;
    private int age;


    public int getAge() {
        return age;
    }


    public String getName() {
        return name;
    }


    public void setAge(int age) {
        this.age = age;
    }


    public void setName(String name) {
        this.name = name;
    }
}


UserDTO.java
package com.bebig.struts2.user.dto;
//数据传输对象
public class UserDTO {
    private String name;
    private String password;
    private String comfirmPassword;


    public String getPassword() {
        return password;
    }


    public void setPassword(String password) {
        this.password = password;
    }


    public String getComfirmPassword() {
        return comfirmPassword;
    }


    public void setComfirmPassword(String comfirmPassword) {
        this.comfirmPassword = comfirmPassword;
    }


    private int age;


    public int getAge() {
        return age;
    }


    public String getName() {
        return name;
    }


    public void setAge(int age) {
        this.age = age;
    }


    public void setName(String name) {
        this.name = name;
    }
}


调用方法:
<a href="user/userAdd.action?user.name=Don&user.age=26">添加用户</a>
3、通过模型驱动传参数(Model Driven)
UserAction.java
package com.bebig.struts2.user.action;


import com.bebig.struts2.user.model.User;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;


public class UserAction extends ActionSupport implements ModelDriven<User> {
    private User user = new User();




    public String add() {
        System.out.println("name:"+user.getName());
        System.out.println("age:"+user.getAge());
        return SUCCESS;
    }
    @Override
    public User getModel()
    {
        return user;
    }


}


User.java
(源代码同上)
调用方法:
<p>使用ModelDriven传参数</p>

<a href="user/userAdd.action?name=Don&age=26">添加用户</a>



转自--http://www.cppblog.com/fenglin/articles/129212.html

确定要放弃本次机会?
福利倒计时
: :

立减 ¥

普通VIP年卡可用
立即使用
crq1205
关注 关注
  • 0
    点赞
  • 踩
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
  • 分享
    复制链接
    分享到 QQ
    分享到新浪微博
    扫一扫
  • 举报
    举报
专栏目录
参与评论 您还未登录,请先 登录 后发表或查看评论
crq1205

博客等级

码龄15年
80
原创
52
点赞
156
收藏
33
粉丝
关注
私信

TA的精选

  • 新 DDD中限界上下文映射

    469 阅读

  • 新 Postgresql12基于时间点恢复

    1153 阅读

  • 热 GC(Allocation Failure)解读

    22685 阅读

  • 热 Can't connect to MySQL server on '192.168.1.107' (113)

    20874 阅读

  • 热 MyBatis-Spring-Boot-Starter简要说明

    20296 阅读

查看更多

2024年1篇
2023年7篇
2022年7篇
2021年11篇
2020年18篇
2019年12篇
2018年3篇
2017年12篇
2016年4篇
2015年8篇
2014年18篇
2013年2篇
2012年2篇

分类专栏

  • 深入理解Java虚拟机
  • django
    3篇
  • 计算机
    3篇
  • 网络
    2篇
  • docker
    1篇
  • mysql
    3篇
  • Dubbo
    2篇
  • 经济
  • linux
    21篇
  • java
    49篇
  • struts2
    3篇
  • web
    6篇
  • perl
  • sql
  • tomcat
    3篇
  • java安装
    1篇
  • pyhon
    6篇
  • ES
    7篇
  • mybatis-springboot
    2篇
  • 语言
    2篇

展开全部 收起

上一篇:
Struts2,spring前台后台的数据传递及配置解析
下一篇:
【Hibernate总结系列】....hbm.xml配置

目录

展开全部

收起

目录

展开全部

收起

上一篇:
Struts2,spring前台后台的数据传递及配置解析
下一篇:
【Hibernate总结系列】....hbm.xml配置

分类专栏

  • 深入理解Java虚拟机
  • django
    3篇
  • 计算机
    3篇
  • 网络
    2篇
  • docker
    1篇
  • mysql
    3篇
  • Dubbo
    2篇
  • 经济
  • linux
    21篇
  • java
    49篇
  • struts2
    3篇
  • web
    6篇
  • perl
  • sql
  • tomcat
    3篇
  • java安装
    1篇
  • pyhon
    6篇
  • ES
    7篇
  • mybatis-springboot
    2篇
  • 语言
    2篇

展开全部 收起

目录

评论
被折叠的  条评论 为什么被折叠? 到【灌水乐园】发言
查看更多评论
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值