已更改
我正在尝试创建一个 servlet 并利用非 servlet 类来管理数据库连接和用户授权。我正在使用日志文件来跟踪事务何时完成。我的问题是我没有收到任何条目当我从 servlet 类调用下面的类时,当我从非 servlet 类调用它时,我会得到结果。
package api;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.Date;
public class DBase {
private PrintStream outstream;
public DBase( )
{
try {
File file = new File("log");
boolean exists = file.exists();
if (exists) {
outstream = new PrintStream(new FileOutputStream("log",true));
} else {
outstream = new PrintStream(new FileOutputStream(file,true));
}
System.setOut(outstream);
System.setErr(outstream);
System.out.println("\n" + getDateTime() + "\nInvoker: " + getClass().getName());
} catch (FileNotFoundException ex) {
Logger.getLogger(DBase.class.getName()).log(Level.SEVERE, null, ex);
}
}
private String getDateTime() {
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
return dateFormat.format(date);
}
}
从非 servlet 类调用该类会在日志文件中提供条目。
package api;
public class Test {
public static void main(String args[]){
DBase dbase = new DBase();
}
}
我什么也没得到。
它位于 servlet 包
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
new api.Test(); //or new api.DBase();
} finally {
out.close();
}
}
我正在使用 Netbeans 6.8 和 Tomcat6
最佳答案
除了实例化 api.Test
类并返回之外,您无需执行任何操作。
main
不会执行。要么调用它,要么创建一个方法来调用。
main
方法更多地是作为应用程序的入口点,而不是作为通用方法。它可能会被这样使用,但在我看来这是一种误导。
关于java - servlet 内的调用类没有响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8447674/