Re: J2EE and various databases, including SQL Server

From: Sudsy (bitbucket44_at_hotmail.com)
Date: 01/17/04


Date: Fri, 16 Jan 2004 19:11:41 -0500

Ken Larson wrote:
> I've done a fair amount of Java, but I am just starting to learn J2EE.
> I'm dealing right now with a requirement for a project that the database
> selected integrate well with J2EE. Specifically, I will most likely be
> using SQL Server (spare me any MS gripes, this isn't my decision), but I
> need to be aware of the consequences of using SQL Server in a J2EE
> environment.

RDBMS limitations will hit you whether you're using a command-line
tool like sqlplus (Oracle) or db2sql92 (DB/2) just as readily as
when you're using JDBC or entity EJBs. Look at the capabilities
first.

> Is the only thing important for J2EE having a good JDBC driver? Or are
> there other things that various databases offer that make them play
> better with J2EE?

It's a very important point. Have a peek here:
<http://java.sun.com/products/jdbc/driverdesc.html>

> I am aware that Oracle offers some additional Java features like storing
> Java objects in the databases, and writing stored procedure in Java.

Required or just "nice"? I can store objects in any RDBMS which
supports BLOBs, albeit with a tad more programming effort. The
idea of using Java stored procedures is a transparent (to me)
attempt to keep the "business logic" in the database instead of
where it belongs: in session EJBs.
The whole idea was to divorce the business logic from the data
store. Stored procedures and triggers tie you to a single vendor.
Think about it! Do you want proprietary or portable?

> I also have seen some things about JTA and XA, for transaction
> processing (although I don't know much about it at this point); what
> level of support is there for this for SQL Server as opposed to
> alternatives?

Again, best to refer to "the horse's mouth":
<http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/transactions/transactions4.html>

> Thanks,
> Ken

Here's my very personal take on the situation: I would not be
willing to "bet the company" on SQLServer. If you want a truly
"bullet-proof" solution then look for something more mature,
something proven in a variety of situations.

Check this out:
<http://www-306.ibm.com/software/success/cssdb.nsf/CategoryL1ViewFM?ReadForm&Site=db2software_industryL1VW>
Click on an industry to read success stories.

Or this:
<http://www.oracle.com/solutions/>
Click on one of the "Industry Solutions" and then the "Customer
Successes" link.

If I had to choose only one for a 24x7x365 operation then it
would have to be DB/2. Spare me the flames; it's just a personal
opinion.
Finally, you might want to have a look at this:
<http://www.gartner.com/DisplayDocument?doc_cd=115036>
Take from it what you will.



Relevant Pages

  • Re: moving from J2SE to the J2EE world? how?
    ... > I am a java desktop application programmer with about 5 years ... > I think it is time to move into the J2EE world, ... database, and that does well as a web app. ... Java, Cocoa, and Database consulting for the life sciences ...
    (comp.lang.java.programmer)
  • Re: mainframe career advice
    ... > would you recommend for learning J2EE, Websphere and Rational toolset? ... when I referred to it as Java. ...
    (comp.lang.cobol)
  • Re: connecting to a database
    ... so I'm attempting to code it up in java. ... I have no idea how to set up a connection. ... connection to an Access Database that they would be willing to post. ... sql. ...
    (comp.lang.java.programmer)
  • Stuff the purple heart programmers cook up
    ... C To act like a framework for the JDBC driver developers. ... D To hide the specifics of accessing particular kinds of database ... Topic: Java 2: Survey Author: Chris Mc Devitt ... The JDBC ResultSet is actually an interface java.sql.ResultSet. ...
    (comp.lang.java.programmer)
  • Re: selecting a language
    ... > languages to write our application in, as Progress is becoming ... Progress is a 4GL language so it is very rapid development. ... database access from GUI code. ... Java has a lot of built in support for it. ...
    (comp.lang.java.programmer)