您的位置:首页 > 编程语言 > Java开发

Struts2的类型转换(1):基于ognl的类型转换

2013-06-28 18:49 393 查看
借助于ognl表达式的支持,Struts2允许以一种简单方式将请求参数转换成复合类型。

LoginAction.java :

public class LoginAction extends ActionSupport{

private Person person;

public Person getPerson() {
return person;
}

public void setPerson(Person person) {
this.person = person;
}

public String execute(){
//some code
return "success";
}
}
Person.java :

public class Person {

private String name;
private String password;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Person() {
super();
}

}
login.jsp :

<%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<s:form action="">
<s:textfield name="person.name" label="姓名"></s:textfield><br>
<s:password name="person.password" label="密码"></s:password>
<s:submit value="确定"></s:submit>
</s:form>
</body>
</html>
通过这种方式,Struts2可以将普通请求参数转换成复合类型对象,但在使用这种方式时有如下两点需要注意:

① 因为Struts2将通过反射来创建一个复合类(Person)的实例,因此必须为该复合类提供一个无参数的构造器

② 为复合类(Person)提供setter和getter方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: