Java web开发中的路径问题
发布日期:2021-05-14 13:44:50 浏览次数:15 分类:精选文章

本文共 888 字,大约阅读时间需要 2 分钟。

路径类型及其应用

1. 相对路径与绝对路径的区别

在网络开发中,路径分为相对路径和绝对路径。绝对路径以 / 开头,而相对路径则没有。

2. 相对路径的特点

相对路径是基于当前路径的。

  • 如果页面的 <head> 中包含 base 标记,则所有相对路径将基于 base 标记的 href 属性值。

  • 例如,通过以下代码可以获取当前页面的路径:

    String path = request.getContextPath();
  • 组合服务器信息和路径,构建 basePath

    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
  • 这相当于 http://localhost:8080/JspWeb/

  • 使用 base 标记时,href 的值会基于 basePath,例如:

  • 通过 request.getRequestDispatcher 方法进行转发,例如:

    request.getRequestDispatcher("..").forward(request, response);
  • 相对路径跳转示例:

    相对路径跳转1
    绝对路径跳转1

3. 绝对路径的应用

  • 绝对路径直接以 / 开头,例如:
    绝对路径跳转2
  • 使用 request.getRequestDispatcherresponse.sendRedirect 进行转发或重定向,例如:
    request.getRequestDispatcher("/three/testServlet2").forward(request, response);

4. 关于 servletContext 的注意事项

  • servletContext 方法均以 / 开头,例如:
    context.getResourcePaths("/image");
  • 确保路径始终以 / 开头,以避免错误。

通过以上方法,开发者可以灵活地进行路径转换,根据具体需求选择使用相对路径还是绝对路径。

上一篇:服务器的跳转方式forward和redirect
下一篇:Java中对象的synchronized关键字

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年04月18日 12时57分43秒