package com.igeek.web;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.ResourceBundle;
import java.util.UUID;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.beanutils.BeanUtils;
import com.igeek.domain.Artister;
import com.igeek.domain.Cart;
import com.igeek.domain.CartItem;
import com.igeek.domain.Category;
import com.igeek.domain.OrderItem;
import com.igeek.domain.Orders;
import com.igeek.domain.PageBean;
import com.igeek.domain.Product;
import com.igeek.domain.User;
import com.igeek.service.ProductService;
import com.igeek.utils.PaymentUtil;
/**
* Servlet implementation class ProductServlet
*/
public class ProductServlet extends BaseServlet {
private static final long serialVersionUID = 1L;
public void clearCart(HttpServletRequest request, HttpServletResponse response) throws IOException {
request.getSession().removeAttribute("cart");
response.sendRedirect(request.getContextPath() + "/cart.jsp");
}
public void delCartItem(HttpServletRequest request, HttpServletResponse response) throws IOException {
String pid = request.getParameter("pid");
// 从session中获取购物车
Cart cart = (Cart) request.getSession().getAttribute("cart");
Map<String, CartItem> items = cart.getList();
// 处理商品总额
// 获取这种商品的小计
CartItem item = items.get(pid);
double subTotal = item.getSubTotal();
double nowTotal = cart.getTotal() - subTotal;
cart.setTotal(nowTotal);
items.remove(pid);
response.sendRedirect(request.getContextPath() + "/shopping.jsp");
}
public void addCart(HttpServletRequest request, HttpServletResponse response) throws IOException {
String pid = request.getParameter("pid");
String num = request.getParameter("num");
System.out.println(pid + "-->" + num);
// 新建一个存放一种商品的类 cartitem,把商品、数量、小计存进去
CartItem item = new CartItem();
ProductService service = new ProductService();
Product product = service.findProductById(pid);
// 小计
double subTotal = product.getShop_price() * Integer.parseInt(num);
item.setProduct(product);
item.setBuyNum(Integer.parseInt(num));
item.setSubTotal(subTotal);
// 从session中获取Cart对象,购物车
HttpSession session = request.getSession();
Cart cart = (Cart) session.getAttribute("cart");
if (cart == null) {
// 第一次请求时没有cart对象
cart = new Cart();
}
// 把这种商品放入map
// Map<String, CartItem> map = new HashMap<>();
Map<String, CartItem> map = cart.getList();
// 判读购物车中是否有相同的商品存在
if (map.containsKey(pid)) {
// 取出商品的数量+ 新添加商品的数量
int oldNum = map.get(pid).getBuyNum();
map.get(pid).setBuyNum(oldNum + item.getBuyNum());
// 小计需要从新计算
double oldSubTotal = map.get(pid).getSubTotal();
map.get(pid).setSubTotal(oldSubTotal + item.getSubTotal());
} else {
map.put(pid, item);
}
cart.setList(map);
// 总计 = 购物车中原有的总计+ 新添商品的小计
double total = cart.getTotal() + item.getSubTotal();
cart.setTotal(total);
// 把购物车放入session
session.setAttribute("cart", cart);
// 跳转到cart.jsp,显示购物车中信息 forward跳转会产生刷新后重复提交问题
// request.getRequestDispatcher("cart.jsp").forward(request, response);
// 使用重定向解决
response.sendRedirect(request.getContextPath() + "/shopping.jsp");
}
public void productInfo(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String pid = request.getParameter("pid");
System.out.println("pid:" + pid);
// 调用service
ProductService service = new ProductService();
Product product = service.findProductById(pid);
List<Product> new_products = service.findNewProducts();
List<Product> hot_products = service.findHotProducts();
System.out.println("new_products"+new_products);
// 返回结果
request.setAttribute("product", product);
request.setAttribute("new_products", new_products);
request.setAttribute("hot_products", hot_products);
request.getRequestDispatcher("pro_detail.jsp").forward(request, response);
}
public void productList(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获取分类的参数
String cid = request.getParameter("cid");
System.out.println(cid);
String page = request.getParameter("page");
int nowPage = 0;
if (page == null) {
nowPage = 1;
} else {
nowPage = Integer.parseInt(page);
}
ProductService service = new ProductService();
PageBean<Product> pageBean = service.findProductByCid(cid, nowPage);
// 获取分类信息
List<Category> categories = service.findAllCategorys();
// 需要把分类信息存在sesison域中
request.getSession().setAttribute("categories", categories);
request.setAttribute("pageBean", pageBean);
// 把分类id放入request域
request.setAttribute("cid", cid);
request.getRequestDispatcher("mall.jsp").forward(request, response);
}
public void index(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 1.调用service,获取热门商品和最新商品
ProductService service = new ProductService();
List<Product> hot_products = service.findHotProducts();
List<Product> new_products = service.findNewProducts();
// 获取分类信息
List<Category> categories = service.findAllCategorys();
List<Artister> artister = service.findArtister();
System.out.println(artister);
// 需要把分类信息存在sesison域中
request.getSession().setAttribute("categories", categories);
request.getSession().setAttribute("artister", artister);
for (Category cat : categories) {
System.out.println(cat);
}
// 2.返回结果
request.setAttribute("hot_products", hot_products);
/* request.setAttribute("new_products", new_products);*/
request.setAttribute("artister", artister);
request.getRequestDispatcher("index.jsp").forward(request, response);
}
public void special(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 1.调用service,获取热门商品和最新商品
ProductService service = new ProductService();
/*List<Product> hot_products = service.findHotProducts();
List<Product> new_products = service.findNewProducts();*/
// 获取分类信息
List<Category> categories = service.findAllCategorys();
// 需要把分类信息存在sesison域中
request.getSession().setAttribute("categories", categories);
// 2.返回结果
/*request.setAttribute("hot_products", hot_products);
request.setAttribute("new_products", new_products);*/
request.getRequestDispatcher("mall.jsp").forward(request, response);
}
public void updateorder(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.调用service
try {
String oid = request.getParameter("oid");
Orders orders = new Orders();
BeanUtils.populate(orders, request.getParameterMap());
String address = new String(orders.getAddress().getBytes("ISO-8859-1"), "UTF-8");
String name = new String(orders.getName().getBytes("ISO-8859-1"), "UTF-8");
orders.setOid(oid);
orders.setAddress(address);
orders.setName(name);
ProductService service = new ProductService();
boolean flag = service.UpdateProducts(orders);
System.out.println(orders);
System.out.println(flag);
// orderSubmit(request, response);
/*request.setAttribute("address", address);
request.setAttribute("name", name);
request.setAttribute("telephone", orders.getTelephone());*/
HttpSession session = request.getSession();
session.setAt
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
javaweb商城项目 (333个子文件)
ProductServlet.class 11KB
UserServlet.class 10KB
ProductDao.class 6KB
UserDao.class 5KB
PaymentUtil.class 4KB
Artister.class 3KB
ProductService.class 3KB
User.class 3KB
Orders.class 3KB
Product.class 3KB
CallbackServlet.class 3KB
UserService.class 3KB
torder.class 2KB
PageBean.class 2KB
BaseServlet.class 2KB
DataSourceUtils.class 2KB
MailUtils.class 2KB
OrderItem.class 2KB
MD5Utils.class 2KB
UserServlet$1.class 1KB
Cart.class 1KB
CartItem.class 982B
Category.class 980B
MailUtils$1.class 666B
.classpath 2KB
org.eclipse.wst.common.component 476B
org.eclipse.wst.jsdt.ui.superType.container 49B
page.css 39KB
common.css 37KB
base.css 20KB
iconfont.eot 12KB
QRCode.jar 1.05MB
c3p0-0.9.1.2.jar 596KB
commons-collections-3.2.1.jar 562KB
mysql-connector-java-5.0.4-bin.jar 484KB
mail.jar 483KB
standard.jar 384KB
xom-1.2.6.jar 303KB
commons-lang-2.6.jar 278KB
commons-beanutils-1.8.3.jar 227KB
json-lib-2.4-jdk15.jar 155KB
commons-io-1.4.jar 106KB
ezmorph-1.0.6.jar 84KB
commons-logging-1.1.1.jar 59KB
commons-fileupload-1.2.1.jar 56KB
commons-dbutils-1.4.jar 48KB
jstl.jar 20KB
ProductServlet.java 13KB
UserServlet.java 11KB
PaymentUtil.java 5KB
ProductDao.java 5KB
UserDao.java 5KB
Artister.java 3KB
CallbackServlet.java 3KB
ProductService.java 2KB
User.java 2KB
Product.java 2KB
Orders.java 2KB
MailUtils.java 2KB
UserService.java 2KB
DataSourceUtils.java 2KB
OrderItem.java 2KB
BaseServlet.java 2KB
torder.java 1KB
PageBean.java 1KB
MD5Utils.java 800B
CartItem.java 609B
Cart.java 544B
Category.java 522B
zuopin.jpg 2.83MB
4(6).jpg 1.84MB
4(13).jpg 1.57MB
signbg2222.jpg 981KB
2.2.jpg 787KB
2.3.jpg 659KB
2.7.jpg 627KB
2.6.jpg 594KB
5(2).jpg 578KB
signbg.jpg 517KB
signbg111.jpg 517KB
52F.jpg 509KB
cyfe.jpg 509KB
5(6).jpg 508KB
4(5).jpg 508KB
signbg222.jpg 460KB
4(7).jpg 410KB
3(3).jpg 404KB
2(5).jpg 402KB
3(1).jpg 395KB
3(10).jpg 384KB
signbgbak.jpg 338KB
3(9).jpg 284KB
banner1.jpg 282KB
5(3).jpg 279KB
14.jpg 271KB
3(2).jpg 254KB
111.jpg 247KB
4(2).jpg 242KB
3(14).jpg 240KB
2(6).jpg 236KB
共 333 条
- 1
- 2
- 3
- 4
资源评论
silenced_me
- 粉丝: 5
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功