⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 derbyserver.java.svn-base

📁 EasyJWeb是基于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 + -