SPECIAL OFFERS
Keep up with new releases and promotions. Sign up to hear from us.
Register your product to gain access to bonus material or receive a coupon.
Today's e-Commerce-enabled Web sites are more complex than ever: it's no longer enough to simply add "shopping cart" functionality! This book shows developers exactly how to integrate a wide range of proven and emerging Web technologies to build a state-of-the-art e-Commerce site from scratch. The authors' example-driven, step-by-step approach offers an inside view of e-Commerce systems -- and provides Java, JavaScript, SQL and XML code that can help developers dramatically reduce time-to-market. Developing E-Commerce Sites starts with a quick refresher on the basics of establishing a Web presence, and a detailed overview of the key challenges associated with deploying e-Commerce and other sophisticated Web applications. Next, the authors introduce several of the key technologies that enable e-Commerce, including HTML, Java, servlets, JavaScript, JDBC, and XML -- providing detailed examples that solve real-world e-Commerce problems. Next, Developing E-Commerce Sites addresses the critical security, credit card verification, and site performance issues associated with e-Commerce. The book concludes by walking through the development of a complete e-Commerce system from start-to-finish, including database integration, user interfaces, and the creation of utility classes that can be reused in any e-Commerce deployment.
Introduction
Rationale
Target Audience
Highlights of the Book
Organization
Acknowledgments
Part I
Chapter 1 The Basics of Internet TechnologySkill Level Required
Web Sites and Browsers
Web Pages and HTML
Web Servers and HTTP
URLs
FORMS and CGI
Javascript
Cookies
Java and Servlets
Databases
JDBC
XML
e-Commerce Systems
Inventory Management Systems
Profile Management Systems
Ordering Management Systems
Shipping Management Systems
Reporting Systems
Getting on the Internet
Using an ISP
Using a Hosting Service
Keeping the Computer with You
A Note about Speed
Disclaimer
Part II
Chapter 2 HTMLIntroduction
First HTML File
Some Formatting Tags
Links
Lists
Tables
Frames
Forms
Putting Comments in HTML
Conclusion
Chapter 3 JavaIntroduction
Object Oriented Programming
First Java Program
Applets and Applications
Instances
Method Overloading
Inheritance
Interfaces
Packages
Exceptions
File I/O
Threads
Some Useful Classes and Methods
Vectors
Hashtables
Object Serialization
Remote Method Invocation (RMI)
Reading a URL
Working with Proxies
Internationalization
Applets
Threads in Applets
Java Mail API
Commenting Code in Java
Some Useful Tools
Some Practical Examples
Example 1: Displaying Multiple Advertisements on Your Site
Example 2: Keeping Track of Clicks on Advertisements
Conclusion
Some Handy Classes and Methods in Some Useful Packages
Chapter 4 Servlets= HTML FORMs
= POST and GET METHODs
= Anatomy of a Request and a Response
= CGI Scripts
= Drawbacks of CGI
= Efficiency with Servlets
= Anatomy of a Servlet
= JServ--Servlet Engine
= A Basic Servlet
= FORM Variables
= Cookies
= Sessions
= Some Practical Examples
Example 1: Bulk Email Sender
Example 2: Internationalized Help Screens for Your Worldwide Customers
Example 3: Stocks Reader
= Example: Session-Based Shopping Cart
= Conclusion
= Some Useful Interfaces/Classes and Some of Their Methods
Chapter 5 JavascriptIntroduction
Documents
documents.forms
Statements
Examples
Functions
Objects in Javascript
Events and Event Handling
Arrays
FORMs
Select Lists
Buttons
Submit and Radio Buttons
Checkboxes
Text Fields and Text Areas
Frames
Cookies
A Practical Example
Example: Personalized One-to-One Service to Customers
Some Useful Methods, Properties, and Event Handlers of Some Useful Objects
Reference
Chapter 6 SQL and JDBCDatabases and SQL
Schemas
Datatypes
Table Creation
Column Constraints
Keys
Indexes
Dropping Tables
Data Insertion and Modification
Transactions
Data Retrieval
Operators
Functions
Retrieving Records from Multiple Tables
Deleting Records
Sequences
Stored Procedures
JDBC
Connecting to the Database
Drivers
Connection Object
Statement Object
Retrieving Data
Inserting/Modifying Data
PreparedStatement
Insert into a LONG Column
CallableStatement
Transactions in JDBC
Some Practical Examples
Example 1: A Customer Registration System
Example 2: Bulk Email Sender--JDBC Version
Some Useful Classes and Interfaces in the Java.sql Package
Chapter 7 XMLIntroduction
Some Rules to Follow
Displaying an XML Document
Data Interchange with an XML Document
Document Type Definitions (DTDs)
Parsers
Using XML
Client-Side Usage
Server-Side Usage
Some Practical Examples
Example 1: Generating XML from the Database
Example 2: Reading XML Data into the Database
Example 3: XML-Based Stock Analyzer
Conclusion
References
PART III
Chapter 8 Credit Card VerificationCard Authorization URLs
Third-Party APIs
Chapter 9 Security and PerformanceSecurity
Firewalls
Database Security
Software Patches
Data Transmission Security
Public and Private Keys
Certificates
Ciphers
Secure Sockets Layer
Message Digests
Password Security
Some Hints on Making the Applications Secure
Performance
Finding and Fixing Bottlenecks
Some Suggestions
PART IV
Chapter 10 System DesignIntroduction
Inventory Management System
Things to Think About
Profile Management System
Things to Think About
Ordering Management System
Things to Think About
Other Systems
Conclusion
Chapter 11 FunctionalityIntroduction
Inventory Management System
Menu
Adding a Category
Adding a Subcategory
Deleting Categories
Adding Products
Modifying Products
Viewing and Deleting Products
Typical Usage Scenario
Ordering System
Sign-In Page
Ordering Menu
Adding Products to Checkout Cart
Cart Contents
Checkout
Checkout for Existing Users
Personal Cart Option
Categories Option
Order History Option
Search Option
Typical Usage Scenario
Profile Management System
Top Menu
Registration
Profile Update
Contact Us Option
Password Finder Option
Shipping Management System
Sign-In Page
Reporting System
Sign-In Page
Reporting Menu
User Distribution
Sales Distribution
User Frequency
Sales Frequency
Chapter 12 UtilitiesIntroduction
Description of the Utilities
Connection-Pooling Utility
Authenticator
Email-Sending Utility
HTML Template Utility
Chapter 13 Inventory Management SystemPrerequisites
High-Level Description
Classes and Their Methods
Detailed Description
HTML Files in Document Root
Other HTML Files and Templates
Chapter 14 Profile Management SystemHigh-Level Description
Classes and Their Methods
Detailed Description
Document Root HTML Files
Other HTML Files and Templates
Chapter 15 Ordering Management SystemHigh-Level Description
Classes and Their Methods
Detailed Description
Document Root HTML Files
Other HTML Files and Templates
PART V
Chapter 16 Shipping Management SystemHigh-Level Description
Classes and Their Methods
Detailed Description
Document Root HTML Files
Other HTML Files and Templates
Chapter 17 Reporting SystemHigh-Level Description
Classes and Their Methods
Detailed Description
Document Root HTML Files
Other HTML Files and Templates
Appendix A Installation and Configuration InstructionsApache
Installation
Troubleshooting
Configuration
JServ
Installation
Configuration
Oracle
Utilities
mSQL
Troubleshooting
Utilities
JDBC Drivers
Troubleshooting
JavaMail
Appendix B Complete Code ListingJG541
I still remember those days in school when we spent endless hours writing a small program in C that would allow two computers to communicate. There is no doubt that C is an excellent and very flexible language. However, in today's world of breakneck speed, when everything needs to be developed by "next Tuesday," doing things in C alone can be a bit challenging. It's the day and age of specialized languages and technologies. In this book we discuss a number of languages specifically geared for Web development. And we discuss these within an even more focused environment--that of developing tools that can help in conducting commerce over the Internet.
The book not only introduces you to different languages that can be used for developing effective e-commerce applications, it also presents a large number of practical examples. In addition it deals with issues such as performance and security, which are of importance to any e-commerce site. The last section of the book presents a complete example: five systems that can be leveraged by any e-commerce site.
Rationale
There are a number of books on the market that talk about individual technologies for Web development. While these books excel in the topics they're dealing with, practical Web development requires the use of more than one language and technology. A book on databases would teach you SQL and everything related to databases. Another book would make you a master of Java. However, if you're asked to develop e-commerce systems for a company, you would need to know not only these two but a lot more, such as Javascript, JDBC, Servlets, Web servers, etc. More important, you would need to understand which language and technology are best suited for what and how they can be integrated.
This book is an attempt to fill that void. Different pieces required to solve the puzzle are presented in a logical and easy-to-follow manner. Every chapter builds on knowledge gained in previous chapters. Carefully crafted examples show you how to develop practical solutions using a combination of appropriate technologies. In short, the book was written to get you up to speed by next Tuesday, if not Monday!
Target Audience
The primary target audience for this book is technical people who want to learn how to develop applications for e-commerce. These include both technical developers who want to learn the technologies and technical managers who want to see how developers can apply them.
Even though the book uses e-commerce as a backdrop, it covers everything required for building any kind of Internet application. It is thus intended to be useful even for technical people interested in generic Web development.
Here are some categories of people who can benefit from this book:
Highlights of the Book
The book has a number of useful features:
Organization
The book comprises four parts, followed by two appendices:
Part I contains the introductory chapter, which outlines everything that follows. This chapter also shows you how you can get your computer on the Internet and establish a Web presence. Terms applicable to the Internet are described briefly.
Part II begins with a chapter on HTML. Other chapters in this section discuss Java, Servlets, Javascript, SQL, JDBC, and XML. Everything is taught by example. All chapters except the HTML chapter end with a section called Practical Examples where we present a number of programs that solve some complex, practical problems. By making use of knowledge from previous chapters, these examples also illustrate an integration of different languages.
Part III takes a look at some practical considerations for anyone planning on building Web systems and/or e-commerce systems. Chapter 8, "Credit Card Verification," discusses several ways in which you can start accepting credit cards over the Net. Chapter 9, "Security and Performance," talks about steps you can take to make your site faster and more secure.
Part IV which completes the book, contains a complete e-commerce solution. It begins with Chapter 10, "System Design," which introduces five systems developed in the following chapters using technologies covered in Parts II and III. This chapter also presents the design of a database that is used by the e-commerce systems, which should work as a good tutorial for designing a normalized database. Chapter 11, "Functionality," talks about the user interface of the systems. Chapter 12, "Utilities," presents a number of utility classes that can be leveraged by any Web application. The remaining five chapters in Part IV discuss the actual implementation of the five systems.
Appendix A contains instructions for installing and configuring different pieces of required software such as JDBC drivers, Apache Web server, databases, etc. Appendix B provides a complete listing of code for the systems designed in Part IV.
I still remember those days in school when we spent endless hours writing a small program in C that would allow two computers to communicate. There is no doubt that C is an excellent and very flexible language. However, in today's world of breakneck speed, when everything needs to be developed by "next Tuesday," doing things in C alone can be a bit challenging. It's the day and age of specialized languages and technologies. In this book we discuss a number of languages specifically geared for Web development. And we discuss these within an even more focused environment--that of developing tools that can help in conducting commerce over the Internet.
The book not only introduces you to different languages that can be used for developing effective e-commerce applications, it also presents a large number of practical examples. In addition it deals with issues such as performance and security, which are of importance to any e-commerce site. The last section of the book presents a complete example: five systems that can be leveraged by any e-commerce site.
Rationale
There are a number of books on the market that talk about individual technologies for Web development. While these books excel in the topics they're dealing with, practical Web development requires the use of more than one language and technology. A book on databases would teach you SQL and everything related to databases. Another book would make you a master of Java. However, if you're asked to develop e-commerce systems for a company, you would need to know not only these two but a lot more, such as Javascript, JDBC, Servlets, Web servers, etc. More important, you would need to understand which language and technology are best suited for what and how they can be integrated.
This book is an attempt to fill that void. Different pieces required to solve the puzzle are presented in a logical and easy-to-follow manner. Every chapter builds on knowledge gained in previous chapters. Carefully crafted examples show you how to develop practical solutions using a combination of appropriate technologies. In short, the book was written to get you up to speed by next Tuesday, if not Monday!
Target Audience
The primary target audience for this book is technical people who want to learn how to develop applications for e-commerce. These include both technical developers who want to learn the technologies and technical managers who want to see how developers can apply them.
Even though the book uses e-commerce as a backdrop, it covers everything required for building any kind of Internet application. It is thus intended to be useful even for technical people interested in generic Web development.
Here are some categories of people who can benefit from this book:
Highlights of the Book
The book has a number of useful features:
Organization
The book comprises four parts, followed by two appendices:
Part I contains the introductory chapter, which outlines everything that follows. This chapter also shows you how you can get your computer on the Internet and establish a Web presence. Terms applicable to the Internet are described briefly.
Part II begins with a chapter on HTML. Other chapters in this section discuss Java, Servlets, Javascript, SQL, JDBC, and XML. Everything is taught by example. All chapters except the HTML chapter end with a section called Practical Examples where we present a number of programs that solve some complex, practical problems. By making use of knowledge from previous chapters, these examples also illustrate an integration of different languages.
Part III takes a look at some practical considerations for anyone planning on building Web systems and/or e-commerce systems. Chapter 8, "Credit Card Verification," discusses several ways in which you can start accepting credit cards over the Net. Chapter 9, "Security and Performance," talks about steps you can take to make your site faster and more secure.Part IV which completes the book, contains a complete e-commerce solution. It begins with Chapter 10, "System Design," which introduces five systems developed in the following chapters using technologies covered in Parts II and III. This chapter also presents the design of a database that is used by the e-commerce systems, which should work as a good tutorial for designing a normalized database. Chapter 11, "Functionality," talks about the user interface of the systems. Chapter 12, "Utilities," presents a number of utility classes that can be leveraged by any Web application. The remaining five chapters in Part IV discuss the actual implementation of the five systems.
Appendix A contains instructions for installing and configuring different pieces of required software such as JDBC drivers, Apache Web server, databases, etc. Appendix B provides a complete listing of code for the systems designed in Part IV.