1.通过属性驱动式

1.首先设置 表单中的数据的name值 如:<input type="text" name="username" value="">
2.你用的是struts2,那么就在java类中写一个变量:变量名和页面上的name值一致 并有这个变量的get 和set方法 ,这样就能取到值了。
[html] view
plain
copy

  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
plain
copy

  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
plain
copy

  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
plain
copy

  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
plain
copy

  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
plain
copy

  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. }

struts2 Action获取表单数据的更多相关文章

  1. struts2 Action获取表单传值(属性,类))

    http://blog.csdn.net/sd0902/article/details/8393157 求大神告知两种方法的不同点 都是写个set方法就行了

  2. Struts2 Action接收表单参数

    struts2 Action获取表单传值    1.通过属性驱动式    JSP:        <form action="sys/login.action" method ...

  3. Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据

    用servlet实现一个注册的小功能 ,后台获取数据. 注册页面: 注册页面代码 : <!DOCTYPE html> <html> <head> <meta ...

  4. ASP.NET MVC 获取表单数据

    public class Person { public string Name{get;set;} public string Phone{get;set;} } view层 @model Mode ...

  5. struts2自动接收表单数据

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

  6. 1.3(学习笔记)Servlet获取表单数据

    一.Servlet获取表单数据 表单提交数据经由Servlet处理,返回一个处理结果显示在页面上, 那么如何获取表单提交的参数进出相应的处理呢? 主要用到以下方法: String  getParame ...

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

    在JSP中,server端程序与client交互最经常使用的方法就是採用表单提交数据.表单提交的方法主要有两种,一种是get方法.还有一种是post方法.两者最大的差别:使用get方法提交的数据会显示 ...

  8. php学习笔记-获取表单数据

    在网页上经常要填写用户名和密码,点击确认按纽之后,用户名和密码经过前端处理之后发送到了服务器上,那么服务器端怎么获取到这些用户提交的数据呢?就是通过超级全局变量 _POST和_GET 先拿_POST做 ...

  9. Servlet 响应 响应相关与重定向 请求 获取表单数据2种方法

    一.HttpServletResponse  (响应) 包括下面三个: 1.响应消息行  HTTP/1.1  200 OK 200是HTTP状态码, 代表请求已成功. (查httpservletres ...

随机推荐

  1. css module

    来源:CSS Modules 用法教程 后面项目地址:https://github.com/947133297/lwj-webpack-demo 关键是打开这一行,表示开启loader的css mod ...

  2. pytest以函数形式的测试用例

    from __future__ import print_function#pytest以函数形式形成测试用例def setup_module(module): print('\nsetup_modu ...

  3. 在Ubuntu 16.04 LTS上用g++和gcc编译C/C++代码错误提示“.../x86_64-linux-gnu/crt1.o: ELF section name out of range”

    (有一些图片我是直接从个人的CSDN博客上复制来的) 最近一个多月来,我曾经多次尝试在Ubuntu 16.04 LTS上使用g++和gcc(这俩好像合起来叫MinGW?)来编译C/C++代码,但是在解 ...

  4. python selenium xpath定位方式

    作者刚开始写博客,格式和语言方面难免存在问题,请大家海涵,如果有问题也请直接指出 xpath是一种在xm文档中定位的语言,详细简介,请自行参照百度百科,本文主要总结一下xpath的使用方法,个人看法, ...

  5. 1013. Battle Over Cities (25)(DFS遍历)

    For example, if we have 3 cities and 2 highways connecting city1-city2 and city1-city3. Then if city ...

  6. mysql 时间类型datetime与timestamp区别比较

    mysql 时间类型datetime与timestamp区别比较 相同点: 显示宽度和格式相同,显示宽度固定在19字符,格式为YYYY-MM-DD HH:MM:SS. 不同点: (1)时间范围不同: ...

  7. RedisDesktopManager 踩坑之旅

    虚拟机上装了redis, 本地Windows的RedisDesktopManager  connect failed. 解决方法: 1.修改 redis.conf 文件 bind 127.0.0.1 ...

  8. CodeForces 592C The Big Race

    公倍数之间的情况都是一样的,有循环节. 注意min(a,b)>t的情况和最后一段的处理.C++写可能爆longlong,直接Java搞吧...... import java.io.Buffere ...

  9. SSH移植

    1. 下载需要的源码,直接google最新的版本吧 mkdir -p ~/arm/fs ;mkdir -p ~/arm/source 下载zlib: zlib-1.2.3.tar.gz 下载ssl : ...

  10. 分布式 OLTP 数据库

    PingCAP招聘职位-拉勾网-最专业的互联网招聘平台 分布式 OLTP 数据库