PageRenderTime 48ms CodeModel.GetById 11ms app.highlight 26ms RepoModel.GetById 1ms app.codeStats 0ms

/lib/apache-log4j/site/apidocs/org/apache/log4j/jdbc/JDBCAppender.html

https://bitbucket.org/arkban/somersault
HTML | 1063 lines | 928 code | 111 blank | 24 comment | 0 complexity | 9027ce69d7dd24b5457bcf07a74a8132 MD5 | raw file
Possible License(s): LGPL-2.1, BSD-3-Clause, Apache-2.0
   1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
   2<!--NewPage-->
   3<HTML>
   4<HEAD>
   5<!-- Generated by javadoc (build 1.6.0_16) -->
   6<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
   7<TITLE>
   8JDBCAppender (Apache Log4j 1.2.16 API)
   9</TITLE>
  10
  11<META NAME="date" CONTENT="2010-03-30">
  12
  13<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
  14
  15<SCRIPT type="text/javascript">
  16function windowTitle()
  17{
  18    if (location.href.indexOf('is-external=true') == -1) {
  19        parent.document.title="JDBCAppender (Apache Log4j 1.2.16 API)";
  20    }
  21}
  22</SCRIPT>
  23<NOSCRIPT>
  24</NOSCRIPT>
  25
  26</HEAD>
  27
  28<BODY BGCOLOR="white" onload="windowTitle();">
  29<HR>
  30
  31
  32<!-- ========= START OF TOP NAVBAR ======= -->
  33<A NAME="navbar_top"><!-- --></A>
  34<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
  35<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
  36<TR>
  37<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
  38<A NAME="navbar_top_firstrow"><!-- --></A>
  39<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  40  <TR ALIGN="center" VALIGN="top">
  41  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  42  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  43  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  44  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/JDBCAppender.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  45  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  46  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  47  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  48  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  49  </TR>
  50</TABLE>
  51</TD>
  52<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
  53</EM>
  54</TD>
  55</TR>
  56
  57<TR>
  58<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  59&nbsp;PREV CLASS&nbsp;
  60&nbsp;NEXT CLASS</FONT></TD>
  61<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  62  <A HREF="../../../../index.html?org/apache/log4j/jdbc/JDBCAppender.html" target="_top"><B>FRAMES</B></A>  &nbsp;
  63&nbsp;<A HREF="JDBCAppender.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
  64&nbsp;<SCRIPT type="text/javascript">
  65  <!--
  66  if(window==top) {
  67    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  68  }
  69  //-->
  70</SCRIPT>
  71<NOSCRIPT>
  72  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
  73</NOSCRIPT>
  74
  75
  76</FONT></TD>
  77</TR>
  78<TR>
  79<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  80  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
  81<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  82DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
  83</TR>
  84</TABLE>
  85<A NAME="skip-navbar_top"></A>
  86<!-- ========= END OF TOP NAVBAR ========= -->
  87
  88<HR>
  89<!-- ======== START OF CLASS DATA ======== -->
  90<H2>
  91<FONT SIZE="-1">
  92org.apache.log4j.jdbc</FONT>
  93<BR>
  94Class JDBCAppender</H2>
  95<PRE>
  96<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  97  <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/apache/log4j/AppenderSkeleton.html" title="class in org.apache.log4j">org.apache.log4j.AppenderSkeleton</A>
  98      <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.jdbc.JDBCAppender</B>
  99</PRE>
 100<DL>
 101<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../org/apache/log4j/Appender.html" title="interface in org.apache.log4j">Appender</A>, <A HREF="../../../../org/apache/log4j/spi/OptionHandler.html" title="interface in org.apache.log4j.spi">OptionHandler</A></DD>
 102</DL>
 103<HR>
 104<DL>
 105<DT><PRE>public class <B>JDBCAppender</B><DT>extends <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html" title="class in org.apache.log4j">AppenderSkeleton</A><DT>implements <A HREF="../../../../org/apache/log4j/Appender.html" title="interface in org.apache.log4j">Appender</A></DL>
 106</PRE>
 107
 108<P>
 109The JDBCAppender provides for sending log events to a database.
 110
 111 <p><b><font color="#FF2222">WARNING: This version of JDBCAppender
 112 is very likely to be completely replaced in the future. Moreoever,
 113 it does not log exceptions</font></b>.
 114
 115  <p>Each append call adds to an <code>ArrayList</code> buffer.  When
 116  the buffer is filled each log event is placed in a sql statement
 117  (configurable) and executed.
 118
 119  <b>BufferSize</b>, <b>db URL</b>, <b>User</b>, & <b>Password</b> are
 120  configurable options in the standard log4j ways.
 121
 122  <p>The <code>setSql(String sql)</code> sets the SQL statement to be
 123  used for logging -- this statement is sent to a
 124  <code>PatternLayout</code> (either created automaticly by the
 125  appender or added by the user).  Therefore by default all the
 126  conversion patterns in <code>PatternLayout</code> can be used
 127  inside of the statement.  (see the test cases for examples)
 128
 129  <p>Overriding the <A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getLogStatement(org.apache.log4j.spi.LoggingEvent)"><CODE>getLogStatement(org.apache.log4j.spi.LoggingEvent)</CODE></A> method allows more
 130  explicit control of the statement used for logging.
 131
 132  <p>For use as a base class:
 133
 134    <ul>
 135
 136    <li>Override <code>getConnection()</code> to pass any connection
 137    you want.  Typically this is used to enable application wide
 138    connection pooling.
 139
 140     <li>Override <code>closeConnection(Connection con)</code> -- if
 141     you override getConnection make sure to implement
 142     <code>closeConnection</code> to handle the connection you
 143     generated.  Typically this would return the connection to the
 144     pool it came from.
 145
 146     <li>Override <code>getLogStatement(LoggingEvent event)</code> to
 147     produce specialized or dynamic statements. The default uses the
 148     sql option value.
 149
 150    </ul>
 151<P>
 152
 153<P>
 154<DL>
 155<DT><B>Author:</B></DT>
 156  <DD>Kevin Steppe (<A HREF="mailto:ksteppe@pacbell.net">ksteppe@pacbell.net</A>)</DD>
 157</DL>
 158<HR>
 159
 160<P>
 161<!-- =========== FIELD SUMMARY =========== -->
 162
 163<A NAME="field_summary"><!-- --></A>
 164<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 165<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
 166<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
 167<B>Field Summary</B></FONT></TH>
 168</TR>
 169<TR BGCOLOR="white" CLASS="TableRowColor">
 170<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 171<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</A></CODE></FONT></TD>
 172<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#buffer">buffer</A></B></CODE>
 173
 174<BR>
 175&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ArrayList holding the buffer of Logging Events.</TD>
 176</TR>
 177<TR BGCOLOR="white" CLASS="TableRowColor">
 178<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 179<CODE>protected &nbsp;int</CODE></FONT></TD>
 180<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#bufferSize">bufferSize</A></B></CODE>
 181
 182<BR>
 183&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size of LoggingEvent buffer before writting to the database.</TD>
 184</TR>
 185<TR BGCOLOR="white" CLASS="TableRowColor">
 186<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 187<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A></CODE></FONT></TD>
 188<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#connection">connection</A></B></CODE>
 189
 190<BR>
 191&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Connection used by default.</TD>
 192</TR>
 193<TR BGCOLOR="white" CLASS="TableRowColor">
 194<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 195<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 196<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#databasePassword">databasePassword</A></B></CODE>
 197
 198<BR>
 199&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User to use for default connection handling</TD>
 200</TR>
 201<TR BGCOLOR="white" CLASS="TableRowColor">
 202<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 203<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 204<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#databaseURL">databaseURL</A></B></CODE>
 205
 206<BR>
 207&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;URL of the DB for default connection handling</TD>
 208</TR>
 209<TR BGCOLOR="white" CLASS="TableRowColor">
 210<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 211<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 212<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#databaseUser">databaseUser</A></B></CODE>
 213
 214<BR>
 215&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User to connect as for default connection handling</TD>
 216</TR>
 217<TR BGCOLOR="white" CLASS="TableRowColor">
 218<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 219<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</A></CODE></FONT></TD>
 220<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#removes">removes</A></B></CODE>
 221
 222<BR>
 223&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Helper object for clearing out the buffer</TD>
 224</TR>
 225<TR BGCOLOR="white" CLASS="TableRowColor">
 226<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 227<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 228<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#sqlStatement">sqlStatement</A></B></CODE>
 229
 230<BR>
 231&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Stores the string given to the pattern layout for conversion into a SQL
 232 statement, eg: insert into LogTable (Thread, Class, Message) values
 233 ("%t", "%c", "%m").</TD>
 234</TR>
 235</TABLE>
 236&nbsp;<A NAME="fields_inherited_from_class_org.apache.log4j.AppenderSkeleton"><!-- --></A>
 237<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 238<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
 239<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.<A HREF="../../../../org/apache/log4j/AppenderSkeleton.html" title="class in org.apache.log4j">AppenderSkeleton</A></B></TH>
 240</TR>
 241<TR BGCOLOR="white" CLASS="TableRowColor">
 242<TD><CODE><A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#closed">closed</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#errorHandler">errorHandler</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#headFilter">headFilter</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#layout">layout</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#name">name</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#tailFilter">tailFilter</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#threshold">threshold</A></CODE></TD>
 243</TR>
 244</TABLE>
 245&nbsp;
 246<!-- ======== CONSTRUCTOR SUMMARY ======== -->
 247
 248<A NAME="constructor_summary"><!-- --></A>
 249<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 250<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
 251<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
 252<B>Constructor Summary</B></FONT></TH>
 253</TR>
 254<TR BGCOLOR="white" CLASS="TableRowColor">
 255<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#JDBCAppender()">JDBCAppender</A></B>()</CODE>
 256
 257<BR>
 258&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 259</TR>
 260</TABLE>
 261&nbsp;
 262<!-- ========== METHOD SUMMARY =========== -->
 263
 264<A NAME="method_summary"><!-- --></A>
 265<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 266<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
 267<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
 268<B>Method Summary</B></FONT></TH>
 269</TR>
 270<TR BGCOLOR="white" CLASS="TableRowColor">
 271<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 272<CODE>&nbsp;void</CODE></FONT></TD>
 273<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#append(org.apache.log4j.spi.LoggingEvent)">append</A></B>(<A HREF="../../../../org/apache/log4j/spi/LoggingEvent.html" title="class in org.apache.log4j.spi">LoggingEvent</A>&nbsp;event)</CODE>
 274
 275<BR>
 276&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds the event to the buffer.</TD>
 277</TR>
 278<TR BGCOLOR="white" CLASS="TableRowColor">
 279<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 280<CODE>&nbsp;void</CODE></FONT></TD>
 281<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#close()">close</A></B>()</CODE>
 282
 283<BR>
 284&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Closes the appender, flushing the buffer first then closing the default
 285 connection if it is open.</TD>
 286</TR>
 287<TR BGCOLOR="white" CLASS="TableRowColor">
 288<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 289<CODE>protected &nbsp;void</CODE></FONT></TD>
 290<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#closeConnection(java.sql.Connection)">closeConnection</A></B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A>&nbsp;con)</CODE>
 291
 292<BR>
 293&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Override this to return the connection to a pool, or to clean up the
 294 resource.</TD>
 295</TR>
 296<TR BGCOLOR="white" CLASS="TableRowColor">
 297<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 298<CODE>protected &nbsp;void</CODE></FONT></TD>
 299<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#execute(java.lang.String)">execute</A></B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;sql)</CODE>
 300
 301<BR>
 302&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Override this to provide an alertnate method of getting
 303 connections (such as caching).</TD>
 304</TR>
 305<TR BGCOLOR="white" CLASS="TableRowColor">
 306<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 307<CODE>&nbsp;void</CODE></FONT></TD>
 308<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#finalize()">finalize</A></B>()</CODE>
 309
 310<BR>
 311&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;closes the appender before disposal</TD>
 312</TR>
 313<TR BGCOLOR="white" CLASS="TableRowColor">
 314<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 315<CODE>&nbsp;void</CODE></FONT></TD>
 316<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#flushBuffer()">flushBuffer</A></B>()</CODE>
 317
 318<BR>
 319&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loops through the buffer of LoggingEvents, gets a
 320 sql string from getLogStatement() and sends it to execute().</TD>
 321</TR>
 322<TR BGCOLOR="white" CLASS="TableRowColor">
 323<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 324<CODE>&nbsp;int</CODE></FONT></TD>
 325<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getBufferSize()">getBufferSize</A></B>()</CODE>
 326
 327<BR>
 328&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 329</TR>
 330<TR BGCOLOR="white" CLASS="TableRowColor">
 331<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 332<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A></CODE></FONT></TD>
 333<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getConnection()">getConnection</A></B>()</CODE>
 334
 335<BR>
 336&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Override this to link with your connection pooling system.</TD>
 337</TR>
 338<TR BGCOLOR="white" CLASS="TableRowColor">
 339<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 340<CODE>&nbsp;boolean</CODE></FONT></TD>
 341<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getLocationInfo()">getLocationInfo</A></B>()</CODE>
 342
 343<BR>
 344&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gets whether the location of the logging request call
 345 should be captured.</TD>
 346</TR>
 347<TR BGCOLOR="white" CLASS="TableRowColor">
 348<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 349<CODE>protected &nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 350<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getLogStatement(org.apache.log4j.spi.LoggingEvent)">getLogStatement</A></B>(<A HREF="../../../../org/apache/log4j/spi/LoggingEvent.html" title="class in org.apache.log4j.spi">LoggingEvent</A>&nbsp;event)</CODE>
 351
 352<BR>
 353&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;By default getLogStatement sends the event to the required Layout object.</TD>
 354</TR>
 355<TR BGCOLOR="white" CLASS="TableRowColor">
 356<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 357<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 358<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getPassword()">getPassword</A></B>()</CODE>
 359
 360<BR>
 361&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 362</TR>
 363<TR BGCOLOR="white" CLASS="TableRowColor">
 364<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 365<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 366<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getSql()">getSql</A></B>()</CODE>
 367
 368<BR>
 369&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns pre-formated statement eg: insert into LogTable (msg) values ("%m")</TD>
 370</TR>
 371<TR BGCOLOR="white" CLASS="TableRowColor">
 372<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 373<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 374<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getURL()">getURL</A></B>()</CODE>
 375
 376<BR>
 377&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 378</TR>
 379<TR BGCOLOR="white" CLASS="TableRowColor">
 380<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 381<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
 382<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#getUser()">getUser</A></B>()</CODE>
 383
 384<BR>
 385&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 386</TR>
 387<TR BGCOLOR="white" CLASS="TableRowColor">
 388<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 389<CODE>&nbsp;boolean</CODE></FONT></TD>
 390<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#requiresLayout()">requiresLayout</A></B>()</CODE>
 391
 392<BR>
 393&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JDBCAppender requires a layout.</TD>
 394</TR>
 395<TR BGCOLOR="white" CLASS="TableRowColor">
 396<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 397<CODE>&nbsp;void</CODE></FONT></TD>
 398<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#setBufferSize(int)">setBufferSize</A></B>(int&nbsp;newBufferSize)</CODE>
 399
 400<BR>
 401&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 402</TR>
 403<TR BGCOLOR="white" CLASS="TableRowColor">
 404<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 405<CODE>&nbsp;void</CODE></FONT></TD>
 406<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#setDriver(java.lang.String)">setDriver</A></B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;driverClass)</CODE>
 407
 408<BR>
 409&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ensures that the given driver class has been loaded for sql connection
 410 creation.</TD>
 411</TR>
 412<TR BGCOLOR="white" CLASS="TableRowColor">
 413<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 414<CODE>&nbsp;void</CODE></FONT></TD>
 415<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#setLocationInfo(boolean)">setLocationInfo</A></B>(boolean&nbsp;flag)</CODE>
 416
 417<BR>
 418&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The <b>LocationInfo</b> option takes a boolean value.</TD>
 419</TR>
 420<TR BGCOLOR="white" CLASS="TableRowColor">
 421<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 422<CODE>&nbsp;void</CODE></FONT></TD>
 423<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#setPassword(java.lang.String)">setPassword</A></B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;password)</CODE>
 424
 425<BR>
 426&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 427</TR>
 428<TR BGCOLOR="white" CLASS="TableRowColor">
 429<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 430<CODE>&nbsp;void</CODE></FONT></TD>
 431<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#setSql(java.lang.String)">setSql</A></B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;s)</CODE>
 432
 433<BR>
 434&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 435</TR>
 436<TR BGCOLOR="white" CLASS="TableRowColor">
 437<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 438<CODE>&nbsp;void</CODE></FONT></TD>
 439<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#setURL(java.lang.String)">setURL</A></B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url)</CODE>
 440
 441<BR>
 442&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 443</TR>
 444<TR BGCOLOR="white" CLASS="TableRowColor">
 445<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
 446<CODE>&nbsp;void</CODE></FONT></TD>
 447<TD><CODE><B><A HREF="../../../../org/apache/log4j/jdbc/JDBCAppender.html#setUser(java.lang.String)">setUser</A></B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;user)</CODE>
 448
 449<BR>
 450&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
 451</TR>
 452</TABLE>
 453&nbsp;<A NAME="methods_inherited_from_class_org.apache.log4j.AppenderSkeleton"><!-- --></A>
 454<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 455<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
 456<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.<A HREF="../../../../org/apache/log4j/AppenderSkeleton.html" title="class in org.apache.log4j">AppenderSkeleton</A></B></TH>
 457</TR>
 458<TR BGCOLOR="white" CLASS="TableRowColor">
 459<TD><CODE><A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#activateOptions()">activateOptions</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#addFilter(org.apache.log4j.spi.Filter)">addFilter</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#clearFilters()">clearFilters</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#doAppend(org.apache.log4j.spi.LoggingEvent)">doAppend</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#getErrorHandler()">getErrorHandler</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#getFilter()">getFilter</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#getFirstFilter()">getFirstFilter</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#getLayout()">getLayout</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#getName()">getName</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#getThreshold()">getThreshold</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#isAsSevereAsThreshold(org.apache.log4j.Priority)">isAsSevereAsThreshold</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#setErrorHandler(org.apache.log4j.spi.ErrorHandler)">setErrorHandler</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#setLayout(org.apache.log4j.Layout)">setLayout</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#setName(java.lang.String)">setName</A>, <A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#setThreshold(org.apache.log4j.Priority)">setThreshold</A></CODE></TD>
 460</TR>
 461</TABLE>
 462&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
 463<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 464<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
 465<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
 466</TR>
 467<TR BGCOLOR="white" CLASS="TableRowColor">
 468<TD><CODE><A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
 469</TR>
 470</TABLE>
 471&nbsp;<A NAME="methods_inherited_from_class_org.apache.log4j.Appender"><!-- --></A>
 472<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 473<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
 474<TH ALIGN="left"><B>Methods inherited from interface org.apache.log4j.<A HREF="../../../../org/apache/log4j/Appender.html" title="interface in org.apache.log4j">Appender</A></B></TH>
 475</TR>
 476<TR BGCOLOR="white" CLASS="TableRowColor">
 477<TD><CODE><A HREF="../../../../org/apache/log4j/Appender.html#addFilter(org.apache.log4j.spi.Filter)">addFilter</A>, <A HREF="../../../../org/apache/log4j/Appender.html#clearFilters()">clearFilters</A>, <A HREF="../../../../org/apache/log4j/Appender.html#doAppend(org.apache.log4j.spi.LoggingEvent)">doAppend</A>, <A HREF="../../../../org/apache/log4j/Appender.html#getErrorHandler()">getErrorHandler</A>, <A HREF="../../../../org/apache/log4j/Appender.html#getFilter()">getFilter</A>, <A HREF="../../../../org/apache/log4j/Appender.html#getLayout()">getLayout</A>, <A HREF="../../../../org/apache/log4j/Appender.html#getName()">getName</A>, <A HREF="../../../../org/apache/log4j/Appender.html#setErrorHandler(org.apache.log4j.spi.ErrorHandler)">setErrorHandler</A>, <A HREF="../../../../org/apache/log4j/Appender.html#setLayout(org.apache.log4j.Layout)">setLayout</A>, <A HREF="../../../../org/apache/log4j/Appender.html#setName(java.lang.String)">setName</A></CODE></TD>
 478</TR>
 479</TABLE>
 480&nbsp;
 481<P>
 482
 483<!-- ============ FIELD DETAIL =========== -->
 484
 485<A NAME="field_detail"><!-- --></A>
 486<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 487<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
 488<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
 489<B>Field Detail</B></FONT></TH>
 490</TR>
 491</TABLE>
 492
 493<A NAME="databaseURL"><!-- --></A><H3>
 494databaseURL</H3>
 495<PRE>
 496protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>databaseURL</B></PRE>
 497<DL>
 498<DD>URL of the DB for default connection handling
 499<P>
 500<DL>
 501</DL>
 502</DL>
 503<HR>
 504
 505<A NAME="databaseUser"><!-- --></A><H3>
 506databaseUser</H3>
 507<PRE>
 508protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>databaseUser</B></PRE>
 509<DL>
 510<DD>User to connect as for default connection handling
 511<P>
 512<DL>
 513</DL>
 514</DL>
 515<HR>
 516
 517<A NAME="databasePassword"><!-- --></A><H3>
 518databasePassword</H3>
 519<PRE>
 520protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>databasePassword</B></PRE>
 521<DL>
 522<DD>User to use for default connection handling
 523<P>
 524<DL>
 525</DL>
 526</DL>
 527<HR>
 528
 529<A NAME="connection"><!-- --></A><H3>
 530connection</H3>
 531<PRE>
 532protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A> <B>connection</B></PRE>
 533<DL>
 534<DD>Connection used by default.  The connection is opened the first time it
 535 is needed and then held open until the appender is closed (usually at
 536 garbage collection).  This behavior is best modified by creating a
 537 sub-class and overriding the <code>getConnection</code> and
 538 <code>closeConnection</code> methods.
 539<P>
 540<DL>
 541</DL>
 542</DL>
 543<HR>
 544
 545<A NAME="sqlStatement"><!-- --></A><H3>
 546sqlStatement</H3>
 547<PRE>
 548protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>sqlStatement</B></PRE>
 549<DL>
 550<DD>Stores the string given to the pattern layout for conversion into a SQL
 551 statement, eg: insert into LogTable (Thread, Class, Message) values
 552 ("%t", "%c", "%m").
 553
 554 Be careful of quotes in your messages!
 555
 556 Also see PatternLayout.
 557<P>
 558<DL>
 559</DL>
 560</DL>
 561<HR>
 562
 563<A NAME="bufferSize"><!-- --></A><H3>
 564bufferSize</H3>
 565<PRE>
 566protected int <B>bufferSize</B></PRE>
 567<DL>
 568<DD>size of LoggingEvent buffer before writting to the database.
 569 Default is 1.
 570<P>
 571<DL>
 572</DL>
 573</DL>
 574<HR>
 575
 576<A NAME="buffer"><!-- --></A><H3>
 577buffer</H3>
 578<PRE>
 579protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</A> <B>buffer</B></PRE>
 580<DL>
 581<DD>ArrayList holding the buffer of Logging Events.
 582<P>
 583<DL>
 584</DL>
 585</DL>
 586<HR>
 587
 588<A NAME="removes"><!-- --></A><H3>
 589removes</H3>
 590<PRE>
 591protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</A> <B>removes</B></PRE>
 592<DL>
 593<DD>Helper object for clearing out the buffer
 594<P>
 595<DL>
 596</DL>
 597</DL>
 598
 599<!-- ========= CONSTRUCTOR DETAIL ======== -->
 600
 601<A NAME="constructor_detail"><!-- --></A>
 602<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 603<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
 604<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
 605<B>Constructor Detail</B></FONT></TH>
 606</TR>
 607</TABLE>
 608
 609<A NAME="JDBCAppender()"><!-- --></A><H3>
 610JDBCAppender</H3>
 611<PRE>
 612public <B>JDBCAppender</B>()</PRE>
 613<DL>
 614</DL>
 615
 616<!-- ============ METHOD DETAIL ========== -->
 617
 618<A NAME="method_detail"><!-- --></A>
 619<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
 620<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
 621<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
 622<B>Method Detail</B></FONT></TH>
 623</TR>
 624</TABLE>
 625
 626<A NAME="getLocationInfo()"><!-- --></A><H3>
 627getLocationInfo</H3>
 628<PRE>
 629public boolean <B>getLocationInfo</B>()</PRE>
 630<DL>
 631<DD>Gets whether the location of the logging request call
 632 should be captured.
 633<P>
 634<DD><DL>
 635</DL>
 636</DD>
 637<DD><DL>
 638
 639<DT><B>Returns:</B><DD>the current value of the <b>LocationInfo</b> option.<DT><B>Since:</B></DT>
 640  <DD>1.2.16</DD>
 641</DL>
 642</DD>
 643</DL>
 644<HR>
 645
 646<A NAME="setLocationInfo(boolean)"><!-- --></A><H3>
 647setLocationInfo</H3>
 648<PRE>
 649public void <B>setLocationInfo</B>(boolean&nbsp;flag)</PRE>
 650<DL>
 651<DD>The <b>LocationInfo</b> option takes a boolean value. By default, it is
 652 set to false which means there will be no effort to extract the location
 653 information related to the event. As a result, the event that will be
 654 ultimately logged will likely to contain the wrong location information
 655 (if present in the log format).
 656 <p/>
 657 <p/>
 658 Location information extraction is comparatively very slow and should be
 659 avoided unless performance is not a concern.
 660 </p>
 661<P>
 662<DD><DL>
 663</DL>
 664</DD>
 665<DD><DL>
 666<DT><B>Parameters:</B><DD><CODE>flag</CODE> - true if location information should be extracted.<DT><B>Since:</B></DT>
 667  <DD>1.2.16</DD>
 668</DL>
 669</DD>
 670</DL>
 671<HR>
 672
 673<A NAME="append(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
 674append</H3>
 675<PRE>
 676public void <B>append</B>(<A HREF="../../../../org/apache/log4j/spi/LoggingEvent.html" title="class in org.apache.log4j.spi">LoggingEvent</A>&nbsp;event)</PRE>
 677<DL>
 678<DD>Adds the event to the buffer.  When full the buffer is flushed.
 679<P>
 680<DD><DL>
 681<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#append(org.apache.log4j.spi.LoggingEvent)">append</A></CODE> in class <CODE><A HREF="../../../../org/apache/log4j/AppenderSkeleton.html" title="class in org.apache.log4j">AppenderSkeleton</A></CODE></DL>
 682</DD>
 683<DD><DL>
 684</DL>
 685</DD>
 686</DL>
 687<HR>
 688
 689<A NAME="getLogStatement(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
 690getLogStatement</H3>
 691<PRE>
 692protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getLogStatement</B>(<A HREF="../../../../org/apache/log4j/spi/LoggingEvent.html" title="class in org.apache.log4j.spi">LoggingEvent</A>&nbsp;event)</PRE>
 693<DL>
 694<DD>By default getLogStatement sends the event to the required Layout object.
 695 The layout will format the given pattern into a workable SQL string.
 696
 697 Overriding this provides direct access to the LoggingEvent
 698 when constructing the logging statement.
 699<P>
 700<DD><DL>
 701</DL>
 702</DD>
 703<DD><DL>
 704</DL>
 705</DD>
 706</DL>
 707<HR>
 708
 709<A NAME="execute(java.lang.String)"><!-- --></A><H3>
 710execute</H3>
 711<PRE>
 712protected void <B>execute</B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;sql)
 713                throws <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
 714<DL>
 715<DD>Override this to provide an alertnate method of getting
 716 connections (such as caching).  One method to fix this is to open
 717 connections at the start of flushBuffer() and close them at the
 718 end.  I use a connection pool outside of JDBCAppender which is
 719 accessed in an override of this method.
 720<P>
 721<DD><DL>
 722</DL>
 723</DD>
 724<DD><DL>
 725
 726<DT><B>Throws:</B>
 727<DD><CODE><A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
 728</DD>
 729</DL>
 730<HR>
 731
 732<A NAME="closeConnection(java.sql.Connection)"><!-- --></A><H3>
 733closeConnection</H3>
 734<PRE>
 735protected void <B>closeConnection</B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A>&nbsp;con)</PRE>
 736<DL>
 737<DD>Override this to return the connection to a pool, or to clean up the
 738 resource.
 739
 740 The default behavior holds a single connection open until the appender
 741 is closed (typically when garbage collected).
 742<P>
 743<DD><DL>
 744</DL>
 745</DD>
 746<DD><DL>
 747</DL>
 748</DD>
 749</DL>
 750<HR>
 751
 752<A NAME="getConnection()"><!-- --></A><H3>
 753getConnection</H3>
 754<PRE>
 755protected <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</A> <B>getConnection</B>()
 756                            throws <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></PRE>
 757<DL>
 758<DD>Override this to link with your connection pooling system.
 759
 760 By default this creates a single connection which is held open
 761 until the object is garbage collected.
 762<P>
 763<DD><DL>
 764</DL>
 765</DD>
 766<DD><DL>
 767
 768<DT><B>Throws:</B>
 769<DD><CODE><A HREF="http://java.sun.com/j2se/1.3/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</A></CODE></DL>
 770</DD>
 771</DL>
 772<HR>
 773
 774<A NAME="close()"><!-- --></A><H3>
 775close</H3>
 776<PRE>
 777public void <B>close</B>()</PRE>
 778<DL>
 779<DD>Closes the appender, flushing the buffer first then closing the default
 780 connection if it is open.
 781<P>
 782<DD><DL>
 783<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/log4j/Appender.html#close()">close</A></CODE> in interface <CODE><A HREF="../../../../org/apache/log4j/Appender.html" title="interface in org.apache.log4j">Appender</A></CODE></DL>
 784</DD>
 785<DD><DL>
 786</DL>
 787</DD>
 788</DL>
 789<HR>
 790
 791<A NAME="flushBuffer()"><!-- --></A><H3>
 792flushBuffer</H3>
 793<PRE>
 794public void <B>flushBuffer</B>()</PRE>
 795<DL>
 796<DD>loops through the buffer of LoggingEvents, gets a
 797 sql string from getLogStatement() and sends it to execute().
 798 Errors are sent to the errorHandler.
 799
 800 If a statement fails the LoggingEvent stays in the buffer!
 801<P>
 802<DD><DL>
 803</DL>
 804</DD>
 805<DD><DL>
 806</DL>
 807</DD>
 808</DL>
 809<HR>
 810
 811<A NAME="finalize()"><!-- --></A><H3>
 812finalize</H3>
 813<PRE>
 814public void <B>finalize</B>()</PRE>
 815<DL>
 816<DD>closes the appender before disposal
 817<P>
 818<DD><DL>
 819<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/log4j/AppenderSkeleton.html#finalize()">finalize</A></CODE> in class <CODE><A HREF="../../../../org/apache/log4j/AppenderSkeleton.html" title="class in org.apache.log4j">AppenderSkeleton</A></CODE></DL>
 820</DD>
 821<DD><DL>
 822</DL>
 823</DD>
 824</DL>
 825<HR>
 826
 827<A NAME="requiresLayout()"><!-- --></A><H3>
 828requiresLayout</H3>
 829<PRE>
 830public boolean <B>requiresLayout</B>()</PRE>
 831<DL>
 832<DD>JDBCAppender requires a layout.
 833<P>
 834<DD><DL>
 835<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/log4j/Appender.html#requiresLayout()">requiresLayout</A></CODE> in interface <CODE><A HREF="../../../../org/apache/log4j/Appender.html" title="interface in org.apache.log4j">Appender</A></CODE></DL>
 836</DD>
 837<DD><DL>
 838</DL>
 839</DD>
 840</DL>
 841<HR>
 842
 843<A NAME="setSql(java.lang.String)"><!-- --></A><H3>
 844setSql</H3>
 845<PRE>
 846public void <B>setSql</B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;s)</PRE>
 847<DL>
 848<DD><DL>
 849</DL>
 850</DD>
 851<DD><DL>
 852</DL>
 853</DD>
 854</DL>
 855<HR>
 856
 857<A NAME="getSql()"><!-- --></A><H3>
 858getSql</H3>
 859<PRE>
 860public <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getSql</B>()</PRE>
 861<DL>
 862<DD>Returns pre-formated statement eg: insert into LogTable (msg) values ("%m")
 863<P>
 864<DD><DL>
 865</DL>
 866</DD>
 867<DD><DL>
 868</DL>
 869</DD>
 870</DL>
 871<HR>
 872
 873<A NAME="setUser(java.lang.String)"><!-- --></A><H3>
 874setUser</H3>
 875<PRE>
 876public void <B>setUser</B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;user)</PRE>
 877<DL>
 878<DD><DL>
 879</DL>
 880</DD>
 881<DD><DL>
 882</DL>
 883</DD>
 884</DL>
 885<HR>
 886
 887<A NAME="setURL(java.lang.String)"><!-- --></A><H3>
 888setURL</H3>
 889<PRE>
 890public void <B>setURL</B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url)</PRE>
 891<DL>
 892<DD><DL>
 893</DL>
 894</DD>
 895<DD><DL>
 896</DL>
 897</DD>
 898</DL>
 899<HR>
 900
 901<A NAME="setPassword(java.lang.String)"><!-- --></A><H3>
 902setPassword</H3>
 903<PRE>
 904public void <B>setPassword</B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;password)</PRE>
 905<DL>
 906<DD><DL>
 907</DL>
 908</DD>
 909<DD><DL>
 910</DL>
 911</DD>
 912</DL>
 913<HR>
 914
 915<A NAME="setBufferSize(int)"><!-- --></A><H3>
 916setBufferSize</H3>
 917<PRE>
 918public void <B>setBufferSize</B>(int&nbsp;newBufferSize)</PRE>
 919<DL>
 920<DD><DL>
 921</DL>
 922</DD>
 923<DD><DL>
 924</DL>
 925</DD>
 926</DL>
 927<HR>
 928
 929<A NAME="getUser()"><!-- --></A><H3>
 930getUser</H3>
 931<PRE>
 932public <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getUser</B>()</PRE>
 933<DL>
 934<DD><DL>
 935</DL>
 936</DD>
 937<DD><DL>
 938</DL>
 939</DD>
 940</DL>
 941<HR>
 942
 943<A NAME="getURL()"><!-- --></A><H3>
 944getURL</H3>
 945<PRE>
 946public <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getURL</B>()</PRE>
 947<DL>
 948<DD><DL>
 949</DL>
 950</DD>
 951<DD><DL>
 952</DL>
 953</DD>
 954</DL>
 955<HR>
 956
 957<A NAME="getPassword()"><!-- --></A><H3>
 958getPassword</H3>
 959<PRE>
 960public <A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getPassword</B>()</PRE>
 961<DL>
 962<DD><DL>
 963</DL>
 964</DD>
 965<DD><DL>
 966</DL>
 967</DD>
 968</DL>
 969<HR>
 970
 971<A NAME="getBufferSize()"><!-- --></A><H3>
 972getBufferSize</H3>
 973<PRE>
 974public int <B>getBufferSize</B>()</PRE>
 975<DL>
 976<DD><DL>
 977</DL>
 978</DD>
 979<DD><DL>
 980</DL>
 981</DD>
 982</DL>
 983<HR>
 984
 985<A NAME="setDriver(java.lang.String)"><!-- --></A><H3>
 986setDriver</H3>
 987<PRE>
 988public void <B>setDriver</B>(<A HREF="http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;driverClass)</PRE>
 989<DL>
 990<DD>Ensures that the given driver class has been loaded for sql connection
 991 creation.
 992<P>
 993<DD><DL>
 994</DL>
 995</DD>
 996<DD><DL>
 997</DL>
 998</DD>
 999</DL>
1000<!-- ========= END OF CLASS DATA ========= -->
1001<HR>
1002
1003
1004<!-- ======= START OF BOTTOM NAVBAR ====== -->
1005<A NAME="navbar_bottom"><!-- --></A>
1006<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
1007<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
1008<TR>
1009<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
1010<A NAME="navbar_bottom_firstrow"><!-- --></A>
1011<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
1012  <TR ALIGN="center" VALIGN="top">
1013  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
1014  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
1015  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
1016  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/JDBCAppender.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
1017  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
1018  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
1019  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
1020  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
1021  </TR>
1022</TABLE>
1023</TD>
1024<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
1025</EM>
1026</TD>
1027</TR>
1028
1029<TR>
1030<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
1031&nbsp;PREV CLASS&nbsp;
1032&nbsp;NEXT CLASS</FONT></TD>
1033<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
1034  <A HREF="../../../../index.html?org/apache/log4j/jdbc/JDBCAppender.html" target="_top"><B>FRAMES</B></A>  &nbsp;
1035&nbsp;<A HREF="JDBCAppender.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
1036&nbsp;<SCRIPT type="text/javascript">
1037  <!--
1038  if(window==top) {
1039    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
1040  }
1041  //-->
1042</SCRIPT>
1043<NOSCRIPT>
1044  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
1045</NOSCRIPT>
1046
1047
1048</FONT></TD>
1049</TR>
1050<TR>
1051<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
1052  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
1053<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
1054DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
1055</TR>
1056</TABLE>
1057<A NAME="skip-navbar_bottom"></A>
1058<!-- ======== END OF BOTTOM NAVBAR ======= -->
1059
1060<HR>
1061Copyright &#169; 1999-2010 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
1062</BODY>
1063</HTML>