ONJava.com -- The Independent Source for Enterprise Java
oreilly.comO'Reilly NetworkXML.comONLamp.comONJava.comOpenP2P.com
 Newsletters | Events | Jobs | API Map | Daily Recipe | OS Java Directory | java.net


  JSP and Servlets
  EJB Components
  Web Services
  Open Source
  Best Practices
  Java Security
  Java IDE Tools
  Java SysAdmin


  Feature Articles
  Java API Map
  Web Logs
  Book Excerpts
  OS Java Directory


GGZ-Java  May. 12, 2006

JTrac  May. 8, 2006

Dao-zero: implement your DAO intefaces  Apr. 28, 2006

DualRpc easy bidirectional RPC for GUI client to server  Apr. 25, 2006

ColoradoFTP - The Open Source FTP Server  Apr. 19, 2006

More Resources

 Java API Map


Java Enterprise in a Nutshell, Third Edition

Head First Design Patterns Poster

Eclipse IDE Pocket Guide

JBoss: A Developer's Notebook

Maven: A Developer's Notebook

Swing Hacks

Killer Game Programming in Java

Learning Java, Third Edition

Ant: The Definitive Guide, Second Edition

Spring: A Developer's Notebook

Java in a Nutshell, Fifth Edition

Jakarta Struts Cookbook

Head First Java, Second Edition

QuickTime for Java: A Developer's Notebook

AspectJ Cookbook

More Java Books




Java Data Objects (JDO), Java Database Connectivity (JDBC) and SQLJ provide important Java-based database objects or connectivity to Enterprise Information Systems (EIS), whether it be Legacy or middleware.

Java Database Connectivity (JDBC)

Don't Let Hibernate Steal Your Identity
By James Brundege
Hibernate has one set of ideas about how to make something unique, such as using a database sequence number as an ID. But this clashes with Java's need for implementations of equals() and hashCode() that determine identity for objects, even those that haven't yet made a trip to the database and thus can't have a sequence number. James Brundege has an option that should satisfy both Hibernate and Java. Sep. 13, 2006

JDBC 4.0 Enhancements in Java SE 6
By Srini Penchikala
Java SE 6 (aka Mustang) brings with it a new set of improvements to the JDBC API for accessing databases. Improvements include support for the RowID interface, better exception handling, annotation-based queries, and (finally!) and end to the clumsy Class.forName() system of loading database drivers. In this article, Srini Penchikala tours the major features of JDBC 4.0. Aug. 2, 2006

Making the Most of JDBC with WebRowSet
By Sharad Acharya
Database to XML and back again. If everyone's doing some or all of this, then shouldn't we write it once, get it right, and standardize? JDBC 3.0's WebRowSet offers a profound increase in power over the old ResultSet. Sharad Acharya shows you what's possible. Jun. 21, 2006

Using Spring with JDO and Hibernate

Everyone knows about Hibernate, but what about Java Data Objects? Both of these object-relational persistence frameworks are well supported by Spring, and in this excerpt from Spring: A Developer's Notebook, Bruce Tate and Justin Gehtland show you the advantages of each and how to integrate them with Spring. Feb. 8, 2006

Spring: Integrating iBATIS

iBATIS is one of the object-relational (OR) frameworks embraced by the Spring framework, and it's an ideal choice for those seeking a middle ground between full-blown OR and hand-written JDBC. In this excerpt from Spring: A Developer's Notebook, Bruce Tate and Justin Gehtland show how to integrate iBATIS with Spring. Jan. 18, 2006

Hibernate Class Generation Using hbm2java
By John Ferguson Smart
Hibernate uses mapping files to express the mapping of Java classes to database tables. In a complex project, keeping mappings in sync with your Java code can be burdensome and error-prone. Fortunately, the hbm2java tool can automate this by generating POJO classes from the mapping files. John Ferguson Smart shows how to use hbm2java with Ant and Maven, and how to customize the behavior of the generated classes. Dec. 14, 2005

Lightweight R/O Mapping
By Norbert Ehreke
O/R frameworks map Java classes to database tables and SQL code. While popular, this approach is unpopular among DBAs, with the database at the mercy of an external tool. Another approach is to go the other direction: write tables and stored procedures and generate Java classes from that. Norbert Ehreke introduces Amber, a framework that embodies this approach. Dec. 7, 2005

Hibernate for Java SE
By Jason Lee
For many, Hibernate goes hand in hand with Java EE as part of their enterprise development strategy. But what if you need access to your data access objects outside of the EE container? Jason Lee offers some strategy for getting and using a Hibernate session from Java SE code. Nov. 16, 2005

iBatis DAO
By Sunil Patil
The J2EE Data Access Object pattern calls for encapsulating access to a data source behind an API, giving you the freedom to change implementations or use different persistence strategies for different operations. As Sunil Patil shows, the Apache iBatis DAO framework helps you develop such a strategy. Aug. 10, 2005

Hibernate 3 Formulas
By Dai Yifan
Hibernate's formula element has been limited in previous versions of the popular object-relational mapping framework, but in Hibernate 3, your formulas can be used in many new ways that will simplify and empower your programming. Dai Yifan shows you what's new. Aug. 3, 2005

