- Shopping Bag ( 0 items )
Ships from: Newark, CA
Usually ships in 1-2 business days
Ships from: Avenel, NJ
Usually ships in 1-2 business days
Ships from: Westminster, MD
Usually ships in 1-2 business days
One-stop shopping for serious Web developers!
The authoritative guide to every technology that enterprise Web developers need to master, from HTML 4 to Java 2 Standard Edition 1.3, servlets to JavaServer Pages, and beyond. Core Web Programming, Second Edition brings them all together in the ultimate Web development resource for experienced programmers.
HTML 4: In-depth, practical coverage of HTML document structure, block-level and text-level elements, frames, cascading style sheets, and beyond.
Java 2: Basic syntax, object-oriented design, applets and animation, the Java Plug-In, user interface development with Swing, layout managers, Java2D, multithreading, network programming, database connectivity, and more.
Server-Side Java: Servlets, JSP, XML, and JDBC-the foundations of enterprisedevelopment with Java. Advanced topics include JSP custom tag libraries,combining servlets and JSP (MVC), database connection pooling, SAX, DOM, and XSLT processing, and detailed coverage of HTTP 1.1.
This book's first edition is used in leading computer science programs worldwide, from MIT to Stanford, UC Berkeley to Princeton, UCLA to Johns Hopkins. Now, it's been 100% updated for today's hottest Web development technologies—with powerful new techniques, each with complete working code examples!
Every Core Series book:
Core Web Programming delivers:
XML has numerous advantages including being easy to read, easy to parse, extensible, and widely adopted. In addition, you can define a grammar through a Document Type Definition (DTD) to enforce application-specific syntax. However, the greatest single advantage of XML is that the data can be easily processed by other applications; XML data is not in a proprietary format. In essence, XML has done for data what the Java language has done for programs:
Java = Portable Programs
XML = Portable Data
This chapter doesn't focus on how to write XML but rather how to process XML documents with Java. We show you how to use Java to process XML documents by using the Document Object Model (DOM), the Simple API for XML (SAX), and the Extensible Style sheet Language for Transformations (XSLT). If you are new to XML, here are some good starting points for additional information:
XML 1.0 Specification
Sun Page on XML and Java
WWW Consortium's Home Page on XML
Apache XML Project
XML Resource Collection
O'Reilly XML Resource Center
http://www.xml.com/pub/rg/Java_Parsers. We use the Apache Xerces-J parser in this book. See
http://xml.apache.org/xerces-j/. This parser also comes with the complete DOM API in Javadoc format.
xerces_install_dir\ xerces.jar. For example, for desktop applications on Windows you would do set
CLASSPATH=xerces_install_dir\xerces.jar;%CLASSPATH%If you wanted to use DOM from servlets and JSP, you would copy the appropriate JAR file to the server's lib directory (if supported), unpack the JAR file (using jar -xvf) into the server's classes directory, or explicitly change the server's CLASSPATH, usually by modifying the server start-up script.
jaxp_install_dir/jaxp.jar. For example, on Unix/Linux and the C shell, you would do setenv
CLASSPATH jaxp_install_dir/jaxp.jar:$CLASSPATHFor use from servlets and JSP, see the preceding step.
http://www.w3.org/TR/ DOM-Level-2-Core/, but the API in Javadoc format that comes with Apache Xerces is easier to read and also includes the JAXP and SAX (see Section 23.3) APIs.
I. THE HYPERTEXT MARKUP LANGUAGE.
1. Designing Web Pages with HTML 4.0.
2. Block-Level Elements in HTML 4.0.
3. Text-Level Elements in HTML 4.0.
5. Cascading Style Sheets.
II. JAVA PROGRAMMING.
6. Getting Started with Java.
7. Object-Oriented Programming in Java.
8. Basic Java Syntax.
9. Applets and Basic Graphics.
10. Java 2D: Graphics in Java 2.
11. Handling Mouse and Keyboard Events.
12. Layout Managers.
13. AWT Components.
14. Basic Swing.
15. Advanced Swing.
16. Concurrent Programming with Java Threads.
17. Network Programming.
III. SERVER-SIDE PROGRAMMING.
18. HTML Forms.
19. Server-Side Java Servlets.
20. Javaserver Pages.
21. Using Applets as Front Ends to Server-Side Programs.
23. XML Processing with Java.
However, when Marty went shopping for texts over the next semester or two, he got a rude surprise. Despite the availability of good books in most of the individual areas he wanted to cover, Marty found that he needed three, four, or even five separate books to get good coverage of the overall material. Similarly, for his day job, Marty was constantly switching back and forth among the best of the huge stack of books he had accumulated and various on-line references. Surely there was a better way. Shouldn't it be possible to fit 85 percent of what professional programmers use in about 35 percent of the space, and get it all in one book?
That was the genesis of the first edition of Core Web Programming. The book was very popular, but the industry has been rapidly moving since the book's release. Browsers moved from HTML 3.2 to 4.0. The Java 2 platform was released, providing greatly improved performance and graphics libraries suitable for commercial-quality applications. JSP 1.0 came along, resulting in an explosion of interest in both servlets and JSP as an alternative to CGI and to proprietary solutions like ASP and ColdFusion. XML burst upon the scene. The server equalled or even surpassed the desktop as the biggest application area for the Java programming language.
Wow. And demand has only been growing since then. Although readers were clamoring for a new edition of the book, it was just too much for Marty to handle alone. Enter Larry Brown, with broad development and teaching experience in Java and Web technologies, and with particular expertise in the Java Foundation Classes, multithreaded programming, RMI, and XML processing with Java. Larry teamed up with Marty to totally update the existing material to HTML 4, CSS/1, HTTP 1.1, and the Java 2 platform; to replace the CGI sections with chapters on servlets 2.2 and JSP 1.1; and to add completely new sections on Swing, Java 2D, and XML processing with JAXP, DOM Level 2, SAX 2.0, and XSLT. They even got a little bit of sleep along the way.
We—Marty and Larry—hope you find the result enjoyable and useful!
A word of caution, however. Nobody becomes a great developer just by reading. You have to write some real code too. The more, the better. In each chapter, we suggest that you start by making a simple program or a small variation of one of the examples given, then strike off on your own with a more significant project. Skim the sections you don't plan on using right away, then come back when you are ready to try them out.
Web pages are created with HTML, the HyperText Markup Language. HTML lets you mix regular text with special tags that describe the content, layout, or appearance of the text. These tags are then used by Web browsers like Netscape Navigator or Microsoft Internet Explorer to format the page. This first part of the book covers the following topics in HTML.
Java is a powerful general-purpose programming language that can be used to create stand-alone programs as well as ones that are embedded in Web pages. The following Java topics are covered.
CLASSPATH, and JAR files.
BoxLayout. Positioning components by hand. Strategies for using layout managers effectively.
Container. Buttons, check boxes, radio buttons, combo boxes, list boxes, textfields, text areas, labels, scrollbars, and pop-up menus. Saving and loading windows with object serialization.
JTable. Using custom data models and renderers. Printing Swing components. Updating Swing components in a thread-safe manner.
URLclass. Implementing a generic network server. Creating a simple HTTP server. Invoking distributed objects with RMI.
Programs that run on a Web server can generate dynamic content based on client data. Servlets are Java technology's answer to CGI programming and JSP is Java's answer to Active Server Pages or ColdFusion. The following server-side topics are discussed.
POSTdata. HTTP tunneling. Using object serialization to exchange high-level data structures between applets and servlets. Bypassing the HTTP server altogether.
RegExp, and so forth.
The book has a companion Web site at
This free site includes:
Marty Hall is a Senior Computer Scientist in the Research and Technology Development Center at the Johns Hopkins University Applied Physics Lab, where he specializes in the application of Java and Web technology to customer problems. He also teaches Java and Web programming in the Johns Hopkins part-time graduate program in Computer Science, where he directs the Distributed Computing and Web Technology concentration areas. When he gets a chance, he also teaches industry short courses on servlets, JavaServer Pages, and other Java technology areas. He is the author of Core Servlets and JavaServer Pages and the first edition of Core Web Programming. Marty can be reached at the following address:Research and Technology Development Center
Larry Brown is a Senior Network Engineer at the Naval Surface Warfare Center, Carderock Division, where he specializes in developing and deploying network and Web solutions in an enterprise environment. He is also a Computer Science faculty member at the Johns Hopkins University, where he teaches server-side programming, distributed Web programming, and Java user interface development for the part-time graduate program in Computer Science. Larry can be reached at the following address:Naval Surface Warfare Center, Carderock Division
Posted April 8, 2003
We were writing a three-tier application involving parsing text files of latitudes and longitudes from a mainframe, converting them into graphics files, storing them in Oracle tables, then creating a web-based interface with authentication and different privilege levels that allowed retrieval and modifiaction. This book answered all the questions we had on integrating the many different technologies employed. The book probably deserves five stars.Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.