- 15
- 0
- 约4.88千字
- 约 6页
- 2018-03-07 发布于河南
- 举报
hsql连接数据库以及启动的代码
Java代码
Hsql启动的代码
package cn.scorpionsoft.distributor;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.hsqldb.Server;
/**
* 自动开启 HSQLDB 服务
*
* @author 抽支烟
*
*/
public class HSQLDBStartListener implements ServletContextListener {
/**
* 初始化
*/
public void contextInitialized(ServletContextEvent sce) {
String dbName = sce.getServletContext().getInitParameter(hsql.dbName);
String path = sce.getServletContext().getInitParameter(hsql.dbPath);
String classpath = Thread.currentThread().getContextClassLoader().getResource(/).getPath();//获取WEB-INF\classes下的路径
path=classpath+path;
int port = -1;
try {
port = Integer.parseInt(sce.getServletContext().getInitParameter(
hsql.port));
} catch (Exception e) {
port = 9999;
}
if (dbName == null || dbName.equals()) {
System.out.println(Cant get hsqldb.dbName from web.xml Context Param);
return;
}
if (!path.endsWith(/)) {
path = path + /;
}
File propertiesFile = new File(path + dbName + .properties);
if (propertiesFile.exists()) {
this.startServer(path, dbName, port);
} else {
System.out
.println(Connect failed:Connect Hsqldb error or database files not exits!);
}
}
/**
* 启动 Hsqldb 服务的方法。
*
* @param dbPath
* 数据库路径
* @param dbName
* 数据库名称
* @param port
* 端口号
*/
private void startServer(String dbPath, String dbName, int port) {
Server server = new Server();// 它可是hsqldb.jar里面的类啊。
server.setDatabaseName(0, dbName);
server.setDatabasePath(0, dbPath + dbName);
if (port != -1) {
server.setPort(port);
}
server.setSilent(true);
server.start();
System.out.println(HSQLDB started...);
}
/**
* Listener 销毁方法,在 Web 应用终止的时候执行shutdown命令关闭数据库.
*/
public void contextDestroyed(ServletContextEvent arg0) {
Connection conn = null;
try {
Class.forN
您可能关注的文档
- 范六小学教务工作总结.doc.doc
- 第三单元 应用题.doc
- 实现HelloWorld驱动实验碰到的问题.doc
- 八年级(下)数学第二章因式分解单元测试题.doc
- 和孩子一起成长——读《和孩子一起高考》有感.doc
- 11 第十一章 眼的发育L-11.ppt
- 北师大版二年级数学下册《测量》习题训练课件.ppt
- 全真教师招聘考试试题及答案.docx
- 农业旅游项目规划设计研究:如何增添农业旅游项目的亮点.doc
- 2008年注册城市规划师考试的常见问题二.doc
- 《GB/T 46962-2026印刷技术 安全印刷过程管理》.pdf
- 中国国家标准 GB/T 46962-2026印刷技术 安全印刷过程管理.pdf
- GB/T 46962-2026印刷技术 安全印刷过程管理.pdf
- 中国国家标准 GB/T 32580.5-2026轨道交通 地面装置 高压交流开关设备及互感器 第5部分:27.5 kV和2×27.5 kV金属封闭开关设备和控制设备.pdf
- 《GB/T 32580.5-2026轨道交通 地面装置 高压交流开关设备及互感器 第5部分:27.5 kV和2×27.5 kV金属封闭开关设备和控制设备》.pdf
- GB/T 33248-2026印刷技术 胶印橡皮布.pdf
- GB/T 18282.6-2026医疗产品灭菌 化学指示物 第6部分:用于小型蒸汽灭菌器性能测试的二类指示物和过程挑战装置.pdf
- 中国国家标准 GB/T 18282.6-2026医疗产品灭菌 化学指示物 第6部分:用于小型蒸汽灭菌器性能测试的二类指示物和过程挑战装置.pdf
- 中国国家标准 GB/T 31308.1-2026行政、商业和行业中的数据元、过程和文档 长效签名 第1部分:CMS高级电子签名(CAdES)规范.pdf
- GB/T 31308.1-2026行政、商业和行业中的数据元、过程和文档 长效签名 第1部分:CMS高级电子签名(CAdES)规范.pdf
最近下载
- (人教版2026新教材)数学一年级下册全册教材分析 课件.pptx
- 注射用硫酸艾沙康唑(康新博)中文说明书.pdf
- 初中数学八上-第十一章 实数和二次根式(压轴专练)(六大题型50道)(原卷版).pdf VIP
- 2021年NICE指南医患共同决策.pdf VIP
- 深度解析(2026)《GBT 10592-2023高低温试验箱技术条件》.pptx VIP
- 23.《“蛟龙”探海》课件 (共24张ppt)统编版语文七年级下册.pptx VIP
- 爱登堡电梯EDVF60/70调试、使用、维护说明(V1.0).pdf
- 舒适状况量表(GCQ).pdf VIP
- (正式版)D-L∕T 872-2016 小电流接地系统单相接地故障选线装置技术条件.docx VIP
- ECMO在ICU临床应用现状及展望护理课件.pptx VIP
原创力文档

文档评论(0)