本地运行javaweb项目,通过数据库获取url后,页面地址不出现localhost:8080,直接显示数据库获取的url.

本地运行javaweb项目,通过数据库获取url后,页面地址不出现localhost:8080,直接显示数据库获取的url.,第1张

请贴出相应页面的代码(就是请求user那部分的代码)

根据你贴出的代码,问题应该就出在你的a标签里的${pageContextrequestcontextPath}这里,你这里应该是没有获取到你的项目路径。如果实在定位不到为什么取不到项目路径,你可以使用二楼的方式,自己设定path。

FileReader fr = new FileReader(JdbcToolsclassgetClassLoadergetResourceAsStream("conf/WaterConfigproperties"));

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

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

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

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

add+requestgetServletPath();

如果通过servelet来读取上传文件路径,则代码如下,我已经在项目中用过了:

DiskFileItemFactory difif = new DiskFileItemFactory();

dififsetSizeThreshold(321024);dififsetRepository(new File(tmpDir));        //

用以上工厂实例化上传组件ServletFileUpload sfu = new ServletFileUpload(difif);

sfusetSizeMax(MAX_SIZE);

List fileList = sfuparseRequest(request);

if ( fileList == null || fileListsize() == 0) {                throw new Exception("

导入文件不存在,请检

查");} else {                File upLoadFile = null;                Iterator fileIterator = fileListiterator();

//得到所有上传的文

件                while (fileIteratorhasNext()) {                    FileItem fileItem = (FileItem)fileIteratornext();                    //

取得上传文件

名                    if (fileItemgetContentType() == null) {                    } else {

                        //

此为路

径                        String path = fileItemgetName();                        String t_ext = pathsubstring(pathlastIndexOf("") + 1);                                                //

根据系统时间生成上传后保存的文件

名                        String prefix = StringvalueOf(SystemcurrentTimeMillis());                        //

保存最终的文件完整路径,保存在工程根目录下的Upload目录

下                        String u_name = tmpDir + Fileseparator + prefix + "" + t_ext;                                                //

开始保存文

件                        upLoadFile = new File(u_name);                        fileItemwrite(upLoadFile);                    }                }            }

第一步: 先获得classpath路径

String classpath = thisgetClass()getResource("/")getPath()replaceFirst("/", "");

这样子可以得到classpath路径,类似于:

F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/WEB-INF/classes/

然后把WEB-INF/classes截取就能获得WebAPP目录啦:

String webappRoot = classpathreplaceAll("WEB-INF/classes/", "");

得到的结果就是:

F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/

通过这个路径你就能获取该文件夹下的所有文件啦

相对路径的话,可以先获取到当前文件的编译路径,之后在找到想找文件的路径的思路来实现。

举例:

XMLSclassgetClass()getResourceAsStream("/test/testtxt");

解释:XMLSclassgetClass()是获取当前的类编译路径,之后通过getResourceAsStream的形式即可找到要读取的文件的路径。

备注:这个方法中后面的路径也可以通过截取的形式来进行路径获取,实现原理都是找到当前类路径,之后通过相对位置找到另外文件路径。

以上就是关于本地运行javaweb项目,通过数据库获取url后,页面地址不出现localhost:8080,直接显示数据库获取的url.全部的内容,包括:本地运行javaweb项目,通过数据库获取url后,页面地址不出现localhost:8080,直接显示数据库获取的url.、java web工程,读取配置文件路径问题、我想在java类里获取web项目的路径,比如我将项目放在D:/,项目名称为test,我想得到D:/test路径,在java等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9775106.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存