麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

JDBMonitor全攻略

2019-11-18 13:06:23
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

        JDBMonitor是一個(gè)開(kāi)源項(xiàng)目。使用它開(kāi)發(fā)者可以很輕松為系統(tǒng)增加數(shù)據(jù)庫(kù)執(zhí)行日志功能。它使用十分方便,您所需要做的唯一事情就是在您系統(tǒng)的JDBC連接字符串前增加類似于 "listenerconfig=/config.xml:url=" 的字符即可,不用寫任何代碼。

使用 JDBMonitor,您可以把數(shù)據(jù)庫(kù)執(zhí)行情況記錄通過(guò)各種方式記錄下來(lái),比如打印到控制臺(tái)、輸出到文件或者通過(guò)socket傳送給遠(yuǎn)程客戶端。JDBMonitor是可擴(kuò)展的,您可以擴(kuò)展它來(lái)將執(zhí)行情況通過(guò)其他方式記錄下來(lái),您所需要做的就是寫一個(gè)實(shí)現(xiàn)IDBListener接口的類即可。

JDBMonitor遵守 GNU Lesser General Public Licence (LGPL)協(xié)議。此協(xié)議包含在發(fā)行包中。

入門

幾乎所有大型數(shù)據(jù)庫(kù)應(yīng)用都包含有自己的SQL執(zhí)行日志功能,此功能不僅能幫助開(kāi)發(fā)人員調(diào)試,而且可以為DBA(數(shù)據(jù)庫(kù)治理員)提供系統(tǒng)的運(yùn)行信息。

(1)很難將業(yè)務(wù)邏輯同日志代碼分離

(2)降低了代碼的可讀性。

(3)降低了系統(tǒng)的運(yùn)行速度。在記錄日志的時(shí)候,程序會(huì)暫停運(yùn)行等待直到記錄完成,而I/O操作是相當(dāng)耗時(shí)的。

(4)很難記錄運(yùn)行耗時(shí)、語(yǔ)句參數(shù)等其他信息

(5)很難為我們無(wú)法修改代碼的系統(tǒng)(例如沒(méi)有源代碼的系統(tǒng))或者很難增加記錄日志功能代碼的系統(tǒng)(比如系統(tǒng)使用了ORMapping)增加日志功能。

JDBMonitor 則不同:

(1)您最多只需要修改一行代碼。您需要修改的代碼就是這一行:Class.forName("com.cownew.JDBMonitor.jdbc.DBDriver") ,然后再修改一下 JDBC連接字符串,只要從 “jdbc:db2://10.74.198.247:50000/app”修改成” listenerconfig=config.xml:url= jdbc:db2://10.74.198.247:50000/app”就可以了。在您使用WebLogic ,Tomcat或其他服務(wù)器的數(shù)據(jù)源功能的時(shí)候,連修改代碼這一步都是無(wú)需的。

(2)JDBMonitor另起一個(gè)線程來(lái)記錄SQL,所以它不會(huì)對(duì)程序運(yùn)行速度有任何影響。

(3)它是高度可擴(kuò)展的,所以您可以擴(kuò)展它來(lái)把執(zhí)行情況通過(guò)其他方式記錄。比如,您可以寫一個(gè)擴(kuò)展類,來(lái)通過(guò)電子郵件將日志發(fā)送出去。

取得 JDBMonitor

JDBMonitor的最新穩(wěn)定版本可以在JDBMonitor的網(wǎng)站上取得:

http://www.cownew.com/JDBMonitor

使用 JDBMonitor

1 將 jdbmonitor.jar放到您系統(tǒng)的類路徑下。

2 讓系統(tǒng)加載 JDBMonitor的JDBC驅(qū)動(dòng)。

這一步將會(huì)依您系統(tǒng)加載JDBC驅(qū)動(dòng)的方式的不同而不同。

(1)假如您通過(guò)代碼的形式加載JDBC驅(qū)動(dòng),例如:

   Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);
   Connection cn = DriverManager.getConnection(……);

在這種情況下 ,您必須修改 “Class.forName”這一句來(lái)加載JDBMonitor的JDBC驅(qū)動(dòng)(“com.cownew.JDBMonitor.jdbc.DBDriver”),而非以前的數(shù)據(jù)庫(kù)JDBC驅(qū)動(dòng)。

例如:

Class.forName(“com.cownew.JDBMonitor.jdbc.DBDriver”);
   Connection cn = DriverManager.getConnection(……);

(2)假如您在配置文件中指定JDBC驅(qū)動(dòng),比如,數(shù)據(jù)源配置文件或者其他類似的文件。

請(qǐng)修改原來(lái)的  JDBC驅(qū)動(dòng)類為 “com.cownew.JDBMonitor.jdbc.DBDriver” 。

3 讓 JDBMonitor加載能夠加載原來(lái)的JDBC驅(qū)動(dòng)

JDBMonitor的工作原理就是截獲JDBC驅(qū)動(dòng)的SQL語(yǔ)句調(diào)用、記錄SQL語(yǔ)句,然后將SQL語(yǔ)句重新轉(zhuǎn)發(fā)給原來(lái)的JDBC驅(qū)動(dòng),所以JDBMonitor必須首先向DriverManager注冊(cè)JDBC驅(qū)動(dòng)。

原來(lái)的JDBC驅(qū)動(dòng)定義在配置文件的“JdbcDrivers” 段中。
<JdbcDrivers>
    <JdbcDriver class=" com.MySQL.jdbc.Driver"/>
  </JdbcDrivers>

4 在原來(lái)的JDBC連接字符串前增加 JDBMonitor所需的信息。

您所需要做的就是將” listenerconfig=<configfilepath>:url=” 增加到原來(lái)的JDBC連接字符串前。“<configfilepath>”代表配置文件的路徑,下面集中路徑都是合法的:



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久草在线网址 | 欧美成人免费tv在线播放 | 国产欧美亚洲精品 | 黄网站免费在线看 | 免费黄网站在线播放 | 午夜视频在线观 | 悠悠成人资源亚洲一区二区 | 国产乱淫av片免费观看 | 性少妇videosexfreexx入片 | 久久新地址 | 国产男女爽爽爽爽爽免费视频 | 久久久久免费精品 | 精品久久久久久久久久久αⅴ | 国产一区二区三区撒尿在线 | 色成人在线| 国产精品性夜天天视频 | 视频一区二区国产 | 91久久久国产精品 | 91精品欧美一区二区三区 | 高潮激情aaaaa免费看 | 日韩毛片网站 | 毛片在线免费视频 | 青热久思思 | 亚洲午夜国产 | 久久国产综合精品 | 久久久久久久久久美女 | 欧美精品一区二区性色 | 久久久久久麻豆 | 欧美激情精品久久久久久久久久 | 国产午夜亚洲精品午夜鲁丝片 | 黄色va视频 | 国产精品久久久久久久久久东京 | 欧美成人一级 | 久久亚洲视频网 | 黑人一区二区三区四区五区 | 久久精品视频69 | 最新毛片在线观看 | 九色国产| 久草视频在线看 | 最新中文字幕日本 | 中文字幕综合在线观看 |