⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 auctionservlet.java

📁 jdbc书
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                }
                else {
                    addLine("Error inserting item", out);
		    return;
                }
                addLine("", out);
	    }
       } catch (Exception e) {
            addLine("AuctionServlet Insert Item error", out);
            System.out.println("AuctionServlet <insert>:"+e);
       }
       out.flush();
    }



    private void itemDetails(ServletOutputStream out, HttpServletRequest request) throws IOException{

        setTitle(out, "Item Details");
        String item=request.getParameter("item");
        int itemid=0;

        try {
            itemid=Integer.parseInt(item);
        }catch (NumberFormatException e) {
	    System.out.println("problem with item id "+itemid);
	    return;
        }

        try {
            AuctionItemHome home = (AuctionItemHome) ctx.lookup("auctionitems");
            AuctionItemPK pk=new AuctionItemPK();
            pk.id=itemid;

            AuctionItem ai=home.findByPrimaryKey(pk);
            displayPageItem(ai, out);
            addLine("<BR><HR><P>Do you want to bid on this item?", out);
            addLine("<FORM ACTION=\"/AuctionServlet\" METHOD=\"POST\">", out);
            addLine("<TR>Enter your user id:<INPUT TYPE=\"TEXT\" SIZE=20 NAME=\"buyer\"> ", out);
            addLine("and password:<INPUT TYPE=\"PASSWORD\" SIZE=20 NAME=\"password\"></TR>", out);
            addLine("<TR>Your bid amount:<INPUT TYPE=\"TEXT\" SIZE=20 NAME=\"amount\"></TR>", out);
            addLine("<INPUT TYPE=\"HIDDEN\" NAME=\"action\" VALUE=\"bid\">", out);
            addLine("<INPUT TYPE=\"HIDDEN\" NAME=\"item\" VALUE=\""+itemid+"\">", out);
            addLine("<INPUT TYPE=\"SUBMIT\" VALUE=\"Place Bid\" NAME=\"Bid\"></FORM>", out);

        } catch (Exception e) {
             addLine("AuctionServlet List Item error", out);
             System.out.println("AuctionServlet <details>:"+e);
        }
        out.flush();
    }

    private void itemBid(ServletOutputStream out, HttpServletRequest request) throws IOException{

        setTitle(out, "Item Bid");
        String item=request.getParameter("item");
        String buyer=request.getParameter("buyer");
        String password=request.getParameter("password");
        String bid=request.getParameter("amount");
        int itemid=0;
        double bidamount=0;

        try {
            itemid=Integer.parseInt(item);
        }catch (NumberFormatException e) {
            System.out.println("problem with item id " +itemid);
	    return;
        }

        try {
            bidamount=Double.valueOf(bid).doubleValue();
        }catch (NumberFormatException e) {
            System.out.println("problem with bid" +bid);
	    return;
        }

        try {
            BidderHome bhome = (BidderHome) ctx.lookup("bidder");
            Bidder bidbean=bhome.create();
            int result=bidbean.placeBid(itemid, buyer, password, bidamount);
            switch(result) {
	        case Auction.OUT_BID:
                         addLine("Your bid was not high enough", out);
                         break;
                case Auction.HIGH_BID:
                         addLine("You are the high bidder", out);
                         break;
                case Auction.AUCTION_OVER:
                         addLine("This auction has finished", out);
                         break;
                case Auction.INVALID_USER:
                         addLine("Invalid user or password", out);
                         break;
                default:  
                         addLine("Problem submitting bid", out);
             }

         } catch (Exception e) {
             addLine("AuctionServlet Bid error", out);
             System.out.println("AuctionServlet <bid>:"+e);
         }
        out.flush();
    }


    private void registerUser(ServletOutputStream out, HttpServletRequest request) throws IOException{

       setTitle(out, "Register User");
       String user=request.getParameter("user");
       String password=request.getParameter("password");
       String creditcard=request.getParameter("creditcard");
       String emailaddress=request.getParameter("emailaddress");
       try {
          RegistrationHome home = (RegistrationHome) ctx.lookup("registration");
          Registration reguser= home.create(user, password, 
                                             emailaddress, creditcard);
          if(reguser != null) {
              addLine("Created user: "+reguser.getUser(), out);
              addLine("", out);
           }
           else {
              addLine("Error creating user id, possibly already exists ", out);
           }
       } catch(Exception e) {
           addLine("AuctionServlet registration error", out);
           System.out.println("AuctionServlet <register>:"+e);
       }
       out.flush();
    }

    static private void displayitems(Enumeration e, 
                                ServletOutputStream out) throws Exception{
        
        addLine("<TABLE BORDER=1 CELLPADDING=1 CELLSPACING=0><TR><TH>Item</TH><TH>Summary</TH><TH>Current High bid</TH><TH>Number of bids</TH><TH>Closing Date</TH></TR>", out);
        while((e !=null) && (e.hasMoreElements())) {
            while(e.hasMoreElements()) {
                displayLineItem((AuctionItem) e.nextElement(), out);
            }
        }
	addLine("</TABLE>", out);
    }

    static private void displayLineItem(AuctionItem auctionItem, ServletOutputStream out)
                        throws RemoteException, IOException {

        StringBuffer line= new StringBuffer();
	int bidcount=auctionItem.getBidCount();

        int key=(int)auctionItem.getId();
        line.append("<TR><TD><A HREF=/AuctionServlet?action=details&item="+key+">"+key+"</A></TD>");
        line.append("<TD>"+auctionItem.getSummary() +"</TD>");
        if(bidcount >0) {
            line.append("<TD>"+NumberFormat.getCurrencyInstance().format(auctionItem.getHighBid()) +"</TD>");
        }
        else {
            line.append("<TD>-</TD>");
        }
            line.append("<TD>"+bidcount+"</TD>");
    
        line.append("<TD>"+auctionItem.getEndDate() +"</TD></TR>");
        addLine(line.toString(), out);
    }

    static private void displayPageItem(AuctionItem auctionItem, ServletOutputStream out)
                        throws RemoteException, IOException {

        int bidcount=auctionItem.getBidCount();
        addLine(auctionItem.getSummary(), out);
        addLine("Auction Item Number: "+auctionItem.getPrimaryKey(), out);
        if(bidcount >0) {
            addLine("<P>Current price: "+NumberFormat.getCurrencyInstance().format(auctionItem.getHighBid()), out);
            addLine("Minimum increment: "+NumberFormat.getCurrencyInstance().format(auctionItem.getIncrement()), out);
        }
        else {
            addLine("<P>Current price: "+NumberFormat.getCurrencyInstance().format(auctionItem.getStartPrice()), out);
        }
        addLine("# of bids: "+bidcount, out);
    
        addLine("<P>Auction Started: "+auctionItem.getStartDate(), out);
        addLine("Auction Ends: "+auctionItem.getEndDate(), out);
        addLine("<P>Seller: "+auctionItem.getSeller(), out);
        if(bidcount >0) {
            addLine("High Bidder: "+auctionItem.getHighBidder(), out);
        } else {
            addLine("High Bidder: "+"-", out);
        }
        addLine("<HR><P>", out);
        addLine("Description: "+auctionItem.getDescription(), out);
    }

    private String readFile (String file) throws IOException {
	if (file != null) {
            StringBuffer buffer = new StringBuffer();
            BufferedReader reader = new BufferedReader (new FileReader (file));
            String line;
            while ( (line=reader.readLine()) != null ) {
                buffer.append (line+'\n');
            }
            reader.close();
            return buffer.toString();
	}
	else {
	    return null;
	}
    }
    private void setTitle(ServletOutputStream out, String title) {
	try { 
            out.println("<HTML><HEAD><TITLE>"+title+"</TITLE></HEAD>");
	    out.println("<BODY BGCOLOR=\"WHITE\">");
        } catch(IOException e) {
            System.out.println("Unable to set title"+e);
        }
    }

    private void setFooter(ServletOutputStream out) {
        try {
            out.println("<HR><CENTER> <A HREF=\"registration.html\">Register</A>");
            out.println("<STRONG>|</STRONG>");
            out.println("<A HREF=\"/AuctionServlet?action=newlist\">New Items</A>");
            out.println("<STRONG>|</STRONG>");
            out.println("<A HREF=\"/AuctionServlet?action=close\">Closing Items</A>");
            out.println("<STRONG>|</STRONG>");
            out.println("<A HREF=\"/AuctionServlet?action=list\">All Items</A>");
            out.println("<STRONG>|</STRONG>");
            out.println("<A HREF=\"sell.html\">Sell Items</A>");
            out.println("</CENTER>");

        } catch (IOException e) {
            System.out.println("Unable to set footer"+e);
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -