我想在java类里获取web项目的路径,比如我将项目放在D:,项目名称为test,我想得到D:test路径,在java

我想在java类里获取web项目的路径,比如我将项目放在D:,项目名称为test,我想得到D:test路径,在java,第1张

首先得到ServletContext对象(jsp中的application)

其次得到WEB项目的的真实路径

String add=applicationgetRealPath("/"); super指得是GenericServlet类

最后,可以得到任意一个网站文件的地址:

add+requestgetServletPath();

你需要一个servlet或者action,servlet举例:

建一个servlet,在doPost()中通过,

requestgetSession()getServletContext()getRealPath("/WEB-INF");

public static String getRealPath(Class clazz) {

String url = clazzgetResource("")getPath();

int displace = urlindexOf("WEB-INF");

StringBuffer buffer = new StringBuffer();

for (int i = 0; i < displace - 1; i++) {

bufferappend(urlcharAt(i));

}

return buffertoString();

}

java获取根路径有两种方式:

1)在servlet可以用一下方法取得:

requestgetRealPath(“/”)

例如:filepach = requestgetRealPath(“/”)+”//upload//”;

2)不从jsp,或servlet中获取,只从普通java类中获取:

String path = getClass()getProtectionDomain()getCodeSource()getLocation()getPath();

SAXReader() saxReader = new SAXReader();

if(pathindexOf(“WEB-INF”)>0){

path = pathsubstring(0,pathindexOf(“/WEB-INF/classes”)+16);

// ‘/WEB-INF/classes’为16位

document = saxReaderread(path+filename);

}else{

document = saxReaderread(getClass()getResourceAsStream(filename));

}

不用执行select

count(),直接用下边的方法,执行你的查询sql。然后通过指针来获取总记录数。

preparedstatement

stmt

=

conpreparestatement

(sql,resultsettype_scroll_insensitive,resultsetconcur_read_only);//

一定要有resultsettype_scroll_insensitive这个参数,不然指针不能滚动,下边的afterlast就不能用。

resultset

rs

=

stmtexecute();

rsafterlast();//指针指向最后一条记录。

int

num

=

rsgetrow();//获取总记录数。

rsbeforefirst();//指针重新指向第一条记录。

//下边你可以循环取出你要的记录了。

另外建议多看下api,很多人都是preparedstatement

stmt

=

conpreparestatement(sql)写的,其实通过增加resultsettype_scroll_insensitive参数就可以

通过滚动指针来获取记录数,并且可以直接遍历查询的结果。

通过容器提供的API获取。

对于实现sun的Servlet23以上的Servlet。

提供以下方法支持:

来自GenericServlet类的

getServletContext()获得ServletContext 由context

获得contextgetServerInfo(),服务器类型信息。

例如:

Tomcat60中

getServletContext()getServerInfo(),

返回的结果为:Apache Tomcat/6014

以上就是关于我想在java类里获取web项目的路径,比如我将项目放在D:/,项目名称为test,我想得到D:/test路径,在java全部的内容,包括:我想在java类里获取web项目的路径,比如我将项目放在D:/,项目名称为test,我想得到D:/test路径,在java、jsp 在java程序中获取 web-inf目录、如何在java类中获取javaWeb的根路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9671386.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存