这里主要介绍两种方式
第一种:域驱动
服务器以封装好的对象方式接收来自客户端的数据方式,将用户提交的多个数据以封装对象的方式进行整体接收
1.新建一个包,创建一个实体类
2.注入对象,注意导包
3.struts.xml
4.前台界面 index.jap
引入标准标签库
前台界面显示
用form提交
<!--Struts特有 :OGNL表达式-->
<s:form action="Login" method="post">
<s:textarea label="姓名" name="user.name"/>
<s:textarea label="年龄" name="user.age"/>
<s:submit/>
</s:form>
5获取值
<!--获取值 OGNL取值只需要写value ,无序表达式 -->
姓名:<s:property value="user.name"/>
年龄:<s:property value="user.age"/>
6查看debug
<s:debug/>
第二种模型驱动注入
属性驱动
服务器端接收来自客户端的离散数据的方式,将用户提交的数据原封不动的接收
1.继承ModelDriven接口
2.重写getModel方法
继承ModelDriven接口,实现方法,声明对象,添加setter和getter方法
public class LoginAction implements ModelDriven<User> {
//声明对象
private User user;
public String execute(){
System.out.println("执行了()...");
return "success";
}
@Override
public User getModel() {
if(user==null){
user= new User();
}
return user;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
//get和set方法
}
form表单
<!--Struts特有 :OGNL表达式-->
<s:form action="Login" method="post">
<s:textarea label="姓名" name="name"/>
<s:textarea label="年龄" name="age"/>
<s:submit/>
</s:form>
接收
<!--获取值 OGNL取值只需要写value ,无序表达式 -->
姓名:<s:property value="name"/>
年龄:<s:property value="age"/>