Изменено
Я пытаюсь создать сервлет и использовать не сервлет-классы для управления подключением к базе данных и авторизацией пользователей. Я использую файл журнала, чтобы отслеживать, когда была выполнена транзакция. Моя проблема в том, что я не получаю записей когда вместо этого я вызываю приведенный ниже класс из класса сервлета, я получаю результат, когда вызываю его из класса не сервлета.
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);
}
}
Вызов класса из класса не сервлетов дает мне записи в файле журнала.
package api;
public class Test {
public static void main(String args[]){
DBase dbase = new DBase();
}
}
Здесь я ничего не получил.
Это в package servlets
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