📄 catalogmanager.java
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package catalogManager;import fileManager.*;import database.*;import java.io.*;import java.io.Serializable;import java.util.*;/** * * @author outlaw */public class CatalogManager { static ArrayList<String> databases=new ArrayList<String>(); static DataBaseData curDB=null; public static boolean useBP=true; public CatalogManager(){ databases=new ArrayList<String>(); curDB=null; } public static DataBaseData getCurDB(){ return curDB; } public static void setCurDB(DataBaseData newDB){ curDB=newDB; } public static void initDBInfo() throws Exception { try { DataBaseInfo dbi=FileManager.getDataBaseInfo(); ArrayList<String> names=dbi.getNames(); int len=names.size(); for(int i=0;i<len;i++) { databases.add(names.get(i)); } setCurDBByName(databases.get(0)); int tbLen=curDB.getTBNumber(); ArrayList<TableData> tabels=curDB.getTables(); if(tbLen!=tabels.size()) { throw new OperationInfo("The table number of the current database:["+curDB.getName()+ "]is not consistent!"); } for(int i=0;i<tbLen;i++) { tabels.get(i).init(); } }catch(FileNotFoundException ex) { //如果没有找到已有的DataBaseInfo文件说明这个系统中还没有任何的数据库文件。 //这个时候不做任何事情,让database中的名字全为空,而curDB为null。 } } public static void setCurDBByName(String dbName) throws Exception { setCurDB(FileManager.readInDB(FileManager.WORKPATH+dbName+"/"+dbName+".db")); } public static int getTotalDBnumber(){ return databases.size(); } public static ArrayList<String> getAllDBName(){ return databases; } public static void addDB(String newDBName){ databases.add(newDBName); } public static TableData getTableByName(String tbName) { ArrayList<TableData> tables=curDB.getTables(); int len=tables.size(); for(int i=0;i<len;i++) { if(tables.get(i).getName().equals(tbName)) return tables.get(i); } return null; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -