★ wanayoo — archive 1999 http://java.sun.com/features/1998/02/pencom.htmlNouvelle recherche | Portail wanayoo
Java Technology Home Page
Downloads, APIs, Documentation
Java Developer Connection
Docs, Tutorials, Tech Articles, Training
Online Support
Community Discussion
News & Events from Everywhere
Products from Everywhere
How Java Technology is Used Worldwide

A-Z Index

The Source for Java Technology

THE ULTIMATE CONNECTION: SERVLETS MEET ENTERPRISE DATABASES

Servlet Series

Edited by Phil Inje Chang

How do servlets connect with databases?

To communicate with databases, servlets created in the JavaTM programming language typically work hand-in-hand with Sun's database access API, JDBCTM. An object-oriented cousin of the ODBC specification from Microsoft, JDBC helps Java programs connect reliably and uniformly to a wide range of database engines. Since JDBC works with any Java program, an applet or client-based application could also use a JDBC driver to interact with a database. However, servlets provide a level of efficiency by "funneling" database connections at a middleware level for a number of clients, making the best use of an open "pipe" to the database server via a JDBC driver.

In this profile we look at one of the most popular and critical uses of JavaTM technology in corporations: access to and interaction with databases.

Multi-tier network architectures have evolved largely around the notion of providing the most efficient access to corporate data. Database applications are the bread and butter of IS departments worldwide, and there is no doubting the efficiency of middle-tier application servers in large networks. Servlets created using the Java programming language allow quick development of modular applications that leverage Web servers as the new middle tier.

Some of the key tools for implementing server-side Java solutions have come from Sun and include the Java Web ServerTM, JavaServerTM Toolkit, and the Servlet API. The enthusiasm developers have for the Servlet API in particular is due to the fact that it allows server-side Java programs to run with any major Web server. Hence, it provides a standard alternative to CGI programming that enhances performance and security, as well as being easier to administer. Looking ahead, servlets will be a standard extension in JDKTM 1.2.

Java Web ServerTM is the first commercial Web server to incorporate the Servlet API. Available in a two versions (domestic and global), Java Web Server employs applet-to-servlet administrative tools and implements a Web service based on the JavaServer Toolkit architecture. (See Inside the Java Web Server.) Java Web Server 1.1 is now available, featuring built-in page compilation, session tracking, and presentation templates. For more details see Java Web Server 1.1 home page.

Pencom
    "If you can't reuse your code on every platform, the benefits of code-reuse are limited. With the Java platform, we can tell a prospective client that we've already got half of their project completed, and because of that, our bid is going to be lower and the project is going to be completed faster. Java technology gives us a huge competitive advantage over software development shops that are still mucking around in environments like Visual Basic."

    -- Evan Coyne Maloney, Internet Technologist, Research & Development Group, Pencom Web Works

Pencom Web Works: Tools for a Wide Range of Clients

Pencom Web Works (PWW) is a start-up division of Pencom Systems Incorporated. PWW's mission is to develop business applications that take advantage of the benefits of the Internet and Internet-based open systems. Their clients include Credit Suisse / First Boston, NEC, Fidelity, Swiss Bank, Continental Airlines, Netmarket, and Nike.

Why Pencom Web Works Went with Servlets

What problem were you solving and why did you use Java technology? In particular, why did you choose servlets?

"PWW differentiates itself from the competition by developing tools which can be used to complete client projects faster and better. We have an internal Research & Development team whose sole purpose is to develop tools that will be used for client projects by our other developers.

"The most significant of these today is MetaMagic, an `information broker' which resides between the browser and legacy data, finding the information on the client's network, or the Internet, and presenting it to the user as a Web page. MetaMagic is written in the Java programming language, and utilizes the Servlet API so that it can plug into a wide variety of servers. We now have a patent pending on some of the technology.

"The Research & Development team of Pencom Web Works is charged with developing a repository of reusable software code and tools. With such a broad mandate, we have to be careful to use technologies that can be deployed on a wide variety of platforms, because that's what our clients have. The value of code-reuse would be negated if we developed all our tools in platform-specific technologies like ActiveX and Visual Basic.

"MetaMagic utilizes data modeling and metadata to create 'virtual Web sites' that can connect literally any type of network-accessible data to the Web. Any data that resides on any machine on a company's intranet or anywhere on the Internet can be used by MetaMagic.

"Best of all, MetaMagic doesn't require you to convert your data into a new format or copy it to a different location. You leave the data where it is and in its current format and you can continue to work with it the way you do now.

"With MetaMagic, there is no such thing as 'legacy data,' because it allows all data to become Web-friendly. MetaMagic does the work of getting it, analyzing it, and processing it so that your data can be hooked up to the Web. Think of it as a "universal connector" for data.

"Our process is two-fold: first, MetaMagic is to be used by our consultants as they go out and develop applications for our clients. We then gain feedback from our consultants and clients and integrate it into a 2.0 release, which we may then release stand-alone as a toolset for other server-side application developers.

"As for development interface, all MetaMagic apps are developed in straight Java code; the developer uses whatever IDE they already use."

The Benefits: Cross-Platform, Simple, Extensible

What are the overall benefits of using servlets and server-side Java technology?

"Almost every company managing large amounts of data has already perceived the very tangible benefits of hosting the next generation of its business applications on the World Wide Web (e.g., platform independence, ease of use, rapidity of application development, etc.).

"Since much of our work is on the server side, our notion of 'platform' includes not only the standard combination of processor type and operating system, but of server software as well. That's where we benefit from the Servlet API: it takes the Java platform's Write Once, Run AnywhereTM promise and extends it to the server environment.

"Today, Java is the most significant enabling technology in software development. It has allowed us to build a set of tools that we can use on any project for any client and on any platform. Before Java technology, the promise of code-reuse made by object-oriented languages was not completely fulfilled. If you can't reuse your code on every platform, the benefits of code-reuse are limited. With Java technology, we can tell a prospective client that we've already got half of their project completed, and because of that, our bid is going to be lower and the project is going to be completed faster. Java technology gives us a huge competitive advantage over software development shops that are still mucking around in environments like Visual Basic.

"A tool like MetaMagic is a natural candidate for Java technology. The initial version of MetaMagic was written for Jigsaw, the first completely Java-technology-based Web server available (from the W3C). At the time, Jigsaw made perfect sense for us because it was the only way we could deploy MetaMagic completely in Java technology. (Ironically, Jigsaw was written by Anselm Baird-Smith, who now works for Sun in the JavaServer group.)

"Since then, JavaSoftTM released Java Web Server and the Servlet API, and we investigated porting MetaMagic to become a servlet, so that MetaMagic could be used by a variety of different Web servers. In addition to Java Web Server, servlets created in the Java programming language can be used with Netscape's servers, Microsoft's IIS (and any other servers supporting ISAPI), Apache, and many others.

"For us, the benefits of the Servlet API are unquestionable: it gives us the largest possible server-side base of any technology on the market. And as the Servlet API continues to be adopted by more and more server vendors, its ubiquity will begin to rival that of CGI. And since servlets are much more efficient than CGI scripts (which take more overhead), it could be the technology that puts the final nail in the coffin of CGI.

"Here's a short list of what we like about servlets:

  • Portability across platforms: Because the Servlet API utilizes Java software, our servlets can be cross-platform without any re-coding.
  • Portability across servers: The Servlet API is available on an ever-increasing set of Web servers, including Apache, Microsoft IIS, and Netscape, so the market for our servlet will be as large as possible.
  • Simple API: The Servlet API is simple to adopt; anyone familiar with the Java language and CGI will be easily able to understand the Servlet API.
  • Extensible API: The Servlet API is not tied to any particular protocol, so as servlets or services become available for things other than HTTP, we can redeploy our servlet using the new environments."
Were there any technical difficulties?

"Some of the third-party servlet runners available for different server environments are more robust than others. We experimented with several to determine optimal configurations. We also found the Java Web Server mailing list to be a valuable resource as we assessed the various Servlet runners."

See Also

See Steaming Hot Servlets, a discussion with Proxicom about their servlet development.

See Java Server Product Family home page for information on Java Server products.

Phil Inje Chang is a technology consultant and CEO of Simpler Software, Inc.


[ This page was updated: 28-Feb-00 ]

Products & APIs | Developer Connection | Docs & Training | Support
Community Discussion | Industry News | Solutions Marketplace | Case Studies
Glossary - Applets - Tutorial - Employment - Business & Licensing - Java Store - Java in the Real World
Feedback | Map | A-Z Index

For more information on Java technology
and other software from Sun Microsystems, call:
(800) 786-7638
Outside the U.S. and Canada, dial your country's AT&T Direct Access Number first.
Sun Microsystems, Inc.
Copyright © 1995-2000 Sun Microsystems, Inc.
All Rights Reserved. Terms of Use. Privacy Policy.