1.Struts2的Action接收参数的三种形式。

     a. 使用Action的属性接收(直接在action中利用get方法来接收参数):    
              login.jsp

 < form action= "LoginAction" method = "post">
< input type= "text" name = "username">< br />
< input type= "password" name = "userpwd">< br />
< input type= "submit" value = "提交">
         LoginAction.java

  public class LoginAction extends ActionSupport {
  public String username ;
    public String userpwd ;     public String getUsername() {
   return username ;
      }     public void setUsername(String username) {
  this .username = username ;
       }      public String getUserpwd() {
  return userpwd ;
       }       public void setUserpwd(String userpwd) {
   this .userpwd = userpwd ;
       }
  public String execute(){
String result= "input" ;
if (getUsername().equals("lichenyu" )&&getUserpwd().equals( "123456")){
// result="input";
} else {
result= "error" ;
}
return result ;     }
      }
          
    b.使用 DomainModel接收参数:
          login.jsp

< form action= "LoginAction" method = "post">
< input type= "text" name = "user.username">< br />
< input type= "password" name = "user.userpwd">< br />
< input type= "submit" value = "提交">
</ form>
           新建User.java

 public class User {
public String username ;
public String userpwd ; public String getUsername() {
return username ;
}
public void setUsername(String username) {
this .username = username ;
}
public String getUserpwd() {
return userpwd ;
}
public void setUserpwd(String userpwd) {
this .userpwd = userpwd ;
} }
            LoginAction.java(此处必须添加user的set和get方法)

 public class LoginAction extends ActionSupport {
private User user ; public User getUser() {
return user ;
} public void setUser(User user) {
this .user = user ;
} public String execute(){
String result= "input" ;
System. out .println(user .username );
return result ;
}
}
    c.使用 ModelDriven接收参数:
          login.jsp

 public class LoginAction extends ActionSupport {
private User user ; public User getUser() {
return user ;
} public void setUser(User user) {
this .user = user ;
} public String execute(){
String result= "input" ;
System. out .println(user .username );
return result ;
}
}
          User.java同方法b中
          LoginAction.java

public class LoginAction extends ActionSupport implements ModelDriven<User> {
User user= new User();
public String execute(){
String result= "input" ;
System. out .println(user .username );
System. out .println(user .getUsername());
return result ;
}
@Override
public User getModel() {
// TODO Auto-generated method stub
return user ;
}
}
    d.使用request来接收参数:
    使Action支持request后可用此方法进行传值。
  

    HttpServletRequest request=ServletActionContext.getRequest();
    String username=request.getParameter("username");
 
**********************************************************************************************************************
  如若转载请注明出处By奋斗的小蘑菇

Struts2中Action接收参数的四种形式的更多相关文章

  1. Struts2中Action接收参数的方法主要有以下三种:

    Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数(最原始的方式):     a.定义:在Action类中定义属性,创建get和set方法:     b.接 ...

  2. Struts2中Action接收参数的方法

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt112 Struts2中Action接收参数的方法主要有以下三种: 1.使用A ...

  3. Struts2中Action接收参数

    Struts2中Action接收参数的方法主要有以下三种: Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数:     a.定义:在Action类中定义属 ...

  4. Python中函数传递参数有四种形式

    Python中函数传递参数有四种形式 fun1(a,b,c) fun2(a=1,b=2,c=3) fun3(*args) fun4(**kargs) 四种中最常见是前两种,基本上一般点的教程都会涉及, ...

  5. .NET MVC框架中控制器接收参数的四种方式

    1.通过路由中的配置的参数名字直接接收(要求:两者同名) routes.MapRoute(                 name: "Default",             ...

  6. struts2 Action 接收参数的三种方法

    刚学Struts2 时 大家可能遇到过很多问题,这里我讲一下Action 接收参数的三种方法,我曾经在这上面摔过一回.所以要警醒一下自己..... 第一种:Action里声明属性,样例:account ...

  7. C#中方法的参数的四种类型

    C#中方法的参数有四种类型:       1. 值参数类型  (不加任何修饰符,是默认的类型)       2. 引用型参数  (以ref 修饰符声明)       3. 输出型参数  (以out 修 ...

  8. Struts2中访问web元素的四种方式

    Struts2中访问web元素的四种方式如下: 通过ActionContext来访问Map类型的request.session.application对象. 通过实现RequestAware.Sess ...

  9. ssh框架总结之action接收参数的三种方式

    页面将参数传递给action的三种方式 一是通过属性传值: 将页面和action的的属性值保持一致,在action上写上该属性的set和get方法,这样在页面提交参数的时候,action就会调用set ...

随机推荐

  1. C++ 11学习和掌握 ——《深入理解C++ 11:C++11新特性解析和应用》读书笔记(一)

    因为偶然的机会,在图书馆看到<深入理解C++ 11:C++11新特性解析和应用>这本书,大致扫下,受益匪浅,就果断借出来,对于其中的部分内容进行详读并亲自编程测试相关代码,也就有了整理写出 ...

  2. arm cache line,PLD指令

    C中嵌入汇编PLD指令:asm("PLD [%0,#128]": :"r" (psrc) ); copy自官方文档: 4.2.7. PLD.PLDW 和 PLI ...

  3. DPDK编译步骤

    大页内存分配:  NUMA系统(现在的linux一般都是) echo 1024 > /sys/devices/system/node/node0/hugepages/hugepages-2048 ...

  4. Writing in Science

    学习如何撰写科学论文 一.网站学习:https://www.youtube.com/watch?v=PPsocEFCGRU&list=PLUk4uy2jPpXVGXqVhgs352q6jOdI ...

  5. Servlet实现简单CRUD

    1.首先在数据库中建表 create database student create table stu( sno char(10), sna char(10), ) insert stu value ...

  6. [WPF]UserControl的MouseWheel事件触发

    用户控件: <UserControl> <Grid> <TextBox x:Name="textBlock" HorizontalAlignment= ...

  7. 了解Android的编译器

    了解一下Android的编译器并记录下来: Android在4.4以前是使用Dalvik VM的,通过Just In Time(JIT即时编译)来完成编译工作,在Android4.4提供了一种测试版本 ...

  8. swift_Dictionary 字典

    // //  main.Swift //  字典 // //  Created by zhangbiao on 14-6-15. //  Copyright (c) 2014年 理想. All rig ...

  9. mysql执行大量sql语句

    今天需要通过csv上传大量数据到数据库 直接逐行执行insert效率极其低下 后面通过拼接insert,稍微提高了些许效率,但依然不满足 最后发现,把这些插入放入同一个事务里面可以大大提高效率 beg ...

  10. 2015项目timeline

    1. app签到  http://h5.a.rongyi.com/html/app/sign/index.html (pc无效果.app端 20160105) 2.圣诞活动--砍价 http://h5 ...