[好久没来提问了]取不到servlet实例的情况下,如何得到网站根目录实际路径

mostone 2008-08-05 01:46:18
如题。


--------------------------------------------------------------------
以下内容为自动编辑的内容,并非楼主的发贴内容,此仅用于显示而已,并无任何其他特殊作用
楼主【mostone】截止到2008-08-05 13:46:35的历史汇总数据(不包括此帖):
发帖的总数量:25 发帖的总分数:2840 每贴平均分数:113
回帖的总数量:133 得分贴总数量:39 回帖的得分率:29%
结贴的总数量:24 结贴的总分数:2840
无满意结贴数:0 无满意结贴分:0
未结的帖子数:1 未结的总分数:0
结贴的百分比:96.00 % 结分的百分比:100.00%
无满意结贴率:0.00 % 无满意结分率:0.00 %
值得尊敬

取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=mostone
...全文
428 29 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
herowach 2008-08-19
  • 打赏
  • 举报
回复
可以往ThreadLocal里放东西,线程安全的,不过好象归容器管,JDK1.5里面的特性
JJTwo 2008-08-19
  • 打赏
  • 举报
回复
[Quote=引用 26 楼 JJTwo 的回复:]
request.getContextPath()
[/Quote]

學習。
JJTwo 2008-08-19
  • 打赏
  • 举报
回复
request.getContextPath()
mostone 2008-08-19
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 chyx413332087 的回复:]
用 ThreadLocal类,可以实现
[/Quote]

呃,好像才看到这条回复,不好意思。
请问能具体些么?
mostone 2008-08-19
  • 打赏
  • 举报
回复
呃,看来是不行了。
记得在.net里,通过静态方法能取到吧,以为javaservlet也一样,失望了。
结帖了,我就随便给分了。
海会圣贤 2008-08-19
  • 打赏
  • 举报
回复
做不到,那样的话怎么做啊,直接写死算了,比如:http://localhoist:8080/test/
usaspy 2008-08-08
  • 打赏
  • 举报
回复
楼主的所说的这个是做不到的。被调用的这个bean类并没有生存在servlet容器中,自然无法获取容器相关信息。简单的就传个servlet对象进去就是了
  • 打赏
  • 举报
回复
取不到

一般在 Servlet 中获得根路径,当作参数传给业务逻辑方法,而不是把 Servlet 侵入到业务逻辑中去。
zhuyx808 2008-08-06
  • 打赏
  • 举报
回复
你有没有过滤器啊,在过滤器中搞嘛,把config.getServletContext().getRealPath("\\")保存到一个static变量里,别的地方用到就用这个变量搞了
xufly2008 2008-08-06
  • 打赏
  • 举报
回复
在你的这个类中无法直接得到 request,response 等对象,当然了可以利用其他的技术来得到他们.
如果你仅想得到一些资源的路径,可以用 Class.getResource(path) 方法
lanzhengwu 2008-08-06
  • 打赏
  • 举报
回复
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
如:http :// 127.0.0.1 : 8080 /项目名/

jsp默认的
dryZeng 2008-08-06
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 xblue3 的回复:]
全局静态配置类,把路径专门保存在配置类中,呵呵,启动的时候初始化!
[/Quote]

问题是人家怎么样才能在一个一般的类中去取啊?用getInitParameter("")吗?好像一般的类不行哦.
dryZeng 2008-08-06
  • 打赏
  • 举报
回复
写一个static的String,先在servlet初始化,全局变量啊,就可以了吧.

是不是这个意思?你看我的昵称就知道我这个人理解能力差,呵呵
meadking 2008-08-06
  • 打赏
  • 举报
回复
全局静态配置类,把路径专门保存在配置类中,呵呵,启动的时候初始化!
chyx413332087 2008-08-06
  • 打赏
  • 举报
回复
用 ThreadLocal类,可以实现
mostone 2008-08-06
  • 打赏
  • 举报
回复
回楼上
是啊,就是为了解耦,不想传,结果,就不知道怎么取WEB目录位置了。
liujinrui 2008-08-06
  • 打赏
  • 举报
回复
把servlet传入访问文件的类中,不觉得耦合度有点高么?
建议楼主重新审视一下自己程序的结构。
mostone 2008-08-05
  • 打赏
  • 举报
回复
不知道 ResourceBundle.getBundle 是如何实现的。
boy_wh520 2008-08-05
  • 打赏
  • 举报
回复
一般来说都需要传递相应的参数 实例进行获取貌似你的想法行不通

关注
syzhwh 2008-08-05
  • 打赏
  • 举报
回复
guan zhu
加载更多回复(8)

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