在动作类中访问Servlet的API
第一种方式:使用ServletActionContext类
public String execute() throws Exception {
HttpServletRequest request = ServletActionContext.getRequest();
HttpServletResponse response = ServletActionContext.getResponse();
ServletContext application = ServletActionContext.getServletContext();
HttpSession session = request.getSession();
System.out.println(request);
System.out.println(response);
System.out.println(application);
System.out.println(session);
return null;
}
这是一种比较好的方式,我们一般用这种方式就可以了。
第二种方式:使用实现接口的方式
public class TestAction extends ActionSupport implements ServletRequestAware,ServletResponseAware,ServletContextAware{
private HttpServletRequest request;
private HttpServletResponse response;
private ServletContext application;
@Override
public String execute() throws Exception {
System.out.println(request);
System.out.println(response);
System.out.println(application);
System.out.println(session);
return null;
}
public void setServletContext(ServletContext application) {
this.application = application;
}
public void setServletResponse(HttpServletResponse response) {
this.response = response;
}
public void setServletRequest(HttpServletRequest request) {
this.request = request;
}
}
这种方法稍麻烦一点。
分文件编写框架配置文件
我们的每一个配置文件负责不同功能的配置,我们可以通过include来包含进这些xml文件
<struts>
<constant name="struts.devMode" value="true"></constant>
<include file="struts_role.xml"></include>
<include file="struts_user.xml"></include>
</struts>