1.通过属性驱动式

1.首先设置 表单中的数据的name值 如:<input type="text" name="username" value="">
2.你用的是struts2,那么就在java类中写一个变量:变量名和页面上的name值一致 并有这个变量的get 和set方法 ,这样就能取到值了。
[html] view plaincopy
  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] view plaincopy
  1. public class sysAction extends ActionSupport{
  2. private String username;
  3. public String login() throws Exception {
  4. System.out.println(username);
  5. return SUCCESS;
  6. }
  7. public String getUsername() {
  8. return username;
  9. }
  10. public void setUsername(String username) {
  11. this.username= username;
  12. }
  13. }

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

[html] view plaincopy
  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] view plaincopy
  1. public class sysAction extends ActionSupport implements ModelDriven<User>{
  2. private User user;
  3. public String login() throws Exception {
  4. System.out.println(getModel().getUsername());
  5. return SUCCESS;
  6. }
  7. public User getModel() {
  8. if (null == user) {
  9. return user = new User();
  10. }
  11. return user;
  12. }
  13. }

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

[html] view plaincopy
  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] view plaincopy
  1. public class sysAction extends ActionSupport{
  2. private User user;
  3. private Teacher teacher;
  4. public String login() throws Exception {
  5. System.out.println(user.getUsername());
  6. System.out.println(teacher.getLevel());
  7. return SUCCESS;
  8. }
  9. public void setUser(User user) {
  10. this.user = user;
  11. }
  12. public void setTeacher(Teacher teacher) {
  13. this.teacher = teacher;
  14. }
  15. }

转载于:https://www.cnblogs.com/baoendemao/p/3804774.html

struts2 Action获取表单数据相关推荐

  1. struts2入门之action获取表单提交数据

    action获取表单提交数据,有三种方式: 1.根据ActionContext对象获取: 2.利用ServletActionContext类获取表单数据:(其实就是可以获取HttpServletReq ...

  2. 观看慕课老师milanlover视频Tomcat装在Servlet的三种情况+Servlet获取表单数据+Servlet相对路径

    在src新建TestServlet1: package servlet;import java.io.IOException; import java.io.PrintWriter;import ja ...

  3. jsp调用struts,jsp调用action,action获取表单提交的参数

    自定义action类.LgqAction: @Component @Scope(value="prototype") public class LgqAction {        ...

  4. PHP获取表单数据的方法有几种,如何实现PHP获取表单数据与HTML嵌入PHP脚本

    如何实现PHP获取表单数据与HTML嵌入PHP脚本 导语:如何实现PHP获取表单数据与HTML嵌入PHP脚本,下面是小编给大家提供的操作讲解,大家可以参考阅读,更多详情请关注应届毕业生考试网. 常用的 ...

  5. react如何获取表单数据

    react如何获取表单数据? 分为两种情况:第一种是每次输入都会更新状态第二种是只有用到的时候才获取(会用大量的ref,不推荐) 这里主要介绍第一种 //这是我们要操作的数据state = {resu ...

  6. python获取表单数据的代码_使用flask和python从html表单获取表单数据

    我正在尝试在按下submit时从文本字段中获取表单数据,以便将其放入json格式并作为另一个页面访问json数据,该页面将是localhost:5000/info.每次我试图用request.form ...

  7. struts2自动接收表单数据

    提交页面主要代码: <form method="post" action="messageAction">    <input type=&q ...

  8. servlet获取表单数据

    1.sevlet获取表单数据 在很多的情况下,我们需要在浏览器,Web服务器和后台程序之间传递数据.浏览器使用两种方法可将这些信息传递到Web服务器,分别为Get方法和Post方法. 2.Get方法, ...

  9. JSP简单练习-获取表单数据

    在JSP中,服务器端程序与客户端交互最常用的方法就是采用表单提交数据.表单提交的方法主要有两种,一种是get方法,另一种是post方法,两者最大的区别:使用get方法提交的数据会显示在浏览器的地址栏中 ...

最新文章

  1. c语言运动会分数统计系统_初学C语言Bug大赏
  2. 在android上移植ios
  3. Verilog读写文件
  4. One-Dimensional Battle Ships CodeForces - 567D
  5. Android之内核学习笔记
  6. 自动化测试中的测试执行自动化
  7. 响应式开发---网页的布局方式、媒体查询、栅格化布局、less语言
  8. php笔记--php安装
  9. sql distinct去除重复
  10. ExoPlayer之SampleQueue
  11. js通过pako压缩数据后java解压数据
  12. c语言 获取中文首字母,C语言获取汉字拼音首字母
  13. usb计算机采集卡,关于usb视频采集卡 hdmi设置你可能不知道
  14. 零基础学前端系列教程 | 和前端谈恋爱的第004天——打扮漂亮
  15. Android 解析Excel (xls格式)
  16. text/css什麼意思
  17. 计算机基础及word实验原理,大学计算机基础实验3-Word 文档的图文混排
  18. 十七、缓存预热、缓存雪崩、缓存击穿、缓存穿透、性能指标监控等企业级解决方案
  19. 武邑中学2021高考成绩查询,武邑中学2019高考喜报成绩、清华北大本一上线人数情况...
  20. 全新红娘交友系统定制版源码 | 相亲交友小程序源码 全开源可二开(已更新)

热门文章

  1. 芯片:设计、制造、封测
  2. U_boot 的 bootcmd 和bootargs参数详解
  3. win7开启uasp协议_UASP与USB模式切换工具(SwitchUA官方版下载_UASP与USB模式切换工具(SwitchUASP) v1.0免费版 - Win7旗舰版...
  4. vue 改变domclass_手机上的大片制作软件——如何使用VUE
  5. python的xlrd怎么安装_python接口测试,第三方包xlrd和xlutils,怎么安装
  6. php mysql 写法_php 类的写法
  7. 国内厂商对鸿蒙系统的态度,鸿蒙系统4月上线,国内手机厂商态度很关键!小米、中兴出乎意料...
  8. python关闭浏览器删除session_Django操作session 的方法
  9. 【TensorFlow-serving】初步学习模型部署
  10. Netty源码分析第5章(ByteBuf)----第5节: directArena分配缓冲区概述