码迷,mamicode.com
首页 > 其他好文 > 详细

action中定义的方法能不能带参数?

时间:2015-03-20 15:48:24      阅读:366      评论:0      收藏:0      [点我收藏+]

标签:

今天在使用Struts2.0做登录时,突然出现java.lang.NoSuchMethodException的问题技术分享

检查了许久发现是在Action中在定义方法出现问题,自定义的方法是不能带参数的,可以通过别的方式去带一些动态的参数值,xxx.action?param=xxxx,用Request去取这个参数。如果你带了参数,在页面要执行方法时会找不到此方法,就会出现上面的错误。

Struts2中Action接收参数的方法主要有以下三种:
1.使用Action的属性接收参数:
    a.定义:在Action类中定义属性,创建get和set方法;
    b.接收:通过属性接收参数,如:userName;
    c.发送:使用属性名传递参数,如:user1!add?userName=Magci;
2.使用DomainModel接收参数:
    a.定义:定义Model类,在Action中定义Model类的对象(不需要new),创建该对象的get和set方法;
    b.接收:通过对象的属性接收参数,如:user.getUserName();
    c.发送:使用对象的属性传递参数,如:user2!add?user.userName=MGC;
3.使用ModelDriven接收参数:
    a.定义:Action实现ModelDriven泛型接口,定义Model类的对象(必须new),通过getModel方法返回该对象;
    b.接收:通过对象的属性接收参数,如:user.getUserName();
    c.发送:直接使用属性名传递参数,如:user2!add?userName=MGC

以下只介绍通过Action的属性接收参数例子

jsp页面代码:

技术分享   

 Action中通过set、get方法获取,代码:

技术分享

注意的是loginAcc(Account account)这样写是错误的。以上仅代表个人观点,欢迎大家拍砖(*^_^*)

 

action中定义的方法能不能带参数?

标签:

原文地址:http://www.cnblogs.com/alvin-perfect/p/4353510.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!