问题描述
- 新手问:ssh中BaseAction的作用
- public class BaseAction extends ActionSupport {
public String jsonString;public void outJsonString(String str) { getResponse().setContentType(""text/javascript;charset=UTF-8""); outString(str);}/* * public void outJson(Object obj) { * outJsonString(JSONObject.fromObject(obj).toString()); } * * public void outJsonArray(Object array) { * outJsonArray(JSONArray.fromObject(array).toString()); } */public void outString(String str) { try { PrintWriter out = getResponse().getWriter(); out.write(str); } catch (IOException e) { e.printStackTrace(); }}public void outXMLString(String xmlStr) { getResponse().setContentType(""application/xml;charset=UTF-8""); outString(xmlStr);}public HttpServletRequest getRequest() { return ServletActionContext.getRequest();}public HttpServletResponse getResponse() { return ServletActionContext.getResponse();}public HttpSession getSession() { return getRequest().getSession();}public ServletContext getServletContext() { return ServletActionContext.getServletContext();}public String getRealyPath(String path) { return getServletContext().getRealPath(path);}
解决方案
who can tell me~!
解决方案二:
我在项目中也遇到了这样的问题,刚刚解决,想查一下Baseaction的用法,顺便为你解决一下问题。
BaseAction类似于supportAction,在内部实现了excute方法,在我们的框架struts2中action需要重写excute()方法的,但是我们可以通过在action.xml 配置文件中来定义result标签来标记success从而来实现跳转的jsp界面,这样在action中就不用去重写execute方法了。
解决方案三:
BaseAction 基于ActionSupport 再次封装你需要的东西。
方便其他子类的调用。
时间: 2025-01-01 23:23:01