📄 shopplingcart.java
字号:
package com.tsinghua.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.tsinghua.dao.BookDAO;
import com.tsinghua.dao.UserDAO;
import com.tsinghua.vo.Address;
import com.tsinghua.vo.CartItem;
import com.tsinghua.vo.Orders2;
import com.tsinghua.vo.user;
public class ShopplingCart extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("gb2312");
response.setContentType("text/html;charset=gb2312");
PrintWriter out = response.getWriter();
HttpSession session=request.getSession(true);
BookDAO dao=new BookDAO();
String action =request.getParameter("action");
int quantity=1;
//用户购买商品
if(action!=null&&"add".equals(action.trim())) {
String Bookid1 = request.getParameter("Bookid");
int Bookid=Integer.parseInt(Bookid1);
Address book = dao.queryid(Bookid);
//构造一个商品实例
CartItem ci = new CartItem();
ci.setBook(book);
ci.setQuantity(quantity);
Map map = null;
if(session.getAttribute("MYCART")==null) {
map = new HashMap();
map.put(Bookid1, ci);
session.setAttribute("MYCART", map);
} else {
//如果当前session中存在MYCART的对象,就将其取出
map = (Map)session.getAttribute("MYCART");
//然后还要判断是否已经存在了一本相同的书籍
CartItem cart = (CartItem)map.get(Bookid1);
//通过KEY去集合中查找相对应的商品对象(CartItem)如果不为空
//说明已经存在相同的书籍在购物车中,所有修改当前商品的数量即可。
if(cart!=null) {
cart.setQuantity(cart.getQuantity()+quantity);
map.put(Bookid1, cart);
} else {
map.put(Bookid1, ci);
}
session.setAttribute("MYCART", map);
}
RequestDispatcher rd = request.getRequestDispatcher("cart.jsp");
rd.forward(request, response);
}
//商品添加管理
if("addshop".equals(action)){
String Bookuid=request.getParameter("Bookuid");
String Booknumber=request.getParameter("Booknumber");
String Bookprice=request.getParameter("Bookprice");
String BookType=request.getParameter("Booktype");
String Bookname=request.getParameter("Bookname");
String Bookpic=request.getParameter("Bookpic");
String Bookpictrue=request.getParameter("Bookpicture");
Address a=new Address();
a.setBookname(Bookname);
a.setBooknumber(Booknumber);
a.setBookpic(Bookpic);
a.setBookpictrue(Bookpictrue);
a.setBookprice(Bookprice);
a.setBookType(BookType);
a.setBookuid(Bookuid);
int i=dao.getaddshop(a);
if(i==0){
out.println("<script>alert('添加失败!')</script>");
response.sendRedirect("./admini/firstpage.jsp");
} else{
out.println("<script>alert('添加成功!')</script>");
response.sendRedirect("./admini/accession.jsp");
}
}
//清空购物车
if("remove".equals(action)){
session.removeAttribute("MYCART");
response.setHeader("refresh","0.1;url=cart.jsp");
}
// 删除商品
if ("deleteshop".equals(action)) {
String strid = request.getParameter("bookid");
System.out.println(strid);
int id = Integer.parseInt(strid);
Address a=new Address();
a.setBookid(id);
int i = BookDAO.getdeleteshop(id);
if (i == 0) {
out.println("<scrpit>alert('对不起,无法删除数据')</script>");
} else {
out.println("<script>alert('此信息已被删除!')</script>");
response.setHeader("refresh","0.1;url=./admini/seeuser.jsp");
}
// 刷新页面
// out.println("<script>parent.frames['main'].location.reload()</script>");
}
//生成订单
//生成子订单
if("reckoning".equals(action)){
String shopusername=request.getParameter("username");
String shopmanaddress=request.getParameter("shopmanaddress");
String phone=request.getParameter("phone");
String fangshi=request.getParameter("fangshi");
Map map=(Map)session.getAttribute("MYCART");
String info="";
Set set=map.keySet();
for (Iterator iter = set.iterator(); iter.hasNext();) {
String isbn = (String) iter.next();
CartItem ci=(CartItem)map.get(isbn);
info
+=" 书籍的ISBN号为:" +ci.getBook().getBookuid()
+" 书籍名称为:"+ci.getBook().getBookname()
+" 书籍的数量为:"+ci.getQuantity()
+" 当前书籍的总价格为:"+ci.getQuantity()*Double.parseDouble(ci.getBook().getBookprice());
System.out.println(ci.getBook().getBookprice());
}
Orders2 order=new Orders2();
order.setShopusername(shopusername);
order.setShopphone(phone);
order.setShopaddress(shopmanaddress);
order.setShopfangshi(fangshi);
order.setUserinfo(info);
int i=dao.insertorders2(order);
if(i>0){
out.println("订单生成成功!自动跳转到起始页.....");
response.setHeader("refresh","1;url=firstpage.jsp");
session.removeAttribute("MYCART");
}
else{
out.println("<script>alert('订单生成失败!')</script>");
}
}
//删除订单
if ("deleteorder".equals(action)) {
String strid = request.getParameter("id");
int id = Integer.parseInt(strid);
System.out.println(id);
Orders2 or=new Orders2();
or.setId(id);
int i = BookDAO.deleteorder(id);
if (i == 0) {
out.println("<scrpit>alert('对不起,无法删除数据')</script>");
} else {
out.println("<script>alert('此信息已被删除!')</script>");
}
// 刷新页面
// out.println("<script>parent.frames['main'].location.reload()</script>");
response.setHeader("refresh","0.1;url=./admini/order.jsp");
}
if("mm".equals(action.trim())){
String user=(String)session.getAttribute("loginusername");
System.out.println(user);
if(user==null){
out.println("<script>alert('您还没登陆!')</script>");
response.setHeader("refresh","0.1;url=./erion.jsp");
}else{
response.sendRedirect("./dingdan.jsp");
}
}
//修改商品信息
if("updatashop".equals(action)){
String strid=request.getParameter("Bookid");
int id=Integer.parseInt(strid);
String Bookuid=request.getParameter("Bookuid");
String Booknumber=request.getParameter("Booknumber");
String Bookprice=request.getParameter("Bookprice");
String BookType=request.getParameter("Booktype");
String Bookname=request.getParameter("Bookname");
String Bookpic=request.getParameter("Bookpic");
String Bookpictrue=request.getParameter("Bookpicture");
Address aa=new Address();
BookDAO bookdao =new BookDAO();
aa.setBookid(id);
aa.setBookname(Bookname);
aa.setBooknumber(Booknumber);
aa.setBookpictrue(Bookpictrue);
aa.setBookprice(Bookprice);
aa.setBookType(BookType);
aa.setBookpic(Bookpic);
aa.setBookuid(Bookuid);
int i=bookdao.updateshop(aa);
if(i==0){
System.out.println("修改失败!");
}
else{
System.out.println("修改成功!");
}
response.setHeader("refresh","0.1;url=./admini/accession.jsp");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -