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

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

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

    be nice

    Qqin的java
    隨筆 - 6, 文章 - 0, 評(píng)論 - 3, 引用 - 0
    數(shù)據(jù)加載中……

    2007年9月8日

    修改eclipse的啟動(dòng)畫面

    eclipse的啟動(dòng)畫面使用的bmp格式的圖面文件,可以使用PS進(jìn)行修改,或干脆把自己的照片放上去...

    圖面存放的位置:
    eclipse_home\plugins\org.eclipse.platform_3.2.2.r322_v20070117b\splash.bmp

    紅色字體不固定,隨eclipse的版本不同而不同

    注:此為轉(zhuǎn)貼,不知道原出處,呵呵。

    posted @ 2008-01-04 14:58 Qqin 閱讀(515) | 評(píng)論 (1)編輯 收藏

    查看weblogic和oracle的版本信息

    查看weblogic的版本信息,可以在bea\logs目錄下的log.txt中查到版本信息,如2007-5-29 21:15:14 -- install "WebLogic Platform" 8.1.1.0 at D:\bea\weblogic81
        release 8.1.1.0 [Added]


    查看oracle的版本信息有幾個(gè)方法

    (1)用客戶端連接到數(shù)據(jù)庫(kù),執(zhí)行select * from v$instance
    查看version項(xiàng)

    (2)select * from product_component_version

    (3)或查詢V$VERSION查看組件級(jí)信息

    posted @ 2007-12-20 20:01 Qqin 閱讀(9735) | 評(píng)論 (1)編輯 收藏

    如何使用Log4j(轉(zhuǎn)貼)

    1、 Log4j是什么?
      Log4j可以幫助調(diào)試(有時(shí)候debug是發(fā)揮不了作 用的)和分析,要下載和了解更詳細(xì)的內(nèi)容,還是訪問(wèn)其官方網(wǎng)站吧:
    http://jakarta.apache.org/log4j 。

    2、Log4j的概念
       Log4j中有三個(gè)主要的組件,它們分別是
    Logger、Appender和Layout,Log4j 允許開發(fā)人員定義多個(gè)Logger,每個(gè)Logger擁有自己的名字,Logger之間通過(guò)名字來(lái)表明隸屬關(guān)系。有一個(gè)Logger稱為Root,它永遠(yuǎn)存在,且不能通過(guò)名字檢索或引用,可以通過(guò)Logger.getRootLogger()方法獲得,其它Logger通過(guò) Logger.getLogger(String name)方法。
       Appender則是用來(lái)指明將所有的log信息存放到什么地方,Log4j中支持多種appender,如
    console、files、GUI components、NT Event Loggers等,一個(gè)Logger可以擁有多個(gè)Appender,也就是你既可以將Log信息輸出到屏幕,同時(shí)存儲(chǔ)到一個(gè)文件中。
       Layout的作用是控制Log信息的輸出方式,也就是格式化輸出的信息。
       Log4j中將要輸出的Log信息定義了5種級(jí)別,依次為DEBUG、INFO、WARN、ERROR和FATAL,當(dāng)輸出時(shí),只有級(jí)別高過(guò)配置中規(guī)定的級(jí)別的信息才能真正的輸出,這樣就很方便的來(lái)配置不同情況下要輸出的內(nèi)容,而不需要更改代碼,這點(diǎn)實(shí)在是方便啊。

    3、Log4j的配置文件
      雖然可以不用配置文件,而在程序中實(shí)現(xiàn)配置,但這種方法在如今的系統(tǒng)開發(fā)中顯然是不可取的,能采用配置文件的地方一定一定要用配置文件。Log4j支持兩種格式的配置文件:XML格式和Java的property格式,本人更喜歡后者,首先看一個(gè)簡(jiǎn)單的例子吧,如下:

      log4j.rootLogger=debug, stdout, R
      log4j.appender.stdout=org.apache.log4j.ConsoleAppender
      log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

      # Pattern to output the caller's file name and line number.
      log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

      log4j.appender.R=org.apache.log4j.RollingFileAppender
      log4j.appender.R.File=example.log
      log4j.appender.R.MaxFileSize=
    100KB

      # Keep one backup file
      log4j.appender.R.MaxBackupIndex=1

      log4j.appender.R.layout=org.apache.log4j.PatternLayout
      log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n         

      首先,是設(shè)置root,格式為 log4j.rootLogger=[level],appenderName, ...,其中l(wèi)evel就是設(shè)置需要輸出信息的級(jí)別,后面是appender的輸出的目的地,appenderName就是指定日志信息輸出到哪個(gè)地方。您可以同時(shí)指定多個(gè)輸出目的地。 配置日志信息輸出目的地Appender,其語(yǔ)法為
      log4j.appender.appenderName = fully.qualified.name.of.appender.class
      log4j.appender.appenderName.option1 = value1
      ...
      log4j.appender.appenderName.option = valueN

    Log4j提供的appender有以下幾種:
      org.apache.log4j.ConsoleAppender(控制臺(tái))
      org.apache.log4j.FileAppender(文件)
      org.apache.log4j.DailyRollingFileAppender(每天產(chǎn)生一個(gè)日志文件)
      org.apache.log4j.RollingFileAppender(文件大小到達(dá)指定尺寸的時(shí)候產(chǎn)生新文件)
      org.apache.log4j.WriterAppender(將日志信息以流格式發(fā)送到任意指定的地方)
    配置日志信息的格式(布局),其語(yǔ)法為:
      log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
      log4j.appender.appenderName.layout.option1 = value1
      ....
      log4j.appender.appenderName.layout.option = valueN

    Log4j提供的layout有以下幾種:
      org.apache.log4j.HTMLLayout(以HTML表格形式布局),
      org.apache.log4j.PatternLayout(可以靈活地指定布局模式),
      org.apache.log4j.SimpleLayout(包含日志信息的級(jí)別和信息字符串),
      org.apache.log4j.TTCCLayout(包含日志產(chǎn)生的時(shí)間、線程、類別等等信息)

    Log4J采用類似C語(yǔ)言中的printf函數(shù)的打印格式格式化日志信息,打印參數(shù)如下: %m 輸出代碼中指定的消息

       %p 輸出優(yōu)先級(jí),即DEBUG,INFO,WARN,ERROR,F(xiàn)ATAL
      %r 輸出自應(yīng)用啟動(dòng)到輸出該log信息耗費(fèi)的毫秒數(shù)
      %c 輸出所屬的類目,通常就是所在類的全名
      %t 輸出產(chǎn)生該日志事件的線程名
      %n 輸出一個(gè)回車換行符,Windows平臺(tái)為“\r\n”,Unix平臺(tái)為“\n”
      %d 輸出日志時(shí)間點(diǎn)的日期或時(shí)間,默認(rèn)格式為ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},輸出類似:
    2002年10月18日 22:10:28,921
      %l 輸出日志事件的發(fā)生位置,包括類目名、發(fā)生的線程,以及在代碼中的行數(shù)。舉例:Testlog4.main(TestLog4.java:10)



    4、Log4j在程序中的使用

      要在自己的程序中使用Log4j,首先需要將commons-logging.jar和logging-log4j-1.2.9.jar導(dǎo)入到構(gòu)建路徑中。然后再將log4j.properties放到src根目錄下。這樣就可以在程序中使用log4j了。在類中使用log4j,
    首先聲明一個(gè)靜態(tài)變量 Logger logger=Logger.getLog("classname");現(xiàn)在就可以使用了,用法如下:logger.debug("debug message")或者logger.info("info message"),看下面一個(gè)小例子:

      import com.foo.Bar;
      import org.apache.log4j.Logger;
      import org.apache.log4j.PropertyConfigurator;
      public class MyApp {
        static Logger logger = Logger.getLogger(MyApp.class.getName());
        public static void main(String[] args) {
          // BasicConfigurator replaced with PropertyConfigurator.
          PropertyConfigurator.configure(args[0]);
          logger.info("Entering application.");
          Bar bar = new Bar();
          bar.doIt();
          logger.info("Exiting application.");
        }
      }

    posted @ 2007-10-17 22:07 Qqin 閱讀(415) | 評(píng)論 (0)編輯 收藏

    mypractice(struts+spring+hibernate)-02

    剛起步還真難啊,有半個(gè)小時(shí)都不想繼續(xù)了,不過(guò)還是咬牙堅(jiān)持下來(lái)了。
    閱讀了struts的原理及結(jié)構(gòu)。
    昨天遇到的問(wèn)題也解決了一些。
    一 、首先是使用struts標(biāo)簽的問(wèn)題,從網(wǎng)上看需要兩步,一步是需要在web.xml中注冊(cè)taglib,第二步就是在jsp中引用標(biāo)簽了。但是注冊(cè)taglib的時(shí)候要注意web-app的版本。如果是2.3直接注冊(cè)就可以了,如果是2.4版本則要把taglib放在jsp-config下。
    2.3的:

    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <taglib>
    <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
    </taglib>
    2.4的:
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
      
    <jsp-config>
        
    <taglib>
          
    <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
          
    <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
        
    </taglib>
      
    </jsp-config>
    jsp中引用標(biāo)簽:
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>

    昨天jsp文件中的警告說(shuō)unknow tag也是因?yàn)闆](méi)有注冊(cè)的緣故。

    posted @ 2007-09-08 14:29 Qqin 閱讀(332) | 評(píng)論 (0)編輯 收藏

    主站蜘蛛池模板: 亚洲中文久久精品无码ww16| 久久w5ww成w人免费| 国产免费牲交视频| 久久爰www免费人成| 亚洲第一AAAAA片| 久久国产精品免费观看| 亚洲成a人片在线观看无码专区 | 男的把j放进女人下面视频免费| 老司机69精品成免费视频| 亚洲精品国产精品乱码视色| 中文字幕乱码系列免费| 中文字幕亚洲无线码a| 国产成人久久AV免费| 亚洲第一页在线视频| 国产精品无码免费播放| 亚洲AV无码专区在线观看成人| 无码日韩人妻AV一区免费l| 亚洲精品老司机在线观看| 亚洲国产一二三精品无码| 国产精品小视频免费无限app| 久久久久久国产a免费观看黄色大片 | 亚洲电影免费在线观看| 免费观看黄网站在线播放| 亚洲综合激情五月丁香六月| 免费看a级黄色片| 成人免费观看男女羞羞视频| 成人影片麻豆国产影片免费观看| 亚洲中文字幕无码久久精品1| 亚洲精品无码专区在线播放| 亚洲精品美女久久久久99小说| 精品国产亚洲一区二区在线观看| 久久久久久亚洲精品影院| 日韩在线天堂免费观看 | 黄色一级免费网站| 亚洲精品乱码久久久久66| 国产亚洲情侣久久精品| 亚洲国产精品成人精品无码区在线| 美女视频黄.免费网址| 亚洲区小说区图片区QVOD| 99久久精品国产免费| 亚洲乱亚洲乱妇24p|