在bean里访问本地文件

在WEB-INF目录下写个.xml文件,要在bean里读取它,因为直接写File file = new File(".");

此file的路径为tomcat的bin目录(我用的是tomcat服务器)。如果要一层一层的找,

则必须知道此项目名,因为我们的项目放在tomcat/webapps/项目文件夹, 要知道项目名  可在servlet里写request.getRealPath("/");

与其这样,还倒不如在servlet里取得了xml文件的路径再传给bean呢,request.getRealPath("/"+"WEB-INF/user.xml");

不想写这些东西

在bean 里写

String classname = this.getClass().toString();
打印出class xx.xxx.类名
String pathname = this.getClass().getResource(classname.substring(classname.lastIndexOf(".")+1)+".class").toString();
打印出file:/D:/tomcat6.0.18/apache-tomcat-6.0.18/webapps/xmltest/WEB-INF/classes/cn/***/xml/Test.class
String propath = pathname.substring(0,pathname.indexOf("/WEB-INF"));
项目路径:file:/D:/tomcat6.0.18/apache-tomcat-6.0.18/webapps/xmltest/
String path = propath+"/WEB-INF/user.xml";
URI uri = new URI(path);
File file = new  File(uri);

 

这样就可读取了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值