Struts2中接收参数的几种方式:
1. 用Action的属性:
在action里面定义要接收的参数,并提供相应的setter,getter,可以和提交参数的名称一致,并不用做数据类型的转换。
如:
public class UserAction extends ActionSupport {
private String password;
pirvate String name;
//……对应的setter,getter方法
public void execeute() {
System.out.println(name +”:”+passowrd);
return “success”;
}
}
相应提交方式可以用get和post,如:userAction?password=admin&name=admin
2. 使用Domain Model:
在Action里面不存很多的属性,而是用Model层用到的模型,保存它的一个对象
如:
public class UserAction extends ActionSupport {
private User user;
//……对应的setter,getter方法
public void execeute() {
System.out.println(user.getName() +”:”+user.getPassowrd());
return “success”;
}
}
提交参数:userAction?user.password=1&user.name=admin;这里面的user指向Action里面的user。
3. 使用DTO--数据传输对象
它的作用是接收参数,传递参数,并不是项目中的实体类。如用户注册时,会用到确认密码,所以要先把参数接收过来,做处理后,再传递给相应方法去创建User对象。
Java代码
public class UserDTO {
private String name;
private String password;
private String confirm;
//……对应的setter,getter方法
}
public class UserDTO {
private String name;
private String password;
private String confirm;
//……对应的setter,getter方法
}
可能的Action
public class UserAction extends ActionSupport {
private UserDTO user;
//……对应的setter,getter方法
public void execeute() {
if(checkdate(userDTO userDTO) )//检查数据{
newUser(UserDTO userDTO)//创建User对象
System.out.println(user.name +”:”+user.passowrd);
return “success”;
}
return “fail”;
}
}
提交参数的方式的Domail Model方式的相同。
4.使用ModelDriven:
在创建Action的时候,发现Action实现了ModelDriven接口,去调用 接口的getModel()方法,取到了User。
Java代码
public class UserAction extends ActionSupport implements ModelDriven<User> {
private User user = new User(); //这里要手动的New下
//……对应的setter,getter方法
public void execeute() {
System.out.println(user.name +”:”+user.passowrd);
return “success”;
}
@Override
public User getModel() {
return user;
}
}
分享到:
相关推荐
struts2入门(传参) 简单的struts2登陆实例
JSP struts2 url传参中文乱码解决办法 1.设置struts.xml <constant name=struts.i18n.encoding value=UTF-8> 或是设置struts.properties(我自己没试过) struts.i18n.encoding=UTF-8 2.在web.xml添加编码过滤器 ...
struts2中使用ognl表达式语言传参的方法,简化操作,通过jsp页面传递到Action中
struts2是否可以通过超链接 struts2传参struts2是否可以通过超链接 struts2传参struts2是否可以通过超链接 struts2传参
NULL 博文链接:https://cdxs2.iteye.com/blog/1926357
JSP struts2 url传参中文乱码解决办法.docx
NULL 博文链接:https://wxl-1988.iteye.com/blog/1396791
详细介绍了struts2处理多个请求和域传参
1.解压struts-2.1.6-all.zip 3 2.六个基本包 3 3.初识struts2配置文件 4 (1).web.xml文件 4 (2).struts.xml文件 4 (3).struts.properties(参default.properties) 4 (4)struts-default.xml 4 (5)其它...
NULL 博文链接:https://zfms.iteye.com/blog/1271238
NULL 博文链接:https://cdxs2.iteye.com/blog/1925245
本文档对利用struts2 注解 annotation 实现文件下载作了简单介绍,并有代码为例,希望对学习struts2注解annotation的人有帮助,特别是需要动态传参方面。
NULL 博文链接:https://jayung.iteye.com/blog/1881075
在AJAX请求URL之前 把参数进行encodeURI()转码。 如: 代码如下: var fileName=... 您可能感兴趣的文章:JSP struts2 url传参中文乱码解决办法JSP 开发之Struts2内建自定义拦截器java+jsp+struts2实现发送邮件功
针对对iReport-3.7.5的生成文件在struts2.1.6中的库文件,找了好久才收集到,本人测试了,可以生成日语pdf,xls文件,至于在struts2中的配置传参已经有许多相关的文章了
fleemark 是把网业实现简单模块化 这样分工也明晰一些
5.6.3 传参标签 5.6.4 创建:Bean标签 5.6.5 设置属性值标签 5.6.6 获取属性值标签 5.7 JSP的标准标签库(JSTL) 5.7.1 如何使用JSTL 5.7.2 条件标签 5.7.3 循环标签 5.8 小结 第6章 用Servlet和JSP...
5.6.3 传参标签 5.6.4 创建:Bean标签 5.6.5 设置属性值标签 5.6.6 获取属性值标签 5.7 JSP的标准标签库(JSTL) 5.7.1 如何使用JSTL 5.7.2 条件标签 5.7.3 循环标签 5.8 小结 第6章 用...
ajaxfileupload.js多文件上传和单文件,可传参,是做多图片上传时收集的,可进行多图片上传,进行后台传参,还有相关struts2相关示例.