實現openfire插件過程中對於數據庫部分的一個參考文章
我們都知道,openfire的二次開發一般都是以插件形式組織的。openfire已有數據庫及數據表。今天我們來講,我們進行插件開發的時候,如何創建自己的數據表,添加到openfire原有的數據庫中。
1.寫數據庫創建的腳本。
插件src目錄下新建database文件夾,目錄結構如下所示:
在database目錄下新建testPlugin_mysql.sql,內容如下:
INSERT INTO ofVersion (name, version) VALUES ('testplugin', 0);
CREATE TABLE messageHistory (
messageID BIGINT NOT NULL auto_increment,
date VARCHAR(15) NOT NULL,
fromUsername VARCHAR(64) NOT NULL ,
toUsername VARCHAR(64) NOT NULL,
messageSize INT ,
stanza TEXT NOT NULL,
PRIMARY KEY (messageID)
);
INSERT INTO ofVersion (name, version) VALUES ('testplugin', 0);
2.修改plugin.xml。添加兩行語句:
testplugin
0
3.編譯testPlugin插件,並運行openfire。我們看到控制檯輸出:
4.我們可以打開數據庫,看到已經新建了一個數據表。如下圖:
總結:我們看到,我們已經創建了自己的數據庫表,並已與openfire原有的數據庫表整合在了一起。如果我們要對數據表進行操作的話,可以用類似下面的語句:
Connection con = null;
PreparedStatement pstmt = null;
String sql = “INSERT INTO messageHistory(date, fromUsername, toUsername, messageSize, stanza) VALUES('20111212', 'hcc', 'erin', '10', 'this is your content')”;
DbConnectionManager.getConnection();
pstmt = con.prepareStatement(sql);
pstmt.executeUpdate();