无法在jsp的java类中创建txt文件

时间:2011-07-06 10:22:09

标签: java jsp servlets

我正在使用tomcat 6,eclipse ee,win xp,我正在开发一个JSP项目。 在这个proect中,有一个名为“DummyClass”的操作类,它的任务是读取文本文件(input.txt)并根据它创建对象。然后我在JSP文件中对它进行了查询。

有一个Web-Content文件夹和jsp文件(NewPage.jsp)及其内容如下:

<jsp:useBean id="user" class="actual.Searcheduser" scope="session"/> 
<jsp:useBean id="mydummy" class="dummyCreator.DummyClass" scope="session"/>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>TSBS Telefon Rehberi Sonuç Sayfası</title>
</head>
<body>

<%
 System.out.println("kagdfcg");
 mydummy.readFile(input.txt);  //Line 1
 mydummy.fileCreator();        //Line 2

 %>
</body>
</html>

第1行中的代码引发错误,它无法在项目中找到“input.txt”。我在文件夹的每个地方都复制它,但它看不到“input.txt”。为了找到正确的位置,我创建了第2行,它创建了一个样本“sample.txt”但没有创建文件。

我怎样才能克服这一点?

5 个答案:

答案 0 :(得分:2)

首先,这不是与jsp / servlet一起玩的方式..使用Servlet来执行逻辑。使用jsp来呈现视图。

为了阅读文本文件...你需要把它写到可访问的地方,在dir结构上添加更多信息在哪里?

答案 1 :(得分:1)

尝试

 mydummy.readFile("input.txt");  //Line 1
 mydummy.fileCreator();        //Line 2

字符串在开头和结尾标有引号

答案 2 :(得分:1)

来自文件

上的java教程

相对还是绝对?

路径是相对路径还是绝对路径。绝对路径始终包含查找文件所需的根元素和完整目录列表。例如,/ home / sally / statusReport是绝对路径。查找文件所需的所有信息都包含在路径字符串中。

需要将相对路径与另一个路径组合才能访问文件。例如,joe / foo是一个相对路径。如果没有更多信息,程序将无法在文件系统中可靠地找到joe / foo目录。 阅读整个教程: http://download.oracle.com/javase/tutorial/essential/io/path.html

在您的示例中,您使用的是相对文件,这可能是您无法找到它的原因。 猜测你在你的计算机上安装了tomcat并且没有使用某个远程实例,它很容易在c:\ tmp或类似的地方存储文件,很容易找到易于清理。

答案 3 :(得分:0)

文件读取/业务逻辑是前端控制器(比如servlet)的工作。永远不要在JSP中使用scriplets

您在JSP上附加的任何bean应该用于表示逻辑

答案 4 :(得分:-1)

在servlet而不是jsp文件中编写所有业务逻辑更为可行。

这些代码可以帮助您

<%@page import="java.io.*"%>
java.net.URL url =config.getServletContext().getResource("file.txt");
BufferedReader buffreader =new BufferedReader(new InputStreamReader(url.openStream()));

OR

<%
BufferedReader input = new BufferedReader(new FileReader("file.txt"));
String line = "";
while ((line = input.readLine()) != null) {
   out.println(line);
}
output.flush();
input.close();
%> 
相关问题