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

📄 shoppingcar.java

📁 JSP制作的一个在线书店 拥有简单的功能 请看看吧 初学者
💻 JAVA
字号:
package bookadmin;import javax.servlet.*;import javax.servlet.http.*;import java.io.*;import java.util.*;import common.*;import common.MemberBean;import ConnBean.*;import bookadmin.loginServlet;import ConnBean.TradeInfoDB;import java.util.Calendar;/** * 此Servlet充当MVC中的Controller角色 */public class ShoppingCar extends HttpServlet {    private static final String CONTENT_TYPE = "text/html;charset = GB2312 ";    int hour;    //Initialize global variables    public void init() throws ServletException {    }    //Process the HTTP Get request    public void doGet(HttpServletRequest request,                      HttpServletResponse response) throws            ServletException, IOException {        response.setContentType(CONTENT_TYPE);        request.setCharacterEncoding("GB2312");        response.setCharacterEncoding("GB2312");        PrintWriter out = response.getWriter();        HttpSession session = request.getSession();        //若session为null时,程序将导向Error.html        if (session == null)            response.sendRedirect("Error.html");        Vector buylist = (Vector) session.getAttribute                         ("shoppingcart");        String action = request.getParameter("action");        if (!action.equals("CHECKOUT")) {            //删除购物车中的书籍            if (action.equals("DELETE")) {                String del = request.getParameter("del");                int d = Integer.parseInt(del);                buylist.removeElementAt(d);            }            //新增书籍至购物车            else if (action.equals("ADD")) {                boolean match = false;                //取得后来新增的书籍                BookInfoBean abook = this.getBook(request);                //新增第一本书至购物车时                if (buylist == null) {                    buylist = new Vector();                    buylist.addElement(abook);                    //System.out.println("abook--------------"+abook);                    //System.out.println("boylist------------"+buylist);                } else {                    for (int i = 0; i < buylist.size(); i++) {                        BookInfoBean book = (BookInfoBean)                                            buylist.elementAt(i);                        //假若新增的书籍和购物车的书籍一样时                        if (book.getBookName().equals                            (abook.getBookName())) {                            book.setBookCount                                    (book.getBookCount() +abook.getBookCount());                            buylist.setElementAt(book, i);                            match = true;                        }                    }                    if (!match)                        buylist.addElement(abook);                }            }            session.setAttribute("shoppingcart", buylist);            String url = "Car.jsp";            RequestDispatcher rd =                    request.getRequestDispatcher(url); //发报机转发请求纸购物页            rd.forward(request, response);        }        //结账,计算购物车书籍价钱总数        else if (action.equals("CHECKOUT")) {            float total = 0;            for (int i = 0; i < buylist.size(); i++) {                BookInfoBean order = (BookInfoBean)                                     buylist.elementAt(i);                float price = order.getPrice();                int quantity = order.getBookCount();                total += (price * quantity);            }            String amount = total + "";            tradeBean objTdb = new tradeBean();            objTdb.setCountMoney(Float.parseFloat(amount));            request.setAttribute("amount", amount); //总计金额            //System.out.println("总计:"+amount);           // Vector BookCount = new Vector();            //保存书籍编号           // BookCount = (Vector) session.getAttribute("Count"); //保存订书数量            Calendar date = Calendar.getInstance();            if (date.get(Calendar.AM_PM) == date.get                (Calendar.AM)) {                hour = date.get(Calendar.HOUR) + 12;            }            String TradeNo = "" + date.get(Calendar.YEAR) +                             (date.get(Calendar.MONTH) + 1) +                             date.get(Calendar.DATE) + hour +                             date.get(Calendar.MINUTE) +                             date.get(Calendar.SECOND) +                             date.get(Calendar.MILLISECOND);            String MemberID = null;            if (session.getAttribute("MemberNo") != null ||                !session.getAttribute                ("MemberNo").equals("")) {                MemberID = session.getAttribute                           ("MemberNo").toString();                //System.out.println("upServlet---------"+MemberID);            }            //String Bookamount = null;            TradeDB objTDB = new TradeDB();            //tradeBean objTdb = new tradeBean();            objTdb.setTradeNO(TradeNo);            objTdb.setMemberUid(MemberID);            String tradeDate=date.get(Calendar.YEAR)+"-"+(date.get(Calendar.MONTH)+1)+"-"+date.get(Calendar.DATE);            objTdb.setTradeDate(tradeDate);            if (session.getAttribute("finishLogin") == null ||                session.getAttribute("finishLogin").equals                ("")) {                out.println("对不起,您提交订单失败!");                out.println("您还没有登陆,请先登陆后再试 .....");                out.println("<a href='loginPage.jsp'>重新登陆! < / a > ");            } else if (session.getAttribute                       ("finishLogin").toString().equals(                               "true")) {                if (objTDB.InsertDB(objTdb)) {                    TradeInfoBean objTiB = null;                    TradeInfoDB objTidb = new TradeInfoDB();                    int i = 0;                    System.out.println(buylist.size());                    while (i < buylist.size()) {                        objTiB = new TradeInfoBean();                        objTiB.setTradeno(TradeNo);                        objTiB.setBookno(((BookInfoBean)                                          buylist.get(i)).                                         getBookNo());                        objTiB.setTradecount(((BookInfoBean)                                          buylist.get(i)).getBookCount());                        objTidb.InsertDB(objTiB);                        i++;                    }                } else {                    out.println("对不起,您提交订单失败! <br /> ");                    out.println("可能是您还没有登陆或系统繁忙,请重新登录后再试 <br /> ");                    out.println("<a href='loginPage.jsp'>重新登陆 ! </a> ");                }            }            session.setAttribute("TradeNo",TradeNo);            String url = "Checkout.jsp";            RequestDispatcher rd =                    request.getRequestDispatcher(url); //发报机转发请求至结账页            rd.forward(request, response);        }    }    /**     * 此方法实现把客户端提交的购物数据封装到JavaBean类Book中     * @param req HttpServletRequest     * @return Book     */    private BookInfoBean getBook(HttpServletRequest req) {        ConnBean db = new ConnBean();        HttpSession session = req.getSession();        String BookNo = req.getParameter("hBookNo");        String BookName = req.getParameter("hBookName");        String author = req.getParameter("hAuthor");        String BookType = req.getParameter("hBookType");        String Book_concern = req.getParameter                              ("hBook_concern");        String price = req.getParameter("hPrice");        String BookCount = req.getParameter("hBookCount");        String Image = req.getParameter("hImage");        BookInfoBean bk = new BookInfoBean();        bk.setBookNo(BookNo);        bk.setBookName(BookName);        bk.setAuthor(author);        bk.setBookType(Integer.parseInt(BookType));        bk.setPrice(Float.parseFloat(price));        bk.setBook_concern(Book_concern);        bk.setBookCount(Integer.parseInt(BookCount));        bk.setImage(Image);        return (bk);    }    //Process the HTTP Post request    public void doPost(HttpServletRequest request,                       HttpServletResponse response) throws            ServletException, IOException {        doGet(request, response);    }    //Clean up resources    public void destroy() {    }}

⌨️ 快捷键说明

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