我写了一个jsp页面,这个页面实例化了个我自己写的类,这个类放到了scr下的包中,这不是问题,问题在于,我自己写的这个类中,需要访问一个xml文件,代码是没写错的,绝对路径成功了,问题是改成相对路径时"*.xml"(就写了个文件名的相对路径),我不知道该把xml文件放哪了,scr下,lib下,classes下以及工程的WebRoot下都都提示说找不到xml文件!请高手指点哈tomcat下自己的类中的相对路径该在哪,出于一些原因,这个类不能继承
HttpServlet,就是一个普通java类,不能用servlet的方法...请高手指点!

解决方案 »

  1.   

    一般做法是通过servlet得到当前项目的绝对路径,然后对应的就能得到xml文件的绝对路径java程序中读文件的相对路径是指对应class文件的相对路径
    web项目中没这么做过,没把握
      

  2.   

    1.把xml文件(aaa.xml)放到classes目录
    2.JAVA类读取文件的时候,这样指定路径,
    URL fileUrl = getClass().getResource("aaa.xml");
    String fileName = fileUrl.toString();
    3.打开xml文件是使用fileName变量
      

  3.   

    你最好把你的文件放到工程文件夹里的root文件夹下面,格式(/xxx/yyy.xml).
    获取路径时可以用。
    servlet.getServletContext().getRealPath("/xxx");
      

  4.   

    把你的文件放到工程文件夹里的webroot文件夹下面,格式(/xxx/yyy/zzz.xml). 
    获取路径时可以用。 
    servlet.getServletContext().getRealPath("/xxx/yyy");