From: www.itworld.com

JSP in Harms' way

by Nicholas Petreley

July 2, 2001 —

 

I've already raved about the Python language for Web application development, so equal time for Java is in order. As big a fan of Python as I may be, I must admit that for server-side Web applications development Java is by far the most mature and flexible of the options available. Java as a language may be wordy and less appealing than Python, but Java Server Pages (JSP), JavaBeans, and JSP Custom Tag Libraries are much more mature.

As I've complained loud and often, server-page solutions can encourage bad coding practices because they tempt people to integrate too much HTML with their code. JSP by itself is no exception. But once JSP programmers learn how to use JavaBeans and Custom Tag Libraries, they are likely to employ them in a project to reduce duplication of effort. As a side benefit, the use of JavaBeans and Custom Tag Libraries encourage programmers to design applications that allow HTML designers to create pages without much actual Java code.

Tomcat and Apache are the de facto standards for using Java for Web applications in the open-source world. The first place to look for information is the site jakarta.apache.org, which will take you to the Jakarta Project site. Jakarta is the name for the Apache mother project that encompasses Tomcat. You can use Tomcat with the open-source AOL Web server, too, but most of the work is being done using Apache.

An even better resource is David Harms' book JSP, Servlets, and MySQL, recently published by M&T Books. The title is a bit misleading in that it specifically names MySQL as the database of choice. Although it focuses on MySQL as the basis for its tutorial and examples, the book is great to have regardless of what database you intend to use.

Indeed, this book is an oasis among dunes of useless materials on the topic of JSP and servlets. Harms doesn't fatten his book to appeal to publishers. Every ounce is there for a reason.

Most importantly, Harms nails down his audience perfectly. He doesn't assume too much or too little about the reader, so I wasn't running to the Web to find out more details or skimming pages because I was bored. That's quite a feat considering the chapters cover topics with which I am already quite familiar. I read them not because I needed to but because Harms added some nice tips and other tidbits to my knowledge.

One of the most beneficial things you can glean from this book is the advice and know-how to create a properly partitioned Web application. Harms devotes a section of the book to the Model View Controller approach to development, but this coding practice is kept in mind throughout the whole work. As a result, readers aren't likely to go off half-cocked and integrate too much Java code into their HTML just because they discover early in the book that it is possible to do so.