Struts2之Action开发模式

mac2022-06-30  90

一、Struts2模型  

  1、作用范围

  Struts2提供了Map类型的request、session、application,可以从ActionContext对象中获得,它是Action执行的上下文。通常使用ActionContext对象的getContext()方法进行创建,如下,

1 Map request = ActionContext.getContext.get("request") ; View Code

  同样的,ActionContext类提供getSession()、getApplication()方法获得session和application。返回的Map对象的作用范围分别会HttpSession和ServletContext中。

  2、域模型DomainModel

  将一些属性信息封装成一个实体对象,例如将一个用户信息数据保存到数据库中,只需要传一个User对象即可,Struts2框架中个,提供了操作领域对象的方法,可以在Action对象中引用某一个实体对象,并且HTTP请求中的参数值可以注入到实体对象中的属性上。这种方式就是Struts2提供的DomainModel的方式。

  其中,user类中定义了四个属性。

1 public class UserAction extends ActionSupport { 2 private User user; 3 4 public User getUser() { 5 return user; 6 } 7 8 public void setUser(User user) { 9 this.user = user; 10 } 11 12 @Override 13 public String execute() throws Exception { 14 System.out.println("username: "+user.getUsername()); 15 System.out.println("password: "+user.getPassword()); 16 17 return SUCCESS; 18 } 19 } View Code   <s:form action="registr.action"> <s:textfield name="username" label="username"></s:textfield> <s:password name="password" label="password"></s:password> <s:radio name="sex" list="#{1:'male',0:'female'}" label="sex"></s:radio> <s:submit value="submit"></s:submit> </s:form>

  3、驱动模型ModelDriven

  在Struts2框架中个,提供一个名称为ModelDriven的接口,Action对象可以通过实现此接口获取指定的实体对象,获取的方式是时间ModelDriven接口提供的getModel()方法进行获取。

  

 

转载于:https://www.cnblogs.com/Wyao/p/7015956.html

最新回复(0)