关于配置文件、linux区别于windows获取地址的BUG

今天将一个面向配置编程的项目发布到linux服务器上时,发现了两个区别与windows服务器的BUG:

【BUG1】:读配置文件失败,但是后台打出的配置文件信息是正确的。
经过插桩测试获得报错信息:
[color=red]org.json.JSONException: A JSONObject text must begin with '{' at character 1 of {[/color]
【原因分析】 由于配置文件保存时,在前边带有乱码,所以在读取配置文件时是正常的,但在解析时就会报错:具体参看xiechengfa的博客:-->http://blog.csdn.net/xiechengfa/article/details/45559223
【解决方案】用EditPlus打开配置文件,并另存为utf-8格式。为什么使用EditPlus而不是记事本呢?这个问题我之前遇到过,貌似记事本在开始的地方会有关于编码的信息神马的。。[color=red](一时给忘了,啥时候找到了再来补上。)[/color]


【BUG2】linux系统下:
String path=request.getSession().getServletContext().getRealPath("/");
这种方式下获取路径失败。。
【原因分析】未分析。
【解决方案】通过类加载器获取。
String path=this.getClass().getClassLoader().getResource("/").getPath();
path = path.replaceAll("WEB-INF/classes", ""); //JavaWeb中


[img]http://dl2.iteye.com/upload/attachment/0119/9026/949eda0f-03ef-3a23-98e0-5c40dc88a031.jpg[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值