package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.exception.ActiveUserException;
import cn.itcast.itcaststore.service.UserService;
@SuppressWarnings("serial")
public class ActiveUserServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.获取激活码
String activeCode = request.getParameter("activeCode");
// 2.调用service中激活用户操作
UserService service = new UserService();
try {
service.activeUser(activeCode);
response.sendRedirect(request.getContextPath() + "/client/activesuccess.jsp");
return;
} catch (ActiveUserException e) {
e.printStackTrace();
response.getWriter().write(e.getMessage());
return;
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
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 cn.itcast.itcaststore.domain.Product;
import cn.itcast.itcaststore.exception.FindProductByIdException;
import cn.itcast.itcaststore.service.ProductService;
public class AddCartServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
@SuppressWarnings("unchecked")
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.得到商品id
String id = request.getParameter("id");
// 2.调用service层方法,根据id查找商品
ProductService service = new ProductService();
try {
Product p = service.findProductById(id);
//3.将商品添加到购物车
//3.1获得session对象
HttpSession session = request.getSession();
//3.2从session中获取购物车对象
Map cart = (Map)session.getAttribute("cart");
//3.3如果购物车为null,说明没有商品存储在购物车中,创建出购物车
if (cart == null) {
cart = new HashMap();
}
//3.4向购物车中添加商品
Integer count = cart.put(p, 1);
//3.5如果商品数量不为空,则商品数量+1,否则添加新的商品信息
if (count != null) {
cart.put(p, count + 1);
}
session.setAttribute("cart", cart);
response.sendRedirect(request.getContextPath() + "/client/cart.jsp");
return;
} catch (FindProductByIdException e) {
e.printStackTrace();
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.util.ResourceBundle;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.service.OrderService;
import cn.itcast.itcaststore.utils.PaymentUtil;
public class CallBackServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获得回调所有数据
String p1_MerId = request.getParameter("p1_MerId");
String r0_Cmd = request.getParameter("r0_Cmd");
String r1_Code = request.getParameter("r1_Code");
String r2_TrxId = request.getParameter("r2_TrxId");
String r3_Amt = request.getParameter("r3_Amt");
String r4_Cur = request.getParameter("r4_Cur");
String r5_Pid = request.getParameter("r5_Pid");
String r6_Order = request.getParameter("r6_Order");
String r7_Uid = request.getParameter("r7_Uid");
String r8_MP = request.getParameter("r8_MP");
String r9_BType = request.getParameter("r9_BType");
String rb_BankId = request.getParameter("rb_BankId");
String ro_BankOrderId = request.getParameter("ro_BankOrderId");
String rp_PayDate = request.getParameter("rp_PayDate");
String rq_CardNo = request.getParameter("rq_CardNo");
String ru_Trxtime = request.getParameter("ru_Trxtime");
// 身份校验 --- 判断是不是支付公司通知你
String hmac = request.getParameter("hmac");
String keyValue = ResourceBundle.getBundle("merchantInfo").getString(
"keyValue");
// 自己对上面数据进行加密 --- 比较支付公司发过来hamc
boolean isValid = PaymentUtil.verifyCallback(hmac, p1_MerId, r0_Cmd,
r1_Code, r2_TrxId, r3_Amt, r4_Cur, r5_Pid, r6_Order, r7_Uid,
r8_MP, r9_BType, keyValue);
if (isValid) {
if ("1".equals(r9_BType) || "2".equals(r9_BType)) { // 判断正确支付.
// 响应数据有效--完成修改订单状态操作
response.getWriter().print("success");
OrderService service = new OrderService();
// 根据订单号修改订单状态
try {
service.updateState(r6_Order);
} catch (Exception e) {
e.printStackTrace();
response.getWriter().write("修改订单状态失败");
}
}
} else {
// 数据无效
response.getWriter().write("数据被篡改!");
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.util.Map;
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 cn.itcast.itcaststore.domain.Product;
/**
* 购物车内容变更
* @author admin
*
*/
public class ChangeCartServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.得到商品id
String id = request.getParameter("id");
// 2.得到要修改的数量
int count = Integer.parseInt(request.getParameter("count"));
// 3.从session中获取购物车.
HttpSession session = request.getSession();
Map cart = (Map) session.getAttribute("cart");
Product p = new Product();
p.setId(id);
if (count != 0) {
cart.put(p, count);
} else {
cart.remove(p);
}
response.sendRedirect(request.getContextPath() + "/client/cart.jsp");
return;
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.service.OrderService;
public class ChangeOrderStateServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获得订单号数据
String orderid = request.getParameter("orderid");
String paySuccess = "恭喜您支付成功!";
if (null != orderid) {
OrderService service = new OrderService();
// 根据订单号修改订单状态
try {
service.updateState(orderid);
request.setAttribute("paySuccess", paySuccess);
request.getRequestDispatcher("/findOrderByUser").forward(request, response);
} catch (Exception e) {
e.printStackTrace();
response.getWriter().write("修改订单状态失败");
}
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.Map;
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 org.apache.commons.beanutils.BeanUtils;
import cn.itcast.itcaststore.domain.Order;
import cn.itcast.itcaststore.domain.OrderItem;
import cn.itcast.itcaststore.domain.Product;
import cn.itcast.itcaststore.domain.User;
import cn.itcast.itcaststore.service.OrderService;
import cn.itcast.itcaststore.utils.IdUtils;
//生成订单
public class CreateOrderServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.得到当前用户
HttpSession session = request.getSession();
User user = (User) session.getAttribute("user");
// 2.从购物车中获取商品信息
Map cart = (Map)session.getAttribute("cart");
// 3.将数据封装到订单对象中
Order order = new Order();
try {
BeanUtils.populate(order, request.getParameterMap());
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
order.setId(IdUtils.getUUID());// 封装订单id
order.setUser(user);// 封装用户信息到订单.
for (Product p : cart.keySet()) {
OrderItem item = new OrderItem();
item.setOrder(order);
item.setBuynum(cart.get(p));
item.setP(p);
order.getOrderItems().add(item);
}
System.out.println(order);
// 4.调用service中添加订单操作.
OrderService service = new OrderService();
service.addOrder(order);
// request.getRequestDispatcher("/client/orderlist.jsp").forward(request, response);
response.sendRedirect(request.getContextPath() + "/client/createOrderSuccess.jsp");
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.service.OrderService;
/**
* 删除订单
* @author admin
*
*/
public class DelOrderByIdServlet extends HttpServlet {
private static final long serialVersionUID = -742965707205621644L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 订单id
String id = request.getParameter("id");
// 已支付的订单带有type值为client的参数
String type = request.getParameter("type");
OrderService service = new OrderService();
if (type != null && type.trim().length() > 0) {
service.delOrderById(id);
if ("admin".equals(type)) {
request.getRequestDispatcher("/findOrders").forward(request, response);
return;
}
} else {
// 调用service层方法删除相应订单
service.delOrderByIdWithClient(id);
}
//response.sendRedirect(request.getContextPath() + "/client/delOrderSuccess.jsp");
request.getRequestDispatcher("/findOrderByUser").forward(request, response);
return;
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.Order;
import cn.itcast.itcaststore.service.OrderService;
/**
* 通过id查询订单
* @author admin
*
*/
public class FindOrderByIdServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//1.获取用户类型
String type=request.getParameter("type");
//2.得到要查询的订单的id
String id = request.getParameter("id");
//3.根据id查找订单
OrderService service = new OrderService();
Order order = service.findOrderById(id);
//4.将查询出的订单信息添加到request作用域中
request.setAttribute("order", order);
//5.如果用户类型不为null,则请求转发到view.jsp页面,否则转发到orderInfo.jsp页面
if(type!=null){
request.getRequestDispatcher("/admin/orders/view.jsp").forward(request, response);
return;
}
request.getRequestDispatcher("/client/orderInfo.jsp").forward(request, response);
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.Order;
import cn.itcast.itcaststore.domain.User;
import cn.itcast.itcaststore.service.OrderService;
public class FindOrderByUserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获取名为“user”的session
User user = (User) request.getSession().getAttribute("user");
// 调用service中的方法,根据用户信息查找订单
OrderService service = new OrderService();
List orders = service.findOrderByUser(user);
request.setAttribute("orders", orders);
request.getRequestDispatcher("/client/orderlist.jsp").forward(request, response);
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.Product;
import cn.itcast.itcaststore.exception.FindProductByIdException;
import cn.itcast.itcaststore.service.ProductService;
/**
* 根据商品id查找指定商品信息的servlet
*/
public class FindProductByIdServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 得到商品的id
String id = request.getParameter("id");
// 获取type参数值,此处的type用于区别普通用户和超级用户
String type = request.getParameter("type");
ProductService service = new ProductService();
try {
// 调用service层方法,通过id查找商品
Product p = service.findProductById(id);
request.setAttribute("p", p);
// 普通用户默认不传递type值,会跳转到info.jsp页面
if (type == null) {
request.getRequestDispatcher("/client/info.jsp").forward(request,response);
return;
}
request.getRequestDispatcher("/admin/products/edit.jsp").forward(request, response);
return;
} catch (FindProductByIdException e) {
e.printStackTrace();
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.security.auth.login.LoginException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.User;
import cn.itcast.itcaststore.service.UserService;
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.获取登录页面输入的用户名与密码
String username = request.getParameter("username");
String password = request.getParameter("password");
// 2.调用service完成登录操作。
UserService service = new UserService();
try {
User user = service.login(username, password);
// 3.登录成功,将用户存储到session中.
request.getSession().setAttribute("user", user);
// 获取用户的角色,其中用户的角色分普通用户和超级用户两种
String role = user.getRole();
// 如果是超级用户,就进入到网上书城的后台管理系统;否则进入我的账户页面
if ("超级用户".equals(role)) {
response.sendRedirect(request.getContextPath() + "/admin/login/home.jsp");
return;
} else {
response.sendRedirect(request.getContextPath() + "/client/myAccount.jsp");
return;
}
} catch (LoginException e) {
// 如果出现问题,将错误信息存储到request范围,并跳转回登录页面显示错误信息
e.printStackTrace();
request.setAttribute("register_message", e.getMessage());
request.getRequestDispatcher("/client/login.jsp").forward(request, response);
return;
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LogoutServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获取session对象.
HttpSession session = request.getSession();
// 销毁session
session.invalidate();
// flag标识
String flag = request.getParameter("flag");
if (flag == null || flag.trim().isEmpty()) {
// 重定向到首页
response.sendRedirect(request.getContextPath() + "/index.jsp");
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.PageBean;
import cn.itcast.itcaststore.service.ProductService;
/**
* 前台页面,用于菜单栏下面搜索功能的servlet
*/
public class MenuSearchServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}
public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// 1.定义当前页码,默认为1
int currentPage = 1;
String _currentPage = req.getParameter("currentPage");
if (_currentPage != null) {
currentPage = Integer.parseInt(_currentPage);
}
// 2.定义每页显示条数,默认为4
int currentCount = 4;
//获取前台页面搜索框输入的值
String searchfield = req.getParameter("textfield");
//如果搜索框中没有输入值,则表单传递的为默认值,此时默认查询全部商品目录
if("请输入书名".equals(searchfield)){
req.getRequestDispatcher("/showProductByPage").forward(req, resp);
return;
}
//调用service层的方法,通过书名模糊查询,查找相应的图书
ProductService service = new ProductService();
PageBean bean = service.findBookByName(currentPage,currentCount,searchfield);
// 将数据存储到request范围,跳转到product_search_list.jsp页面展示
req.setAttribute("bean", bean);
req.getRequestDispatcher("/client/product_search_list.jsp").forward(req, resp);
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.User;
public class MyAccountServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
/**
* 点击前台系统中的【我的账户】,分以下两种情况:
* 1、用户未登录,进入登录页面
* 2、用户已登录
* a、超级用户,进入到后台系统
* b、普通用户,登录到我的账户
*/
//在session中查找名为“user”的会话
User user = (User) request.getSession().getAttribute("user");
//如果找到没有名为“user”的会话,说明用户没有登录,此时跳转到登录页面
if (user == null) {
response.sendRedirect(request.getContextPath() + "/client/login.jsp");
return;
}
//如果是超级用户,进入到网上书城后台管理系统;否则进入到普通用户的账户信息页面
if ("超级用户".equals(user.getRole())) {
response.sendRedirect(request.getContextPath() + "/admin/login/home.jsp");
// return;
}else{
response.sendRedirect(request.getContextPath() + "/client/myAccount.jsp");
// return;
}
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.util.ResourceBundle;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.utils.PaymentUtil;
public class OnLinePayServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.将要提交的数据得到
// 获得 支付必须基本数据
String orderid = request.getParameter("orderid");
String money = request.getParameter("money");
// 银行
String pd_FrpId = request.getParameter("yh");
// 发给支付公司需要哪些数据
String p0_Cmd = "Buy";
String p1_MerId = ResourceBundle.getBundle("merchantInfo").getString(
"p1_MerId");
String p2_Order = orderid;
String p3_Amt = money;
String p4_Cur = "CNY";
String p5_Pid = "";
String p6_Pcat = "";
String p7_Pdesc = "";
// 支付成功回调地址 ---- 第三方支付公司会访问、用户访问
// 第三方支付可以访问网址
String p8_Url = ResourceBundle.getBundle("merchantInfo").getString(
"responseURL");
String p9_SAF = "";
String pa_MP = "";
String pr_NeedResponse = "1";
// 加密hmac 需要密钥
String keyValue = ResourceBundle.getBundle("merchantInfo").getString(
"keyValue");
String hmac = PaymentUtil.buildHmac(p0_Cmd, p1_MerId, p2_Order, p3_Amt,
p4_Cur, p5_Pid, p6_Pcat, p7_Pdesc, p8_Url, p9_SAF, pa_MP,
pd_FrpId, pr_NeedResponse, keyValue);
// 2.将数据提交到指定的路径
// response.sendRedirect("https://www.yeepay.com/app-merchant-proxy/node?p0_Cmd="+p0_Cmd+"&p1_MerId="+p1_MerId);
request.setAttribute("pd_FrpId", pd_FrpId);
request.setAttribute("p0_Cmd", p0_Cmd);
request.setAttribute("p1_MerId", p1_MerId);
request.setAttribute("p2_Order", p2_Order);
request.setAttribute("p3_Amt", p3_Amt);
request.setAttribute("p4_Cur", p4_Cur);
request.setAttribute("p5_Pid", p5_Pid);
request.setAttribute("p6_Pcat", p6_Pcat);
request.setAttribute("p7_Pdesc", p7_Pdesc);
request.setAttribute("p8_Url", p8_Url);
request.setAttribute("p9_SAF", p9_SAF);
request.setAttribute("pa_MP", pa_MP);
request.setAttribute("pr_NeedResponse", pr_NeedResponse);
request.setAttribute("hmac", hmac);
request.getRequestDispatcher("/client/confirm.jsp").forward(request, response);
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* 付款(模拟支付)
*/
public class PayServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.将要提交的数据得到
// 获得 支付必须基本数据
String orderid = request.getParameter("orderid");
String money = request.getParameter("money");
// 银行
String bank = request.getParameter("yh");
request.setAttribute("bank", bank);
request.setAttribute("orderid", orderid);
request.setAttribute("money", money);
request.getRequestDispatcher("/client/confirm.jsp").forward(request, response);
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.BeanUtils;
import cn.itcast.itcaststore.domain.User;
import cn.itcast.itcaststore.exception.RegisterException;
import cn.itcast.itcaststore.service.UserService;
import cn.itcast.itcaststore.utils.ActiveCodeUtils;
public class RegisterServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 将表单提交的数据封装到javaBean
User user = new User();
try {
BeanUtils.populate(user, request.getParameterMap());
// 封裝激活码
user.setActiveCode(ActiveCodeUtils.createActiveCode());
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
// 调用service完成注册操作。
UserService service = new UserService();
try {
service.register(user);
} catch (RegisterException e) {
e.printStackTrace();
response.getWriter().write(e.getMessage());
return;
}
// 注册成功,跳转到registersuccess.jsp
response.sendRedirect(request.getContextPath() + "/client/registersuccess.jsp");
return;
}
}
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.Notice;
import cn.itcast.itcaststore.service.NoticeService;
import cn.itcast.itcaststore.service.ProductService;
/**
* 前台页面展示的servlet
* 1、展示最新添加或修改的一条公告
* 2、展示本周热销商品
*/
public class ShowIndexServlet extends HttpServlet{
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}
public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//查询最近一条公告,传递到index.jsp页面进行展示
NoticeService nService = new NoticeService();
Notice notice = nService.getRecentNotice();
req.setAttribute("n", notice);
//查询本周热销的两条商品,传递到index.jsp页面进行展示
ProductService pService = new ProductService();
List
package cn.itcast.itcaststore.web.servlet.client;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.itcast.itcaststore.domain.PageBean;
import cn.itcast.itcaststore.service.ProductService;
//分页显示数据
public class ShowProductByPageServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 1.定义当前页码,默认为1
int currentPage = 1;
String _currentPage = request.getParameter("currentPage");
if (_currentPage != null) {
currentPage = Integer.parseInt(_currentPage);
}
// 2.定义每页显示条数,默认为4
int currentCount = 4;
String _currentCount = request.getParameter("currentCount");
if (_currentCount != null) {
currentCount = Integer.parseInt(_currentCount);
}
// 3.获取查找的分类
String category = "全部商品";
String _category = request.getParameter("category");
System.out.println(_category);
if (_category != null) {
category = _category;
}
// 4.调用service,完成获取当前页分页Bean数据.
ProductService service = new ProductService();
PageBean bean = service.findProductByPage(currentPage, currentCount,
category);
// 将数据存储到request范围,跳转到product_list.jsp页面展示
request.setAttribute("bean", bean);
request.getRequestDispatcher("/client/product_list.jsp").forward(request, response);
return;
}
}