第一个:文件分隔符

坑比Window。window分隔符 用\;unix采用/。于是用File.separator来跨平台
请注意:这是文件路径。在File f = new File(“c:\\hah.txt”)是好使的
当在后台拼接js代码
代码大体如下:
String path = "\haha\test";
js+="<img src=\""+path+"\">"
采用window的分隔符,\ 传到前台发现分隔符不见了
但是/是可以的

第二个:Java web项目中 服务器的路径解析

先说一下,服务器路径。一般拿tomcat作为中间件
而web程序一般部署到 (前边是tomcat路径,最后portal就是引用程序部署文件夹)
C:\LEADERHOO\apache-tomcat-6.0.35\apache-tomcat-6.0.35 -IPORTAL\wtpwebapps\PORTAL
此路径下一般是 :
  第一部分:对应eclipse里边src/main/webapp
  第二部分:eclipse看不到的(隐藏的)META-INF
  第三部分(可能会有的):有一些资源文件比如图片等,上传到服务器可以传到该目录下
此路径下可以通过web项目的url访问
  比如在该目录下,我建了一个a.txt,我可以直接用http://boc.dtsz.com:8086/sso/a.txt访问到
  或者建目录访问 http://boc.dtsz.com:8086/sso/testfolder/a.txt
备注 此处存在一个非常坑爹的设定
  中文目录居然不好使
  http://boc.dtsz.com:8086/sso/testfolder/测试中文目录/a.txt

第三:图片的路径

页面上图片路径(\或者是/或者是\\\\ 根据具体例子测试)
相对路径 ..\newHaha
绝对路径 c:\test\haha
相对路径一定注意前边 是否需要 ..\ 也就是是否能准确定位到文件

第四:前台页面采用相对路径还是绝对路径

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
就可以使用绝对路径
<link href="<%=basePath %>companyStyle/css/base.css" rel="stylesheet">

第五:Java web 相对路径以/开头和不已/开头的区别

  通俗的讲,有/会从跟目录开始算,没有会从当前目录开始算

  比如<link  src = "/demo.js"/>  设当前项目根路径是 “localhost:8081/sso”则此路径会定位到 localhost:8081/sso/demo.js

第六:页面引用WEB-INF下的内容

  web-inf下,应用服务器把它指为禁访目录,即直接在浏览器里是不能访问到的,只能通过servlet访问 所以:
    web-inf下有a.jsp则可以用request.getRequestDispatcher("/WEB-INF/a.jsp").forward(request,response);进行派遣访问

    但是web-inf下有a.htm,则用request.getRequestDispatcher("/WEB-INF/a.htm").forward(request,response);就不能访问。

第七: <%@ include file = "/WEB-INF/a.jsp"%> 这样写可以用的原因

请注意:
  此处和访问路径区分开,这不是访问路径,这是告诉jsp翻译的时候把这个地方的文件加进来
涉及的细节点就是 jsp会翻译成servlet
  jsp页面不能原封不动地被传送给浏览器,所有的jsp元素都必须首先由服务器进行处理。这是通过将jsp页面转达化成servlet,然后执行这个servlet来完成的

jsp容器:
  jsp容器通常以servlet的形式来实现,这个servlet经过配置,可以处理对jsp页面的所有请求
jsp的翻译:
  Jsp容器负责将jsp页面转化成servlet(称为jsp页面实现类?JSP Page implementation class),并编译这个servlet
  所以:用 <%@ include%>会在翻译的时候把文件加进来而不是访问该文件
再次加深一下,为什么翻译的时候可以通过/WEB-INF/找到文件
  参照整理2,WEB-INF 在tomcat服务器的程序包的可以直接访问的那一级别
  这个uri是可以定位一个文件,只不过tomcat不允许直接通过浏览器访问而已

参考资料: http://blog.csdn.net/panyongcsd/article/details/38235713

