Struts框架中常量文件的使用

来源:互联网 发布:w3c php手册 编辑:程序博客网 时间:2024/05/16 18:18

对于Struts应用,提倡将属性key常量定义在一个java文件Constants.java中

把一些常量文件定义在Constants.java中可以提高Action类的独立性。当属性key文件发生改变时,只要修改Constants.java文件,而不需要修改Action类。

public final class Constants{

public static final String PERSON_KEY="personbean";

public static final String LOGIN_USER_KEY = "loginUser";

 public static final String USER_LIST_KEY = "users";

}

一.Action类把数据存放在request范围内,以便向视图组件传递信息。

//Action访问(更新)模型组件

PersonBean pb=new PersonBean(); 

pb.setUserName(userName);

pb.saveToPeristentStore();

//Action类把数据(PersonBean对象)存放在request范围内

request.setAttribute(Constants.PERSON_KEY,pb);

//hello.jsp通过一个名为Constants.PERSON_KEY的属性key来读取PersonBean对象:

<logic:present name=Constants.PERSON_KEY  scope="request">

<h2>

Hello<bean:write name=Constants.PERSON_KEY  property="userName"/>!<p>

</h2>

<logic:present>

二..Action类把数据存放在session范围内

Action中:

if (User.checkUser(db, username, password)
    && "admin".equals(User.getUserGrade(db, username))) {
   User user = User.search(db, username, password);
   session.setAttribute(Constants.LOGIN_USER_KEY, user);
   
   Vector userVector = User.searchUsers(db);
   session.setAttribute(Constants.USER_LIST_KEY, userVector);

Jsp中:

 Vector userVector = (Vector) session
   .getAttribute(Constants.USER_LIST_KEY);

 

原创粉丝点击