我应该如何从.jsp访问ServletContext?例如,如何从.jsp内部调用 getRealPath 方法。
这是一个工作正常的Servlet:
protected void doGet( HttpServletRequest req, HttpServletResponse resp ) throws ServletException, IOException { resp.setContentType( "text/html; charset=UTF-8" ); final PrintWriter pw = resp.getWriter(); pw.print( "<html><body>" ); pw.print( getServletContext().getRealPath( "text/en" ) ); pw.print( "</body></html>" ); pw.flush(); pw.close(); }
现在,我正在寻找要插入以下 .jsp中 的确切行,以执行与上述servlet完全相同的操作。
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <body> ... // What should I insert here </body> </html>
该ServletContext是通过访问application隐含对象。
ServletContext
application
由于每个JSP都是一个servlet,因此您也可以使用getServletContext()。
getServletContext()
但是..避免在JSP中使用类似的代码。取而代之的是,在Servlet中获取所需的值并将其设置为request属性,只需在JSP中读取即可(最好通过JSTL)