📄 derbyserver.java.svn-base
字号:
package com.easyjf.server;
import java.io.BufferedReader;
import java.io.File;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import org.apache.derby.drda.NetworkServerControl;
import com.easyjf.web.Globals;
public class DerbyServer {
private static DerbyServer instance;
private final static Object keyForDerbyServer = new Object();
public static DerbyServer getInstance() {
if (DerbyServer.instance == null) {
synchronized (DerbyServer.keyForDerbyServer) {
if (DerbyServer.instance == null) {
DerbyServer.instance = new DerbyServer();
}
}
}
return DerbyServer.instance;
}
private DerbyServer() {
}
public static void main(String[] a) {
DerbyServer ds = new DerbyServer();
ds.run(a);
}
/**
* @param s
*/
public void run(String... s) {
String dir = "../data";
if (s.length == 1) {
dir = s[0];
}
String driver = "org.apache.derby.jdbc.ClientDriver";
System.setProperty("derby.system.home", dir);
String dbName = "easyjweb";
String connectionURL = "";
File f = new File(dir);
boolean b = false;
if (f.exists()) {
b = true;
connectionURL = "jdbc:derby://localhost:1527/" + dbName
+ ";user=easyjf;pwd=easyjf;create=false;";
} else {
b = false;
connectionURL = "jdbc:derby://localhost:1527/" + dbName
+ ";user=easyjf;pwd=easyjf;create=true;";
}
try {
NetworkServerControl derbyServer = new NetworkServerControl();
PrintWriter pw = new PrintWriter(System.out);
derbyServer.start(pw);
Class.forName(driver);
Connection conn = DriverManager.getConnection(connectionURL);// 本地连接数据库
Statement st = conn.createStatement();
if (!b) {
st
.execute("create table easyjweb (version varchar(30) not null)");
st.executeUpdate("insert into easyjweb values ('"+Globals.VERSION+"')");
}
ResultSet rs = st.executeQuery("select * from easyjweb");// 读取刚插入的数据
while (rs.next()) {
rs.getString(1);
// System.out.println("当前EasyJWeb 版本 " +
// version);
}
System.out.println("成功启动数据库服务器");
System.out.println("按Ctrl+C键或回车键终止服务.");
BufferedReader in = new BufferedReader(new InputStreamReader(
System.in));
in.readLine();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -