我已经看到你也可以直接调用getservletcontext(),也喜欢这个req.getsession().getservletcontext().
两者之间有什么区别,我应该使用哪一个?有没有基于我应该使用一个而不是另一个的场景?
顺便说一句,我使用的是web模块2.5
两者有什么区别
两者之间没有区别,它们是同一个.
getServletContext()只有在代码位于扩展的类中时,才能直接调用此方法HttpServlet.这是因为HttpServlet基类定义了这个方法(实际上是在扩展的GenericServlet类中HttpServlet).
在ServletContext通过req.getSession()返回.getServletContext()方法is same as the one returned above.的HttpSession contains a reference to theServletContext`这个会话属于.
我应该使用哪一个?有没有基于我应该使用一个而不是另一个的场景?
只要你的代码在servlet类中,就可以使用任何东西,因为两者都可以被调用.
假设(假设)您从servlet调用自定义类中的方法,并将会话对象传递给它以处理会话中的某些数据.此自定义类不扩展servlet.您需要ServletContext在此自定义类中引用该引用.由于您具有对会话的引用,因此可以使用该方法访问ServletContext session.getServletContext().
希望这很清楚.
| 归档时间: |
|
| 查看次数: |
3884 次 |
| 最近记录: |