Prevalence: Transparent, Fault-Tolerant Object Persistence
By Jim Paterson
Want to persist your objects, with transactional integrity? You probably assume you're going to be using a database, but not so fast--for lighter uses, particularly for prototyping and testing, the idea of "prevalence" may make more sense. Jim Paterson introduces it by way of Prevayler, a popular prevalence framework. Jun. 8, 2005

Simple Object Persistence with the db4o Object Database
By Jim Paterson
Mapping Java objects to relational databases is a difficult task, fraught with perils and gotchas. db4o dodges the issue entirely by providing an object-oriented persistence mechanism that is small, lightweight and efficient. Jim Paterson shows how it works. Dec. 1, 2004

Using CachedRowSet to Transfer JDBC Query Results Between Classes
By Sean Eidemiller
JDBC developers have always needed to keep a database connection open while pulling query results. But with the CachedRowSet in J2SE 1.5, it's now possible to disconnect and then get results. Sean Eidmiller shows the advantages of this approach. Jun. 23, 2004

Interruptible Database Queries
By Slav Boleslawski
Perceived performance isn't just about speed; it's also about responsiveness. And few things frustrate a user like an application that ignores user input because it's off doing something else. Slav Boleslawski introduces threading techniques to keep database queries and result retrieval from locking up an application. Jun. 16, 2004

SQL Database Access with DBTags
By Deepak Vohra
Jakarta DBTags is a custom tag library that consists of tags to access and modify a database. This tutorial explains the procedure to incorporate Apache Jakarta DBTags custom tag library tags in an example JSP. May. 5, 2004

Lisp and Java
By Dan Milstein
First-class functions are a powerful feature of the Lisp programming langauge. This article describes some ways they can be used, and explores how to approximate them in Java. Mar. 24, 2004

Configuring JBoss 4.0 JDBC Connectivity
By Deepak Vohra
JBoss uses the HypersonicDB by default, but with a few configuration changes, it can use any JDBC-equipped database. Deepak Vohra shows how to use Oracle, Sybase, MySQL and other databases with JBoss. Feb. 25, 2004

Effective Unit Testing with DbUnit
By Andrew Glover
Writing unit tests first can be impractical when your code will depend on access to a database. Enter DbUnit, which allows you to write simple XML files to fill in for the yet-to-be populated database for testing purposes. Jan. 21, 2004

Hibernate Your Data
By Davor Cengija
Hibernate can persist any kind of Java object, manipulate a hierarchy of objects, handle collections, and work with transactions. Davor Cengija shows you how. Jan. 14, 2004

Stored Procedures for Java Programmers
By Nic Ferrier
You can build your application on top of a persistence layer such as EJB, but that's not your only option. Another alternative is stored procedures. Nic Ferrier explains how they work and why the common objection -- portability -- doesn't always apply. Aug. 13, 2003

Object-Relational Mapping with Apache Jakarta OJB
By Charles Chan
Object persistence is important in enterprise applications, but mapping class hierarchies to relational databases can be tricky. Enter OJB, an open source persistence framework. Charles Chan demonstrates nearly-painless techniques for saving your objects. Jan. 8, 2003

"Castor JDO": Simply False Advertising
By David Jordan
This expert perspective lays it on the line: Exolab's Castor JDO product does not support the JDO standard. The use of the acronym is causing confusion in the marketplace, and flirts with a violation of Sun's Java trademark.  Dec. 4, 2002

Using Castor JDO for SQL Mapping
By Jeff Lowery
An in-depth look at using Castor's marshalling engine to do data binding of Java objects to tables, rows, and columns in an SQL database. Oct. 2, 2002

An Introduction to JDBC, Part 3
By William Crawford, Jim Farley
In part three of this four-part excerpt on JDBC from Java Enterprise in a Nutshell, learn about error handling, prepared statements, BLOBs and CLOBs. Jun. 12, 2002

Flawed Understanding of JDO Leads to FUD
By David Jordan
In this scathing response to Don Bales' recent critique of Java Data Objects, David Jordan offers proof that JDO does not regard SQL as a "bad thing," yields shorter and simpler code, and is vendor-neutral. May. 29, 2002

An Introduction to JDBC, Part 2
By William Crawford, Jim Farley
Part Two of this excerpt from Java Enterprise in a Nutshell focuses on database connection, statements and results.  May. 29, 2002

An Introduction to JDBC, Part 1
By William Crawford, Jim Farley
In this excerpt from Chapter 2 of Java Enterprise in a Nutshell, the authors introduce the JDBC architecture. May. 1, 2002

DDL Statements and Transactions
By Jason Price
Learn how to add SQLJ statements to Java programs that use the embedded SQL Data Definition Language. Mar. 6, 2002

JDO vs. Entity Beans: A Modest Proposal
By Marek Mosiewicz
The Java Data Objects (JDO) approach can replace performance-poor Entity Beans in many cases. But JDO is not enough; here's a proposal for improving Entity Beans without sacrificing their server-side power. Feb. 27, 2002

