HSQLDBServletContextListener.java:
package com.terac.hsqldb;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class HSQLDBServletContextListener implements ServletContextListener {
public void contextInitialized(ServletContextEvent evt) {
try {
ServletContext context = evt.getServletContext();
String params = "port=9001;silent=true;trace=false;database.0=" +
context.getRealPath("/") + "/WEB-INF/hsqldb/terac";
org.hsqldb.Server server = new org.hsqldb.Server();
server.putPropertiesFromString(params);
server.setLogWriter(null);
server.setErrWriter(null);
server.start();
} catch (Exception e) {
System.err.println(e);
}
}
public void contextDestroyed(ServletContextEvent evt) {
Connection conn = null;
try {
Class.forName("org.hsqldb.jdbcDriver");
conn = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost:9001",
"sa", "123456");
Statement stmt = conn.createStatement();
stmt.executeUpdate("SHUTDOWN;");
} catch (Exception e) {
//
}
}
}
web.xml中需要加入listener:
com.terac.hsqldb.HSQLDBServletContextListener
处处: http://www.cnblogs.com/cutecode/archive/2007/01/03/610847.html