?? getshoppingcartservlet.java
字號:
// Fig. 16.40 : GetShoppingCartServlet.java
// Retrieves shopping cart from database
package cartXML;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import java.sql.*;
public class GetShoppingCartServlet extends HttpServlet {
private Database database1;
private Database database2;
public void init( ServletConfig config )
throws ServletException
{
super.init( config );
database1 = new Database( "jdbc:odbc:cart", "anonymous",
"guest" );
database1.connect();
database2 = new Database( "jdbc:odbc:catalog", "anonymous",
"guest" );
database2.connect();
}
public void service( HttpServletRequest req,
HttpServletResponse res )
throws ServletException, IOException
{
HttpSession session = req.getSession( true );
ShoppingCart cart =
( ShoppingCart ) session.getAttribute( "cart" );
ServletContext sc = getServletConfig()
.getServletContext();
if ( cart.getUsername() == null ) {
sc.getRequestDispatcher( "/index.wml" )
.forward( req, res );
return;
}
ResultSet rs2 = null;
ResultSet rs1 = getSavedCart( cart.getUsername() );
try {
while ( rs1.next() ) {
String productID = rs1.getString( "productID" );
int quantity = rs1.getInt( "quantity" );
rs2 = getBookInfo( productID );
rs2.next();
double price = rs2.getDouble( "price" );
Book b = new Book( price, quantity, productID );
String[] description = { rs2.getString( "title" ),
rs2.getString( "Name" ), rs2.getString( "isbn" ) };
b.setDescription( description );
cart.add( b );
}
}
catch ( SQLException sqlex ) {
sqlex.printStackTrace();
}
session.setAttribute( "cart", cart );
sc.getRequestDispatcher( "/servlet/cartXML.ViewCartServlet" )
.forward( req, res );
}
public ResultSet getSavedCart( String username )
{
String query = "SELECT productID, quantity FROM Carts "
+ "WHERE username= '" + username + "'";
return database1.get( query );
}
public ResultSet getBookInfo( String s )
{
String query = "SELECT * FROM Products, Authors, "
+ "AuthorList WHERE Products.productID= " + s + " AND "
+ " Products.productID = Authorlist.productid AND "
+ "Authorlist.authorid = Authors.authorID";
return database2.get( query );
}
public void destroy()
{
database1.shutDown();
database2.shutDown();
}
}
/*
**************************************************************************
* (C) Copyright 2001 by Deitel & Associates, Inc. and Prentice Hall. *
* All Rights Reserved. *
* *
* DISCLAIMER: The authors and publisher of this book have used their *
* best efforts in preparing the book. These efforts include the *
* development, research, and testing of the theories and programs *
* to determine their effectiveness. The authors and publisher make *
* no warranty of any kind, expressed or implied, with regard to these *
* programs or to the documentation contained in these books. The authors *
* and publisher shall not be liable in any event for incidental or *
* consequential damages in connection with, or arising out of, the *
* furnishing, performance, or use of these programs. *
**************************************************************************
*/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -