出于记录目的,我重写了 HttpServlet 的服务方法,如下所示:
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
{
logger.debug("enter servlet");
logger.debug("Request Header: {}", MyHttpTools.requestHeaderToSting(req);
super.service(req, resp);
logger.debug("leaving servlet");
logger.debug("Response Header: {}", MyHttpTools.responseHeaderToSting(resp);
}
我在网络上发现了一些地方,作者说“不要覆盖服务”。
你觉得我的方法怎么样?
最佳答案
你的方法没有问题,但你可以用“更干净”(在我看来)的方式来做到这一点,例如通过实现(和注册)javax.servlet.Filter
,或使用 AspectJ 或其他更常用的方法。
关于Java HttpServlet,覆盖方法服务,最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30613722/