Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000010037347 | CP 4153 | Computer File Accompanies Open Access Book | Compact Disc Accompanies Open Access Book | Searching... |
On Order
Summary
Summary
Developing e-Commerce Sites leads you step-by-step through the process of building a sophisticated e-commerce Web site. This book brings you up to speed on the latest technologies and shows you how to integrate them into a customized e-commerce site that serves your organizations specific needs. Details and instructions are reinforced by carefully crafted code examples that incorporate empowering technologies. The examples are included on the accompanying CD-ROM. In addition, the authors describe a complete e-commerce solution, illustrating system design, user interface, and utility classes. Developing e-Commerce Sites demonstrates actual implementation of the five requisite functions of an e-commerce site: inventory management, profiling, ordering, shipping, and reporting. You will find clear, practical information on such topics as: *Java language basics *Servlets and JavaScript *SQL and JDBC *XML and how it can be used in e-commerce *Credit card verification *Security *Inventory management *Customer profiling *Ordering, shipping, and reporting With this book as a guide, technical professionals and managers charged with deploying an e-commerce site will learn the important issues
Author Notes
Vivek Sharma is a software developer at Oracle Corporation with nearly seven years of software development and research experience. He writes for Web magazines such as Java Developers' Journal , and his major area of interest and expertise is Internet application research and development. Rajiv Sharma is the CEO of EDA, Inc., and also works as an independent consultant. He has more than ten years of experience, and is co-author of Java Programming by Example (SIGS publications/Cambridge University Press) with Vivek Sharma.
0201657643AB04062001
Excerpts
Excerpts
JG541 Introduction 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: Software professionals who want to design and develop e-commerce applications. Semitechnical managers and business school students who want to understand what e-commerce systems are, what technologies they require, and how they can be developed and deployed. Consultants, developers, and computer science students who just want to learn different Web technologies and understand how they can be integrated to build powerfult Internet applications. Highlights of the Book The book has a number of useful features: It brings readers up to speed on different technologies used for building powerful Web-based systems. It contains a large number of practical examples. It teaches gradually and progressively how to build a sophisticated e-commerce system. It provides Java, Javascript, JDBC, Servlet, and SQL code segments that can be used to save product development time. It gives the "inside" view of an e-commerce system so that users have a better understanding of the whole concept. It provides an introduction to XML and how it can be used in e-commerce. 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. Excerpted from Developing e-Commerce Sites: An Integrated Approach by Robert B. Ekelund, Rajiv Sharma, Vivek Sharma All rights reserved by the original copyright owners. Excerpts are provided for display purposes only and may not be reproduced, reprinted or distributed without the written permission of the publisher.Table of Contents
Introduction | p. xv |
Rationale | p. xv |
Target Audience | p. xvi |
Highlights of the Book | p. xvi |
Organization | p. xvii |
Acknowledgments | p. xvii |
Part I p. 1 | |
Chapter 1 The Basics of Internet Technology | p. 3 |
Skill Level Required | p. 4 |
Web Sites and Browsers | p. 4 |
Web Pages and HTML | p. 5 |
Web Servers and HTTP | p. 7 |
URLs | p. 7 |
FORMS and CGI | p. 8 |
Javascript | p. 10 |
Cookies | p. 12 |
Java and Servlets | p. 13 |
Databases | p. 14 |
JDBC | p. 14 |
XML | p. 15 |
e-Commerce Systems | p. 15 |
Inventory Management Systems | p. 15 |
Profile Management Systems | p. 16 |
Ordering Management Systems | p. 17 |
Shipping Management Systems | p. 19 |
Reporting Systems | p. 19 |
Getting on the Internet | p. 19 |
Using an ISP | p. 20 |
Using a Hosting Service | p. 20 |
Keeping the Computer with You | p. 21 |
A Note about Speed | p. 21 |
Disclaimer | p. 21 |
Part II p. 23 | |
Chapter 2 HTML | p. 25 |
Introduction | p. 25 |
First HTML File | p. 26 |
Some Formatting Tags | p. 27 |
Links | p. 29 |
Lists | p. 31 |
Tables | p. 32 |
Frames | p. 33 |
Forms | p. 37 |
Putting Comments in HTML | p. 41 |
Conclusion | p. 41 |
Chapter 3 Java | p. 43 |
Introduction | p. 43 |
Object Oriented Programming | p. 44 |
First Java Program | p. 45 |
Applets and Applications | p. 47 |
Instances | p. 48 |
Method Overloading | p. 50 |
Inheritance | p. 51 |
Interfaces | p. 54 |
Packages | p. 56 |
Exceptions | p. 58 |
File I/O | p. 60 |
Threads | p. 61 |
Some Useful Classes and Methods | p. 65 |
Vectors | p. 65 |
Hashtables | p. 67 |
Object Serialization | p. 68 |
Remote Method Invocation (RMI) | p. 71 |
Reading a URL | p. 77 |
Working with Proxies | p. 78 |
Internationalization | p. 78 |
Applets | p. 81 |
Threads in Applets | p. 84 |
Java Mail API | p. 88 |
Commenting Code in Java | p. 90 |
Some Useful Tools | p. 90 |
Some Practical Examples | p. 91 |
Example 1 Displaying Multiple Advertisements on Your Site | p. 91 |
Example 2 Keeping Track of Clicks on Advertisements | p. 96 |
Conclusion | p. 103 |
Some Handy Classes and Methods in Some Useful Packages | p. 103 |
Chapter 4 Servlets | p. 107 |
HTML FORMs | p. 107 |
POST and GET METHODs | p. 108 |
Anatomy of a Request and a Response | p. 109 |
CGI Scripts | p. 110 |
Drawbacks of CGI | p. 110 |
Efficiency with Servlets | p. 111 |
Anatomy of a Servlet | p. 112 |
JServ--Servlet Engine | p. 112 |
A Basic Servlet | p. 114 |
FORM Variables | p. 116 |
Cookies | p. 118 |
Sessions | p. 123 |
Some Practical Examples | p. 126 |
Example 1 Bulk Email Sender | p. 126 |
Example 2 Internationalized Help Screens for Your Worldwide Customers | p. 130 |
Example 3 Stocks Reader | p. 136 |
Example: Session-Based Shopping Cart | p. 141 |
Conclusion | p. 149 |
Some Useful Interfaces/Classes and Some of Their Methods | p. 149 |
Chapter 5 Javascript | p. 153 |
Introduction | p. 153 |
Documents | p. 154 |
documents.forms | p. 154 |
Statements | p. 154 |
Examples | p. 155 |
Functions | p. 155 |
Objects in Javascript | p. 156 |
Events and Event Handling | p. 158 |
Arrays | p. 159 |
FORMs | p. 160 |
Select Lists | p. 161 |
Buttons | p. 162 |
Submit and Radio Buttons | p. 162 |
Checkboxes | p. 164 |
Text Fields and Text Areas | p. 165 |
Frames | p. 165 |
Cookies | p. 167 |
A Practical Example | p. 170 |
Example: Personalized One-to-One Service to Customers | p. 170 |
Some Useful Methods, Properties, and Event Handlers of Some Useful Objects | p. 182 |
Reference | p. 184 |
Chapter 6 SQL and JDBC | p. 185 |
Databases and SQL | p. 186 |
Schemas | p. 186 |
Datatypes | p. 187 |
Table Creation | p. 187 |
Column Constraints | p. 188 |
Keys | p. 189 |
Indexes | p. 190 |
Dropping Tables | p. 190 |
Data Insertion and Modification | p. 190 |
Transactions | p. 192 |
Data Retrieval | p. 192 |
Operators | p. 193 |
Functions | p. 194 |
Retrieving Records from Multiple Tables | p. 194 |
Deleting Records | p. 195 |
Sequences | p. 195 |
Stored Procedures | p. 196 |
JDBC | p. 198 |
Connecting to the Database | p. 198 |
Drivers | p. 199 |
Connection Object | p. 199 |
Statement Object | p. 200 |
Retrieving Data | p. 200 |
Inserting/Modifying Data | p. 203 |
PreparedStatement | p. 203 |
Insert into a LONG Column | p. 206 |
CallableStatement | p. 208 |
Transactions in JDBC | p. 210 |
Some Practical Examples | p. 213 |
Example 1 A Customer Registration System | p. 213 |
Example 2 Bulk Email Sender--JDBC Version | p. 217 |
Some Useful Classes and Interfaces in the Java.sql Package | p. 222 |
Chapter 7 XML | p. 225 |
Introduction | p. 225 |
Some Rules to Follow | p. 227 |
Displaying an XML Document | p. 227 |
Data Interchange with an XML Document | p. 227 |
Document Type Definitions (DTDs) | p. 229 |
Parsers | p. 230 |
Using XML | p. 230 |
Client-Side Usage | p. 230 |
Server-Side Usage | p. 232 |
Some Practical Examples | p. 234 |
Example 1 Generating XML from the Database | p. 235 |
Example 2 Reading XML Data into the Database | p. 238 |
Example 3 XML-Based Stock Analyzer | p. 243 |
Conclusion | p. 247 |
References | p. 247 |
Part III p. 249 | |
Chapter 8 Credit Card Verification | p. 251 |
Card Authorization URLs | p. 252 |
Third-Party APIs | p. 255 |
Chapter 9 Security and Performance | p. 257 |
Security | p. 257 |
Firewalls | p. 258 |
Database Security | p. 258 |
Software Patches | p. 259 |
Data Transmission Security | p. 259 |
Public and Private Keys | p. 259 |
Certificates | p. 260 |
Ciphers | p. 260 |
Secure Sockets Layer | p. 260 |
Message Digests | p. 261 |
Password Security | p. 263 |
Some Hints on Making the Applications Secure | p. 263 |
Performance | p. 265 |
Finding and Fixing Bottlenecks | p. 266 |
Some Suggestions | p. 267 |
Part IV p. 269 | |
Chapter 10 System Design | p. 271 |
Introduction | p. 271 |
Inventory Management System | p. 271 |
Things to Think About | p. 275 |
Profile Management System | p. 276 |
Things to Think About | p. 278 |
Ordering Management System | p. 278 |
Things to Think About | p. 280 |
Other Systems | p. 281 |
Conclusion | p. 281 |
Chapter 11 Functionality | p. 283 |
Introduction | p. 283 |
Inventory Management System | p. 283 |
Menu | p. 284 |
Adding a Category | p. 284 |
Adding a Subcategory | p. 286 |
Deleting Categories | p. 287 |
Adding Products | p. 287 |
Modifying Products | p. 288 |
Viewing and Deleting Products | p. 290 |
Typical Usage Scenario | p. 290 |
Ordering System | p. 290 |
Sign-In Page | p. 291 |
Ordering Menu | p. 292 |
Adding Products to Checkout Cart | p. 293 |
Cart Contents | p. 294 |
Checkout | p. 294 |
Checkout for Existing Users | p. 295 |
Personal Cart Option | p. 295 |
Categories Option | p. 296 |
Order History Option | p. 296 |
Search Option | p. 297 |
Typical Usage Scenario | p. 299 |
Profile Management System | p. 299 |
Top Menu | p. 299 |
Registration | p. 300 |
Profile Update | p. 300 |
Contact Us Option | p. 301 |
Password Finder Option | p. 303 |
Shipping Management System | p. 304 |
Sign-In Page | p. 304 |
Reporting System | p. 306 |
Sign-In Page | p. 306 |
Reporting Menu | p. 306 |
User Distribution | p. 307 |
Sales Distribution | p. 307 |
User Frequency | p. 309 |
Sales Frequency | p. 310 |
Chapter 12 Utilities | p. 311 |
Introduction | p. 311 |
Description of the Utilities | p. 311 |
Connection-Pooling Utility | p. 312 |
Authenticator | p. 316 |
Email-Sending Utility | p. 318 |
HTML Template Utility | p. 319 |
Chapter 13 Inventory Management System | p. 323 |
Prerequisites | p. 323 |
High-Level Description | p. 323 |
Classes and Their Methods | p. 324 |
Detailed Description | p. 327 |
HTML Files in Document Root | p. 340 |
Other HTML Files and Templates | p. 342 |
Chapter 14 Profile Management System | p. 345 |
High-Level Description | p. 345 |
Classes and Their Methods | p. 345 |
Detailed Description | p. 348 |
Document Root HTML Files | p. 357 |
Other HTML Files and Templates | p. 359 |
Chapter 15 Ordering Management System | p. 361 |
High-Level Description | p. 361 |
Classes and Their Methods | p. 361 |
Detailed Description | p. 366 |
Document Root HTML Files | p. 378 |
Other HTML Files and Templates | p. 385 |
Part V p. 387 | |
Chapter 16 Shipping Management System | p. 389 |
High-Level Description | p. 389 |
Classes and Their Methods | p. 389 |
Detailed Description | p. 391 |
Document Root HTML Files | p. 395 |
Other HTML Files and Templates | p. 395 |
Chapter 17 Reporting System | p. 397 |
High-Level Description | p. 397 |
Classes and Their Methods | p. 397 |
Detailed Description | p. 400 |
Document Root HTML Files | p. 406 |
Other HTML Files and Templates | p. 406 |
Appendix A Installation and Configuration Instructions | p. 409 |
Apache | p. 409 |
Installation | p. 409 |
Troubleshooting | p. 410 |
Configuration | p. 411 |
JServ | p. 412 |
Installation | p. 412 |
Configuration | p. 414 |
Oracle | p. 416 |
Utilities | p. 416 |
mSQL | p. 417 |
Troubleshooting | p. 417 |
Utilities | p. 418 |
JDBC Drivers | p. 419 |
Troubleshooting | p. 419 |
JavaMail | p. 419 |
Appendix B Complete Code Listing | p. 421 |
Installation | p. 421 |
Inventory Management System | p. 427 |
Ordering Management System | p. 472 |
Profile Management System | p. 515 |
Shipping Management System | p. 557 |
Reporting System | p. 573 |
Utilities | p. 599 |
SQL For Creating Tables and Sequences | p. 604 |
Index | p. 607 |