gpt4 book ai didi

java - struts2 中 HttpServletResponse 的任何其他内置方法

转载 作者:太空宇宙 更新时间:2023-11-04 07:20:17 25 4
gpt4 key购买 nike

我使用下面的代码使用struts2-hibernate获取json,在方法getZone中我使用HttpServletResponse response= (HttpServletResponse) ActionContext.getContext().get(StrutsStatics.HTTP_RESPONSE);来返回json。该代码工作正常,但我有点困惑,想知道 struts2 中是否还有其他方法可以实现相同的工作,例如使用其他 struts2 内置方法来实现 HttpServletResponse。

谁能告诉我一些解决方案

public void getZone() {
HttpServletResponse response= (HttpServletResponse) ActionContext.getContext().get(StrutsStatics.HTTP_RESPONSE);
try {
JSONObject zoneAreas = Hibernateclass.getZone(Id, organId);
response.getWriter().write(zoneAreas.toString());
} catch (IOException e) {
e.printStackTrace();
}
}

最佳答案

在Struts2中,可以使用以下两种方式获取HttpServletResponse对象

1)通过ServletActionContext访问HttpServletResponse

public String execute() {
HttpServletResponse response = ServletActionContext.getResponse();

return "SUCCESS";
}

2)通过实现ServletResponseAware接口(interface)访问HttpServletResponse并重写setServletResponse()方法。

public class LoginAction implements ServletResponseAware{

HttpServletResponse response;

//business logic
public String execute() {
Locale locale = getServletResponse().getLocale();
return "SUCCESS";
}

public void setServletResponse(HttpServletResponse response) {
this.response = response;
}
public HttpServletResponse getServletResponse() {
return this.response;
}
}

在Struts 2文档中,推荐使用ServletResponseAware

关于java - struts2 中 HttpServletResponse 的任何其他内置方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19441775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com