创建好的 BaseAction , 在其中实现常用的方法,开发就比较轻松.
我们项目中实现基本的 request , response 获得, Json 数据转换 。
/**
* Action基类
*
*/
public class BaseAction extends ActionSupport implements ServletRequestAware, ServletResponseAware {
/**
* 返回json字符串
*/
protected void renderJSON(Map map) {
JSONObject jsonObjectFromMap = JSONObject.fromObject(map);
renderText(jsonObjectFromMap.toString());
}
/**
* 直接输出字符�
*/
protected String renderText(String text) {
return render(text, "text/plain;charset=UTF-8");
}
/**
* 直接输出HTML.
*/
protected String renderHtml(String html) {
return render(html, "text/html;charset=UTF-8");
}
/**
* 直接输出XML.
*/
protected String renderXML(String xml) {
return render(xml, "text/xml;charset=UTF-8");
}
/**
* Description: 直接输出Text
* @param result 输出的内容 removeCache 是否清楚cache
* @return
*/
protected void writeResult(String result, boolean removeCache) {
PrintWriter writer = null;
try {
if(removeCache) {
response.setHeader("Pragma", "No-cache");// 清除缓存
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
}
response.setContentType("text/html; charset=utf-8");
writer = response.getWriter();
writer.print(result);
writer.flush();
} catch (IOException e) {
} finally {
if (writer != null) {
writer.close();
}
}
}
@Override
public void setServletRequest(HttpServletRequest request) {
this.request = request;
}
@Override
public void setServletResponse(HttpServletResponse response) {
this.response = response;
}
}
分享到:
相关推荐
VC++实现动态创建对话框,非常好的C++源代码
打开一个对话框,然后输入要创建的数据库名称,选择好路径后保存。这是通用方法,核心就是:。创建数据库.创建 (“ADOX.Catalog”, )。创建数据库.通用方法 (“Create”, “Provider=Microsoft.Jet.OLEDB.4.0;Data ...
创建学员信息表--创建唯一索引--修改学员信息表添加主键和检查约束
这是一款很好的快捷创建ftp站点的软件,可能的你电脑因为有些原因无法安装iis。但是用了这软件依然可以快捷创建ftp站点
创建表空间、创建用户以及授权、查看权限 创建表空间、创建用户以及授权、查看权限
C# 创建目录列表C# 创建目录列表C# 创建目录列表C# 创建目录列表C# 创建目录列表C# 创建目录列表C# 创建目录列表
创建线程创建线程创建线程创建线程创建线程创建线程创建线程创建线程
C++创建自定义文件名的文件 C++创建自定义文件名的文件 C++创建自定义文件名的文件 C++创建自定义文件名的文件 C++创建自定义文件名的文件 C++创建自定义文件名的文件 C++创建自定义文件名的文件 C++创建自定义...
进程的创建 很好的东西,还有代码`` (1)加深对操作系统系统调用功能和进程概念的理解,明确进程和程序的区别。 (2)掌握Linux中进程的创建方法,进一步理解进程的并发执行。
linux线程池创建c实现 linux线程池创建c实现 linux线程池创建c实现 linux线程池创建c实现 linux线程池创建c实现 linux线程池创建c实现
用 Python 和 MySQLdb 创建 MySQL 数据库,可以根据自己的需要再添加字段和按需赋值。
c#通过纯代码创建桌面快捷方式、创建程序菜单项、将网页添加到收藏夹
Delphi 动态创建panel,在panel上再创建TRzBackground,显示背景,创建TBmpButton,有鼠标移动事件和单击事件
MFC实现动态创建COMBOX控件以及CHECKBOX控件的例子,还有在类里头创建线程的应用
图的创建,以及利用图的几种不同的存储方法而实现的不同的创建方法,对无向图,有向图,无向网,以及有向网都与很好的说明,是你学习数据结构时必不可少的好东西.,,,,
本文描述如何用 Visual C++ 创建 Windows NT 服务程序。创建该服务仅用到一个 C++ 类,这个类提供服务与操作系统之间一个简单的接口。使用这个类实现自己的服务非常简单,只要改写少数几个基类中的虚拟函数即可。在...
动态创建对话框动态创建对话框动态创建对话框1
泛微流程创建接口,可调用WorkflowServiceImpl.doCreateWorkflowRequest创建明细表及主表数据,供自己参考
封装好的自动创建多层文件夹函数: // 如此调用,则会在C:\123目录下创建名为111的文件夹,111文件夹下又自动创建222,依次类推 CreateMultilFolder("C:\123", "111/222/333")