博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
struts2 Action获取表单传值
阅读量:5208 次
发布时间:2019-06-14

本文共 1632 字,大约阅读时间需要 5 分钟。

博客分类:
 

1.通过属性驱动式  

 

Jsp代码  
  1. <form action="sys/login.action" method="post">    
  2.     <input type="text" name="username">    
  3.     <input type="submit" value="submit">    
  4. </form>  

 

  

      
Action:直接通过get、set方法获取。

Java代码  
  1. public class sysAction extends ActionSupport{    
  2.     private String username;    
  3.    
  4.     public String login() throws Exception {    
  5.         System.out.println(username);    
  6.         return SUCCESS;    
  7.     }    
  8.    
  9.     public String getUsername() {    
  10.         return username;    
  11.     }    
  12.     public void setUsername(String username) {    
  13.         this.username= username;    
  14.     }    
  15. }     

 

      

2.模型驱动方式,必须要实现ModelDriven<T>接口。对于要传入多个model第二种方式不方便  

 

Jsp代码  
  1. <form action="sys/login.action" method="post">    
  2.     <input type="text" name="username">    
  3.     <input type="submit" value="submit">    
  4. </form>          

 

Action:必须实现getModel() 方法

Java代码  
  1. public class sysAction extends ActionSupport implements ModelDriven<User>{    
  2.     private User user;    
  3.    
  4.     public String login() throws Exception {    
  5.         System.out.println(getModel().getUsername());    
  6.         return SUCCESS;    
  7.     }    
  8.    
  9.     public User getModel() {    
  10.         if (null == user) {    
  11.             return user = new User();    
  12.         }    
  13.         return user;    
  14.     }    
  15. }     

 

      
3.第三种方式可以完全不实现ModelDriven<T>,也可使用多个model对象的属性。(常用)

Jsp代码  
  1. <form action="sys/login.action" method="post">    
  2.     <input type="text" name="user.username">    
  3.     <input type="text" name="teacher.level">    
  4.     <input type="submit" value="submit">    
  5. </form>    

 

Action: 必须提供set方法

Java代码  
  1. public class sysAction extends ActionSupport{    
  2.     private User user;    
  3.     private Teacher teacher;    
  4.    
  5.     public String login() throws Exception {    
  6.         System.out.println(user.getUsername());    
  7.         System.out.println(teacher.getLevel());    
  8.         return SUCCESS;    
  9.     }    
  10.    
  11.     public void setUser(User user) {    
  12.         this.user = user;    
  13.     }    
  14.     public void setTeacher(Teacher teacher) {    
  15.         this.teacher = teacher;    
  16.     }    
  17. }    

 

转载于:https://www.cnblogs.com/2027437606qq/p/5109710.html

你可能感兴趣的文章
django ORM创建数据库方法
查看>>
Win8下,以管理员身份启动VS项目
查看>>
[bzoj1025][SCOI2009]游戏 (分组背包)
查看>>
BZOJ 1629 [Usaco2005 Nov]Cow Acrobats:贪心【局部证明】
查看>>
创建Oracle synonym 详解
查看>>
【SQL】181. Employees Earning More Than Their Managers
查看>>
uva 1335 Beijing Guards
查看>>
php7 新特性整理
查看>>
Nodejs.Electron(Nodejs的图形界面开发)安装和试用
查看>>
RabbitMQ、Redis、Memcache、SQLAlchemy
查看>>
20190716NOIP模拟赛T2 通讯(tarjan缩点+贪心)
查看>>
退出shell 脚本
查看>>
Lua 字符串
查看>>
markdown简单语法总结
查看>>
一些基础的定义及事实集合
查看>>
linux查看端口占用
查看>>
hdu - 1226 超级密码 (bfs)
查看>>
Qt重写paintEvent方法遇到的问题
查看>>
Sql常见面试题 受用了
查看>>
关闭进程&关闭消息队列
查看>>