diff options
author | tim@threads.polyesthetic.msg <> | 2001-03-04 19:42:05 -0500 |
---|---|---|
committer | tim@threads.polyesthetic.msg <> | 2001-03-04 19:42:05 -0500 |
commit | 89dad52004ecba5a380aeebb0e2a9beaae88eb86 (patch) | |
tree | 9dd732e08dba156ee3d7635caedc0dc3107ecac6 /bdb/docs/ref/java | |
parent | 639a1069d313843288ba6d9cb54b290073a748a7 (diff) | |
download | mariadb-git-89dad52004ecba5a380aeebb0e2a9beaae88eb86.tar.gz |
Import changeset
Diffstat (limited to 'bdb/docs/ref/java')
-rw-r--r-- | bdb/docs/ref/java/compat.html | 34 | ||||
-rw-r--r-- | bdb/docs/ref/java/conf.html | 82 | ||||
-rw-r--r-- | bdb/docs/ref/java/faq.html | 31 | ||||
-rw-r--r-- | bdb/docs/ref/java/program.html | 72 |
4 files changed, 219 insertions, 0 deletions
diff --git a/bdb/docs/ref/java/compat.html b/bdb/docs/ref/java/compat.html new file mode 100644 index 00000000000..4619ec55794 --- /dev/null +++ b/bdb/docs/ref/java/compat.html @@ -0,0 +1,34 @@ +<!--$Id: compat.so,v 10.11 2000/12/04 18:05:42 bostic Exp $--> +<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.--> +<!--All rights reserved.--> +<html> +<head> +<title>Berkeley DB Reference Guide: Compatibility</title> +<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit."> +<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++"> +</head> +<body bgcolor=white> + <a name="2"><!--meow--></a> +<table><tr valign=top> +<td><h3><dl><dt>Berkeley DB Reference Guide:<dd>Java API</dl></h3></td> +<td width="1%"><a href="../../ref/java/conf.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/java/program.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p> +<h1 align=center>Compatibility</h1> +<p>The Berkeley DB Java API has been tested with the +<a href="http://www.javasoft.com">Sun Microsystems JDK 1.1.3</a> on SunOS +5.5, and Sun's JDK 1.1.7, JDK 1.2.2 and JDK 1.3.0 on Linux and +Windows/NT. It should work with any JDK 1.1, 1.2 or 1.3 (the latter +two are known as Java 2) compatible environment. IBM's VM 1.3.0 has +also been tested on Linux. +<p>The primary requirement of the Berkeley DB Java API is that the target Java +environment supports JNI (Java Native Interface), rather than another +method for allowing native C/C++ code to interface to Java. The JNI was +new in JDK 1.1, but is the most likely interface to be implemented across +multiple platforms. However, using the JNI means that Berkeley DB will not be +compatible with Microsoft Visual J++. +<table><tr><td><br></td><td width="1%"><a href="../../ref/java/conf.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/java/program.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font> +</body> +</html> diff --git a/bdb/docs/ref/java/conf.html b/bdb/docs/ref/java/conf.html new file mode 100644 index 00000000000..b7eedcaedba --- /dev/null +++ b/bdb/docs/ref/java/conf.html @@ -0,0 +1,82 @@ +<!--$Id: conf.so,v 10.16 2000/12/04 21:21:51 bostic Exp $--> +<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.--> +<!--All rights reserved.--> +<html> +<head> +<title>Berkeley DB Reference Guide: Configuration</title> +<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit."> +<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++"> +</head> +<body bgcolor=white> + <a name="2"><!--meow--></a> +<table><tr valign=top> +<td><h3><dl><dt>Berkeley DB Reference Guide:<dd>Java API</dl></h3></td> +<td width="1%"><a href="../../ref/rpc/server.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/java/compat.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p> +<h1 align=center>Configuration</h1> +<p>Building the Berkeley DB java classes, the examples and the native support +library is integrated into the normal build process. See +<a href="../../ref/build_unix/conf.html#--enable-java">Configuring +Berkeley DB</a> and <a href="../../ref/build_win/intro.html">Building for Windows</a> +for more information. +<p>We expect that you've already installed the Java JDK or equivalent on +your system. For the sake of discussion, we'll assume it is in a +directory called db-VERSION, e.g., you extracted Berkeley DB version 2.3.12 +and you did not change the top-level directory name. The files related +to Java are in two subdirectories of db-VERSION: java, the java source +files, and libdb_java, the C++ files that provide the "glue" between +java and Berkeley DB. The directory tree looks like this: +<p><blockquote><pre> db-VERSION + / \ + java libdb_java + | | + src ... + | + com + | + sleepycat + / \ + db examples + | | + ... ... +</pre></blockquote> +<p>This naming conforms to the emerging standard for naming java packages. +When the java code is built, it is placed into a <b>classes</b> +subdirectory that is parallel to the <b>src</b> subdirectory. +<p>For your application to use Berkeley DB successfully, you must set your +CLASSPATH environment variable to include db-VERSION/java/classes as +well as the classes in your java distribution. On UNIX, CLASSPATH is +a colon separated list of directories; on Windows it is separated by +semicolons. Alternatively, you can set your CLASSPATH to include +db-VERSION/java/classes/db.jar which is created as a result of the +build. The db.jar file contains the classes in com.sleepycat.db, it +does not contain any classes in com.sleepycat.examples. +<p>On Windows, you will want to set your PATH variable to include: +<p><blockquote><pre>db-VERSION\build_win32\Release</pre></blockquote> +<p>On UNIX, you will want to set the LD_LIBRARY_PATH environment variable +to include the Berkeley DB library installation directory. Of course, the +standard install directory may have been changed for your site, see your +system administrator for details. Regardless, if you get a: +<p><blockquote><pre>java.lang.UnsatisfiedLinkError</pre></blockquote> +<p>exception when you run, chances are you do not have the library search +path configured correctly. Different Java interpreters provide +different error messages if the CLASSPATH value is incorrect, a typical +error is: +<p><blockquote><pre>java.lang.NoClassDefFoundError</pre></blockquote> +<p>To ensure that everything is running correctly, you may want to try a +simple test from the example programs in: +<p><blockquote><pre>db-VERSION/java/src/com/sleepycat/examples</pre></blockquote> +<p>For example, the sample program: +<p><blockquote><pre>% java com.sleepycat.examples.AccessExample</pre></blockquote> +<p>will prompt for text input lines which are then stored in a Btree +database named "access.db" in your current directory. Try giving it a +few lines of input text and then end-of-file. Before it exits, you +should see a list of the lines you entered display with data items. +This is a simple check to make sure the fundamental configuration is +working correctly. +<table><tr><td><br></td><td width="1%"><a href="../../ref/rpc/server.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/java/compat.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font> +</body> +</html> diff --git a/bdb/docs/ref/java/faq.html b/bdb/docs/ref/java/faq.html new file mode 100644 index 00000000000..75b9e9f3bdb --- /dev/null +++ b/bdb/docs/ref/java/faq.html @@ -0,0 +1,31 @@ +<!--$Id: faq.so,v 1.2 2001/01/09 20:55:54 bostic Exp $--> +<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.--> +<!--All rights reserved.--> +<html> +<head> +<title>Berkeley DB Reference Guide: Frequently Asked Questions</title> +<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit."> +<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++"> +</head> +<body bgcolor=white> + <a name="2"><!--meow--></a> <a name="3"><!--meow--></a> +<table><tr valign=top> +<td><h3><dl><dt>Berkeley DB Reference Guide:<dd>Java API</dl></h3></td> +<td width="1%"><a href="../../ref/java/program.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/perl/intro.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p> +<h1 align=center>Frequently Asked Questions</h1> +<p><ol> +<p><li><b>During one of the first calls to the Berkeley DB Java API, a +DbException is thrown with a "Bad file number" or "Bad file descriptor" +message.</b> +<p>There are known large-file support bugs under JNI in various releases +of the JDK. Please upgrade to the latest release of the JDK, and, if +that does not help, disable big file support using the --disable-bigfile +configuration option. +</ol> +<table><tr><td><br></td><td width="1%"><a href="../../ref/java/program.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/perl/intro.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font> +</body> +</html> diff --git a/bdb/docs/ref/java/program.html b/bdb/docs/ref/java/program.html new file mode 100644 index 00000000000..c454a0910ee --- /dev/null +++ b/bdb/docs/ref/java/program.html @@ -0,0 +1,72 @@ +<!--$Id: program.so,v 10.21 2001/01/09 18:57:28 bostic Exp $--> +<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.--> +<!--All rights reserved.--> +<html> +<head> +<title>Berkeley DB Reference Guide: Java Programming Notes</title> +<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit."> +<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++"> +</head> +<body bgcolor=white> +<table><tr valign=top> +<td><h3><dl><dt>Berkeley DB Reference Guide:<dd>Programmer Notes</dl></h3></td> +<td width="1%"><a href="../../ref/java/compat.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/java/faq.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p> +<h1 align=center>Java Programming Notes</h1> +<p>The Java API closely parallels the Berkeley DB C++ and C interfaces. If you +are currently using either of those APIs, there will be very little to +surprise you in the Java API. We have even taken care to make the names +of classes, constants, methods and arguments identical, where possible, +across all three APIs. +<p><ol> +<p><li>The Java runtime does not automatically close Berkeley DB objects on +finalization. There are a couple reasons for this. One is that +finalization is generally run only when garbage collection occurs and +there is no guarantee that this occurs at all, even on exit. Allowing +specific Berkeley DB actions to occur in ways that cannot be replicated seems +wrong. Secondly, finalization of objects may happen in an arbitrary +order, so we would have to do extra bookkeeping to make sure everything +was closed in the proper order. The best word of advice is to always +do a close() for any matching open() call. Specifically, the Berkeley DB +package requires that you explicitly call close on each individual +<a href="../../api_java/db_class.html">Db</a> and <a href="../../api_java/dbc_class.html">Dbc</a> object that you opened. Your database +activity may not be synchronized to disk unless you do so. +<p><li>Some methods in the Java API have no return type, and throw a +<a href="../../api_java/except_class.html">DbException</a> when an severe error arises. There are some notable +methods that do have a return value, and can also throw an exception. +<a href="../../api_java/db_get.html">Db.get</a> and <a href="../../api_java/dbc_get.html">Dbc.get</a> both return 0 when a get succeeds, +<a href="../../ref/program/errorret.html#DB_NOTFOUND">Db.DB_NOTFOUND</a> when the key is not found, and throw an error when +there is a severe error. This approach allows the programmer to check +for typical data driven errors by watching return values without special +casing exceptions. +<p>An object of type <a href="../../api_java/deadlock_class.html">DbDeadlockException</a> is thrown when a deadlock +would occur. +<p>An object of type <a href="../../api_java/mem_class.html">DbMemoryException</a> is thrown when the system +cannot provide enough memory to complete the operation (the ENOMEM +system error on UNIX). +<p>An object of type <a href="../../api_java/runrec_class.html">DbRunRecoveryException</a>, a subclass of +<a href="../../api_java/except_class.html">DbException</a>, is thrown when there is an error that requires a +recovery of the database, using <a href="../../utility/db_recover.html">db_recover</a>. +<p><li>There is no class corresponding to the C++ DbMpoolFile class in the Berkeley DB +Java API. There is a subset of the memp_XXX methods in the <a href="../../api_java/dbenv_class.html">DbEnv</a> +class. This has been provided to allow you to perform certain +administrative actions on underlying memory pools opened as a consequence +of <a href="../../api_java/env_open.html">DbEnv.open</a>. Direct access to other memory pool functionality +is not appropriate for the Java environment. +<p><li>Berkeley DB always turns on the <a href="../../api_java/env_open.html#DB_THREAD">Db.DB_THREAD</a> flag since threads +are expected in Java. +<p><li>If there are embedded null strings in the <b>curslist</b> argument for +<a href="../../api_java/db_join.html">Db.join</a>, they will be treated as the end of the list of +cursors, even though you may have allocated a longer array. Fill in +all the strings in your array unless you intend to cut it short. +<p><li>The callback installed for <a href="../../api_java/env_set_errcall.html">DbEnv.set_errcall</a> will run in the same +thread as the caller to <a href="../../api_java/env_set_errcall.html">DbEnv.set_errcall</a>. Make sure that thread +remains running until your application exits or <a href="../../api_java/env_close.html">DbEnv.close</a> is +called. +</ol> +<table><tr><td><br></td><td width="1%"><a href="../../ref/java/compat.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../ref/toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/java/faq.html"><img src="../../images/next.gif" alt="Next"></a> +</td></tr></table> +<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font> +</body> +</html> |