码迷,mamicode.com
首页 > Web开发 > 详细

Tomcat中HttpServletResponse的实现类

时间:2015-06-21 15:50:08      阅读:264      评论:0      收藏:0      [点我收藏+]

标签:

我们经常会自定义servlet然后重写doget和dopost方法

public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
			response.setContentType("text/html;charset=utf-8");
			ServletInputStream in = request.getInputStream();
			String s = IOUtils.toString(in, "utf-8");
			System.out.println(s);
			
	}


 

参数中有HttpServletRequest和HttpServletResponse他们都是接口,那么实现类是什么?

public class HttpServletResponseWrapper extends ServletResponseWrapper
        implements HttpServletResponse {


 

实现类是ServletResponseWrapper,这个类中有一个ServletResponse成员,但是他是接口,实现类是ResponseFacade。

public class ServletResponseWrapper implements ServletResponse {
    private ServletResponse response;


 

在自定义的servlet中我们经常会设置字符编码。

response.setContentType("text/html;charset=utf-8");

他调用了ServletResponseWrapper的方法,这个方法又调用了成员的方法。

 @Override
    public void setContentType(String type) {
        this.response.setContentType(type);
    }
@Override
    public void setContentType(String type) {

        if (isCommitted()) {
            return;
        }

        if (SecurityUtil.isPackageProtectionEnabled()){
            AccessController.doPrivileged(new SetContentTypePrivilegedAction(type));
        } else {
            response.setContentType(type);
        }
    }


终于知道了自定义servlet中response的实现类。。。

Tomcat中HttpServletResponse的实现类

标签:

原文地址:http://blog.csdn.net/u011686226/article/details/46582121

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!