<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    blog.Toby

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      130 隨筆 :: 2 文章 :: 150 評(píng)論 :: 0 Trackbacks

    SQL Server 2000 Driver for JDBC Service Pack 3 的下載

    之前需要注意一點(diǎn),sql server同樣必須打上了sp3的補(bǔ)丁,然后才能與jdbc for sqlserver sp3連接。如果是"Error establishing socket"錯(cuò)誤,很有可能是要在sql上打sp3補(bǔ)丁。

    下面是對(duì)運(yùn)行log4jMS SQL Server 2000 SP3日志的計(jì)算機(jī)的要求:

    • ? SQL Server 2000 Driver for JDBC Service Pack 3 您可以從以下位置下載并安裝適應(yīng)于 SQLServer SP3 jdbc 版本:
      瀏覽

    http://www.microsoft.com/downloads/details.aspx?familyid=07287B11-0502-461A-B138-2AA54BFDC03A&displaylang=en

    如果只是 log4j sql server ,我們只需要下載這個(gè)包中的 mssqlserver.tar

    即可,不必安裝 jdbc

    http://www.microsoft.com/downloads/info.aspx?na=46&p=3&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=07287B11-0502-461A-B138-2AA54BFDC03A&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f4%2f1%2fd%2f41d3e9c0-64d1-451e-947b-7a4cba273b2d%2fmssqlserver.tar

    下載信息為:

    l???????? Download files belowQuick InfoVersion:? 2.2.0040

    l???????? Date Published:? 7/6/2004

    l???????? Language:? English

    l???????? Download Size:? 2883 KB*

    得到 jar

    mssqlserver.tar 解壓縮出:

    l???????? msbase.jar

    l???????? msutil.jar

    l???????? mssqlserver.jar

    如果是做基于 Tomcat web 應(yīng)用,請(qǐng)放在 tomcat common\lib 文件夾下。并讓你的工程加入對(duì)它們的引用。

    數(shù)據(jù)庫日志表的準(zhǔn)備

    在數(shù)據(jù)庫中準(zhǔn)備一個(gè)這樣的表, jws_log

    生成腳本:

    CREATE TABLE [dbo].[jws_log] (

    ??? [nId] [int] IDENTITY (1, 1) NOT NULL ,

    ??? [dtDate] [datetime] NOT NULL ,

    ??? [sThread] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,

    ??? [sLevel] [varchar] (200) COLLATE Chinese_PRC_CI_AS NOT NULL ,

    ??? [sLogger] [varchar] (200) COLLATE Chinese_PRC_CI_AS NOT NULL ,

    ??? [sMessage] [varchar] (2000) COLLATE Chinese_PRC_CI_AS NOT NULL ,

    ??? [sException] [varchar] (4000) COLLATE Chinese_PRC_CI_AS NULL

    ) ON [PRIMARY]

    GO

    ?

    ALTER TABLE [dbo].[jws_log] WITH NOCHECK ADD

    ??? CONSTRAINT [PK_jws_log] PRIMARY KEY? CLUSTERED

    ??? (

    ??????? [nId]

    ??? )? ON [PRIMARY]

    GO

    其中, sLevel 字段代表日志的級(jí)別; sLogger 字段代表日志是由哪一個(gè)類或者文件產(chǎn)生的,如

    iNotes.Default.Page_Load(c:\mailsource\default.aspx.cs:269) ”; sMessage 字段代表日志的內(nèi)容。

    工程中 Log4J 的配置

    對(duì)工程的屬性文件,需要如此配置:

    ? 配置:

    log4j.rootLogger=DEBUG,CONSOLE,DATABASE

    log4j.addivity.org.apache=true

    ########################

    # JDBC Appender

    #######################

    log4j.appender.DATABASE.Threshold=INFO

    log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender

    #log4j.appender.DATABASE.BufferSize=10

    log4j.appender.DATABASE.URL=jdbc:microsoft:sqlserver://192.168.1.111:1433;DatabaseName=ultra_domino

    log4j.appender.DATABASE.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver

    log4j.appender.DATABASE.user=sa

    log4j.appender.DATABASE.password=

    log4j.appender.DATABASE.sql=INSERT INTO wap_mail_jws_log? VALUES ('%d{yyyy-MM-dd HH:mm:ss}', '%t', '%p', '%l', '%m', '')

    log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout

    ??????

    下面我們對(duì)“ %d %t %p %l %m %n ”一一講解:

    l???????? %d 輸出日志時(shí)間點(diǎn)的日期或時(shí)間,默認(rèn)格式為 ISO8601 ,也可以在其后指定格式,比如: %d{yyyy-MM-dd HH:mm:ss} ,輸出類似: 2005-7-19 17:49:27 ,剛好適合插入 SQLServer

    l???????? %t? 產(chǎn)生該日志事件的線程名

    l???????? %p 日志的 log_level ,如 DEBUG WARN 或者 INFO

    l???????? %c? 輸出所屬的類目,通常就是所在類的全名 ,如“ iNotes.Default ”;

    l???????? %m 日志的內(nèi)容;

    l???????? %l ? 輸出日志事件的發(fā)生位置,包括類目名、發(fā)生的線程,以及在代碼中的行數(shù)。如 write2database.main(write2database.java:33)

    l???????? %n ? 輸出一個(gè)回車換行符, Windows 平臺(tái)為“ \r\n ”, Unix 平臺(tái)為“ \n

    工程中調(diào)用 Log4J

    工程中的寫法:

    ? 代碼:

    import sun.jdbc.odbc.*;

    import java.sql.*;

    ?

    import org.apache.log4j.Category;

    import org.apache.log4j.Level;

    import org.apache.log4j.Logger;

    import org.apache.log4j.PropertyConfigurator;

    import org.apache.log4j.jdbc.*;

    ?

    /*

    ??? add for log4j: class Logger is the central class in the log4j package.

    ??? we can do most logging operations by Logger except configuration.

    ??? getLogger(...): retrieve a logger by name, if not then create for it.

    ??? */

    ??? static Logger logger = Logger.getLogger

    ??????????? ( write2database.class.getName () ) ;

    ???????

    /*

    ??????? add for log4j: class BasicConfigurator can quickly configure the package.

    ??????? print the information to console.

    ??????? */

    ??????? PropertyConfigurator.configure ( "log4j2database.properties" ) ;

    ???????

    ??????? logger.info ( "just test" ) ;

    ?

    ?????? 運(yùn)行起來,你就會(huì)看到有這樣的 sql 語句被執(zhí)行了:

    ?????? INSERT INTO jws_log? VALUES ('2005-07-19 17:48:50', 'main', 'INFO', 'write2database.main(write2database.java:33)', 'just test', '')

    posted on 2007-02-14 15:29 渠上月 閱讀(991) 評(píng)論(0)  編輯  收藏 所屬分類: java tips
    主站蜘蛛池模板: 亚洲伊人久久大香线蕉啊| 又黄又大又爽免费视频| 一区二区三区四区免费视频 | 亚洲精品无码久久| 亚洲中文字幕一二三四区| 亚洲国产成人久久精品app | 亚洲av日韩片在线观看| 亚洲av日韩av欧v在线天堂| 亚洲精品视频免费| 国产亚洲自拍一区| 精品国产_亚洲人成在线高清| 亚洲乱码一区二区三区在线观看| 亚洲国产精品一区二区成人片国内| 亚洲国产精品无码一线岛国| 亚洲最新视频在线观看| 亚洲国产精品日韩在线观看| 国产.亚洲.欧洲在线| 久久久久久亚洲精品无码| 免费高清A级毛片在线播放| 一级一级一片免费高清| 国产婷婷成人久久Av免费高清| 久久99精品免费视频| 97在线观看永久免费视频| 免费黄色小视频网站| 国产精品色午夜视频免费看| 亚洲国产精品一区二区九九 | 亚洲一区二区三区在线观看精品中文| 亚洲日韩v无码中文字幕 | 天天摸夜夜摸成人免费视频| 国产免费黄色大片| 亚洲一区二区视频在线观看| 国产AV无码专区亚洲精品| 亚洲午夜精品一区二区| 91亚洲精品麻豆| 国产精品亚洲综合一区在线观看 | 亚洲人配人种jizz| 青青免费在线视频| 久久这里只精品99re免费| 猫咪社区免费资源在线观看| 亚洲福利视频一区二区| 内射少妇36P亚洲区|