`
wdhdd889
  • 浏览: 151853 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java 工程和类等路径汇总

    博客分类:
  • java
阅读更多
一 相对路径的获得
    说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)
         String relativelyPath=System.getProperty("user.dir");
        上述相对路径中,java项目中的文件是相对于项目的根目录
        web项目中的文件路径视不同的web服务器不同而不同(tomcat是相对于 tomcat安装目录\bin)


二 类加载目录的获得(即当运行时某一类时获得其装载目录)
      1.1)通用的方法一(不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录)
       
        InputStream is=TestAction.class.getClassLoader().getResourceAsStream("test.txt");
                  (test.txt文件的路径为 项目名\src\test.txt;类TestAction所在包的第一级目录位于src目录下)
       
        上式中将TestAction,test.txt替换成对应成相应的类名和文件名字即可

        1.2)通用方法二 (此方法和1.1中的方法类似,不同的是此方法必须以'/'开头)
             InputStream is=Test1.class.getResourceAsStream("/test.txt");
                      (test.txt文件的路径为 项目名\src\test.txt,类Test1所在包的第一级目录位于src目录下)

   


三 web项目根目录的获得(发布之后)
    1 从servlet出发

    可建立一个servlet在其的init方法中写入如下语句
      ServletContext s1=this.getServletContext();
   String temp=s1.getRealPath("/"); (关键)
    结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\ (002_ext为项目名字)

                     如果是调用了s1.getRealPath("")则输出D:\工具\Tomcat-6.0\webapps\002_ext(少了一个"\")

   2 从httpServletRequest出发

             String cp11111=request.getSession().getServletContext().getRealPath("/");

      结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\



四 classpath的获取(在Eclipse中为获得src或者classes目录的路径)

    方法一   Thread.currentThread().getContextClassLoader().getResource("").getPath()


eg: String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
          System.out.println("t---"+t);

                      输出:t---/E:/order/002_ext/WebRoot/WEB-INF/classes/




   方法二     JdomParse.class.getClassLoader().getResource("").getPath() (JdomParse为src某一个包中的类,下同)

                 eg:String p1=JdomParse.class.getClassLoader().getResource("").getPath();
       System.out.println("JdomParse.class.getClassLoader().getResource--"+p1);

   输出: JdomParse.class.getClassLoader().getResource--/E:/order/002_ext/WebRoot/WEB-INF/classes/


另外,如果想把文件放在某一包中,则可以 通过以下方式获得到文件(先定位到该包的最后一级目录)

        eg String p2=JdomParse.class.getResource("").getPath();
         System.out.println("JdomParse.class.getResource---"+p2);

   输出: JdomParse.class.getResource---/E:/order/002_ext/WebRoot/WEB-INF/classes/jdom/ (JdomParse为src目录下jdom包中的类)

分享到:
评论

相关推荐

    Java开发常见问题汇总.ppt

    在Java开发过程中,遇到...总之,Java开发中的问题涉及环境配置、IDE使用、代码编写等多个方面,了解这些问题的解决方案,有助于提升开发效率和代码质量。在日常工作中,不断学习和积累经验,才能更好地应对各种挑战。

    华为等各大厂Java面试笔试题汇总.rar

    这份“华为等各大厂Java面试笔试题汇总”包含了众多Java核心技术与面试常见问题,旨在帮助求职者准备这些挑战。 1. **Java基础** - 类与对象:理解面向对象的基本概念,如封装、继承和多态。 - 构造器:掌握构造...

    Java面向对象程序案例教程课件汇总全书电子讲义完整版课件(最新).pptx

    使用Eclipse运行第一个Java程序需要五个步骤:创建工程、创建包、创建类、输入源程序和运行程序。程序的运行方式有三种:在右键选中类HelloWorld,然后选中Run As->Java Application,在菜单中选择“Run --> Run”,...

    java代码行数统计源码

    6. 用户界面:虽然描述中未明确提到用户界面,但一个完整的软件可能包含交互式的UI,让用户可以方便地选择工程路径,查看统计结果,甚至自定义统计规则。 7. 配置与扩展性:软件可能允许用户配置统计规则,比如是否...

    Hadoop下Eclipse用Java编程实现WordCount

    通过以上步骤,我们可以在Hadoop集群上使用Eclipse和Java编程语言实现WordCount应用。这个过程不仅包含了环境搭建、项目配置、代码编写以及最终的运行验证,而且能够帮助开发者深入理解MapReduce的工作原理及其实现...

    Java 教学视频地址

    - **相关PDF文档**:如《Java工程师必知必会》、《Java常用英语汇总》等,帮助深化理解和记忆。 这套教程不仅包含视频,还有丰富的文档和工具,确保学习者可以从理论到实践全面掌握Java开发。通过分享获取更多资源...

    java面试题总汇(计算机基础、网络、存储、缓存、分布式、安全)

    【Java面试题总汇】涵盖了计算机基础、网络、存储、缓存、分布式、安全等多个方面的知识点,这些都是在IT行业中特别是Java开发岗位面试时常见的问题。下面将分别详细讲解这些领域的重点内容。 **计算机基础** 在...

    Java打包成jar文件,以及将jar文件导出为exe文件方法汇总

    4. **选择要打包的工程**:勾选您要打包的工程,并指定输出路径和文件名。 5. **添加主类**:点击“Browse”按钮来选择包含主类的文件夹,并指定文件名。之后再选择具体的主类。 6. **完成导出**:点击“Finish”...

    Java打包成jar文件,以及将jar文件导出为exe文件方法汇总.docx

    - 在工程列表中勾选你要打包的工程,设置导出的目标路径和文件名。 - 点击 `Browse`,选择主类所在的上一级目录,并在 `File name` 中输入 jar 文件名。 - 通过 `Browse` 指定主类,并点击 `OK`。 - 最后点击 `...

    1000道 互联网大厂Java工程师面试题.pdf

    9. Mybatis如何封装结果集:支持结果映射到对象的多种方式,如resultMap、association和collection等。 10. Mybatis的动态SQL及执行原理:通过OGNL表达式和一些内置函数完成动态SQL片段的拼接和执行。 11. MyBatis的...

    基于java工资管理系统设计

    【基于Java工资管理系统...通过以上内容,我们可以看出基于Java的工资管理系统设计是一个涵盖管理理论、数据库设计、软件工程等多个领域的综合性项目,旨在提升企业的人力资源管理效率,实现工资管理的自动化和规范化。

    J2EE软件工程师求职手册

    - **什么是Java的类和对象**:定义类和对象的概念及其在Java中的作用。 - **必须掌握Java命名规范**:强调遵循Java命名规则的重要性,如变量名、方法名等。 - **区分实例成员和静态成员**:解析实例变量与静态...

    JAVA代码复查工具使用指南.pdf

    修改`checkstyle`工具包中的`build.xml`文件,将其中的`工程路径/../src" includes="**/*.java"/>`中的`dir`属性值更改为实际的工程路径。 2. 在操作系统的环境变量中配置`ANT_HOME`和`Path`,确保`Apache Ant`...

    小型工资管理系统 java 报告书.docx

    【小型工资管理系统】是一款基于Java语言开发的软件应用,...总体来说,小型工资管理系统项目是一个综合实践,涵盖了Java编程、数据库管理和软件工程等多个方面的知识,有助于提升学生的实际开发能力和团队协作技巧。

    【藏宝图】(珍藏版)2012java开发工程师必备精品资料(115)

    设计模式是软件工程中的重要概念,这份资料汇集了23种常用的设计模式,并提供了相应的Java实现示例,对于提升编程技巧和设计能力非常有帮助。 综上所述,这些精品资料不仅覆盖了Java开发的基础知识,还包括了许多...

    Java打包成jar文件,以及将jar文件导出为exe文件方法汇总.pdf

    jar文件是Java的归档文件,它可以包含类、资源、元数据等,便于部署和执行。以下是两种将Java项目打包成jar文件的方法: 方法一:使用Eclipse IDE 1. 右键点击项目,在弹出菜单中选择“Export”。 2. 在弹出的导出...

    2012 最新 Java面试宝典new版 改进版 下载

    首先,Java面试宝典new版.doc涵盖了Java语言的核心概念,如面向对象编程的基本原理,包括类、对象、封装、继承和多态等。此外,它还深入探讨了Java内存管理,包括垃圾回收机制、内存泄漏问题以及如何优化内存使用。...

    mybatis学习汇总.zip

    这个名为"mybatis学习汇总.zip"的压缩包包含三个工程,旨在帮助用户全面掌握MyBatis的核心概念和实际应用。 1. **详细学习工程** 这个工程提供了一个全面的学习路径,涵盖了MyBatis的基本概念,如配置文件、Mapper...

Global site tag (gtag.js) - Google Analytics