对Java Web项目中路径的理解的更多相关文章

  1. JAVA WEB项目中各种路径的获取

    JAVA WEB项目中各种路径的获取 标签: java webpath文件路径 2014-02-14 15:04 1746人阅读 评论(0) 收藏 举报  分类: JAVA开发(41)  1.可以在s ...

  2. Java Web项目中连接Access数据库的配置方法

    本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...

  3. linux 下用renameTo方法修改java web项目中文件夹名称问题

    经测试,在Linux环境中安装tomcat,然后启动其中的项目,在项目中使用java.io.File.renameTo(File dest)方法可行. 之前在本地运行代码可以修改,然后传到Linux服 ...

  4. Java Web项目中缺少Java EE 6 Libraries怎么添加

    Java Web项目中缺少Java EE 6 Libraries怎么添加 具体步骤如下: 1.项目名称上点击鼠标右键,选择"Build Path-->Configure Build P ...

  5. java web 项目中 简单定时器实现 Timer

    java web 项目中 简单定时器实现 Timer 标签: Java定时器 2016-01-14 17:28 7070人阅读 评论(0) 收藏 举报  分类: JAVA(24)  版权声明:本文为博 ...

  6. java web项目中打开资源文件中文乱码

    1 java web项目中经常使用多模块管理.在某一个模块中添加了一些资源文件.但不是启动项目.有时候需要在程序中读取资源文件内容,打包后放到容器中就不能正常运行了.需要将所有资源文件放到启动项目的 ...

  7. 在java web项目中编写自己的代码生成器

    在java web项目中编写自己的代码生成器

  8. Java Web 开发中路径相关问题小结

    Java Web开发中路径问题小结 (1) Web开发中路径的几个基本概念 假设在浏览器中访问了如下的页面,如图1所示: 图1 Eclipse中目录结构如图2所示: 图2 那么针对这个站点的几个基本概 ...

  9. 在Java web项目中防止用户注销后使用浏览器中的“后退”按钮返回注销前页面

    一背景 公司安全整改, 要求:系统中对于关键业务操作应确保使用浏览器"后退"功能无法回到上一步操作界面. 提供:凭证提供所有被检查系统关键业务操作后回退视频,视频显示关键业务操作后 ...

随机推荐

  1. Haproxy基于ACL做访问控制

    author:JevonWei 版权声明:原创作品 haproxy配置文档 https://cbonte.github.io/haproxy-dconv/ 基于ACL做访问控制(四层代理) 网络拓扑 ...

  2. makefile中":=","=","?=","+=" 之间的区别

    区别:  := 有关位置的等于,值取决于当时位置的值 = 无关位置的等于,值永远等于最后的值 ?= 是如果没有被赋值过就赋予等号后面的值+= 是添加等号后面的值 '=':无关位置的等于 比如: x = ...

  3. 自制MPLS解决路由黑洞实验

    利用mpls解决BGP路由黑洞配置命令全解析 --By Jim 什么是BGP路由黑洞? BGP规定无论路由器是否启动bgp都要无条件地转发BGP消息和更新包(凌驾于IGP之上),违背了IGP" ...

  4. 【DDD】领域驱动设计实践 —— 业务建模实例(‘发布帖子’)

    本文是基于上一篇‘业务建模小招数’的实践,后面的多篇博文类似.本文主要讲解‘发表帖子’场景的业务建模,包括:业务建模.业务模型.示例代码:示例代码会使用java编写,文末附有github地址.相比于& ...

  5. 团队作业1 团队展示&选题

    团队展示&选题 Coding项目地址:https://git.coding.net/wjunren/running.git 一.团队展示 1.队名:Runing Guys 2.队员: 组长:骆 ...

  6. 201521123098 《Java程序设计》第8周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1. 泛型的本质: 1. 他只是一个编译器现象: 2. 虚拟机里只有普通的类和方法: 3. 运行时没有类型参数 ...

  7. 201521123063 《Java程序设计》 第4周学习总结

    1.本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 类设计 一般在设计类的时候,要考虑这些类是否有共性,还要考虑其独特性,使共同的父类拥有这些共性 ...

  8. 201521123104《Java程序设计》第4周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. (1)继承时子类将获得父类的属性与方法,并具有自身特有的属性与方法. (2)使用super还 ...

  9. 201521123035《Java程序设计》第四周学习总结

    本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 本周还讲了注释与类设计.老师用例子向我们展示实际生活中一个类里面包含了哪些属性,并由此联想到如果自 ...

  10. 201521123031 《Java程序设计》第4周学习总结

    ---恢复内容开始--- 1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. (1)父类只能有一个,即单继承,子类继承父类的全部成员(属性和方法 ...