Database Access Using Lightweight Applets
By Donald Bales
Using lightweight applet technology, you can bring the full weight of Java's GUI capability and the advantages of client-side dynamic database access to your Web applications. Because the technology employs HTTP to communicate with a database via SqlServlet, lightweight applets perform well, yet remain small enough to have acceptable download times. Feb. 20, 2002

Java Programming with Oracle JDBC: Performance
By Donald Bales
When it comes to JDBC performance issues, there are two major factors to consider: performance of the database structure and the SQL statements used against it and relative efficiency of the different ways you can use the JDBC interfaces to manipulate a database. This excerpt from Java Programming with Oracle JDBC explores these.  Feb. 13, 2002

Expiring Data with Hashbelts
By William Grosso
The final installment in this series on automatic data expiration shows that hashbelts are a new data structure that satisfies all of the requirements for data expiration. Feb. 13, 2002

DML Statements
By Jason Price
Learn how to add SQLJ statements to your Java programs that use embedded SQL Data Manipulation Language (DML) statements.  Feb. 6, 2002

Using Java Data Objects
By Dion Almaer
The JDO standard frees developers from having to worry about database operations, letting them focus on business logic. This article builds a sample address book app in JDO. Feb. 6, 2002

The Hashbelt Data Structure
By William Grosso
William Grosso continues his Data Expiration series by focusing on the 'hashbelt' algorithm, which is a generic data structure adaptable to a wide variety of time-sensitive data problems. Jan. 30, 2002

The Debate Over Java Data Objects
By Dion Almaer
The Java Data Objects spec is intended to free developers from worrying about mapping objects to databases. But not everyone thinks it's a great idea. Vendors like Thought Inc. take issue with JDO and think they have better solutions. Dion Almaer weighs in on the issues. Jan. 23, 2002

Dynamic Database Access from Client-Side JavaScript
By Donald Bales
Imagine the advantages of being able to dynamically access a database from client-side JavaScript. You could dynamically query a database from JavaScript for client-side field validation, or dynamically populate a drop-down select list, to name just a few possibilities. In fact, you can do this with the help of an applet-servlet pair. This article describes the applet-servlet pair architecture and offers several sample applications. Jan. 23, 2002

Introducing Automatic Data Expiration
By William Grosso
How you choose to expire data can make the difference between an application that scales to enterprise quality and one that doesn't. In the first of this three-part series, William Grosso covers the fundamentals of data expiration, and presenting solutions of increasing functionality.  Jan. 9, 2002

Database Connections and SQLJ Statements
By Jason Price
Jason Price describes how to connect to a database and embed SQL statements in your Java programs using SQLJ. Jan. 2, 2002

Unlocking the True Power of Entity EJBs
By Tyler Jewell
Tyler Jewell explains the real power of entity EJBs: developers can write once and deploy many times, with each deployment customized for unique data scenarios. Dec. 19, 2001

Setting Up Your Environment to Develop SQLJ Programs
By Jason Price
Jason Price describes how to set up your environment to develop SQLJ applications, and he demonstrates a "Hello World" program that uses SQLJ to access a database. Dec. 5, 2001

Tuning JDBC: Measuring JDBC performance
By Jack Shirazi
Many Java apps are dependent on Java Database Connectivity, but how do you measure JDBC's performance, and which subsystems need optimizing? Dec. 5, 2001

Learning EJB QL
By Jeelani B. Shaik
Learn how the addition of EJB QL to EJB 2 justifies the distributed component architecture as the standard way of defining queries, which allows database applications to be more portable.  Sep. 19, 2001

Java Programming with Oracle SQLJ: Contexts and Multithreading
By Jason Price
A multithreaded program is one that is able to carry out several tasks in parallel using Java threads. As you will see in this excerpt from Java Programming with Oracle SQLJ, execution contexts are very important when writing a multithreaded SQLJ program. Sep. 13, 2001

Getting Up To Date with JDBC API
By Jeff Brown
Object Computing's Jeff Brown covers the JDBC 3.0 specification in its proposed final draft form, which promises to add more robust transactions by way of savepoints, a number of resource pooling enhancements, retrieval of auto-generated keys and a lot more. Aug. 21, 2001

Using Tomcat 4 Security Realms
By James Goodwill
In part 4 of his Using Tomcat series, James Goodwill covers Tomcat 4, focusing on security realms using both memory and JDBC realms (with a MySQL database example). Jul. 24, 2001


Castor  Feb. 14, 2002

EJB-QL  Jan. 2, 2002

Java Data Objects  Oct. 16, 2001

JDBC 2.0 Tutorial  May. 11, 2001

Sybase White Papers/Tech Papers  Feb. 6, 2001

More Resources

More Events

About ONJava.comContact UsPrivacy PolicyMedia Kit
Copyright © 2000-2006 O’Reilly Media, Inc. All Rights Reserved.
All trademarks and registered trademarks appearing on the O'Reilly Network are the property of their respective owners.
For problems or assistance with this site, email