项目介绍作者主页:夜未央5788
简介:Java领域优质创作者、Java项目、学习资料、技术互助
文末获取源码
该系统分为前后台,普通用户与管理员两种角色,前台普通用户登录,后台管理员登录;
用户角色包含以下功能:
提交订单,查看图书列表,查看图书详情,查看订单,查看购物车,用户登录等功能。
管理员角色包含以下功能:
一级分类管理,分类管理,发货,图书信息管理,添加图书,订单管理等功能。
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:否;
技术栈1.后端:servlet
2.前端:JSP+CSS+JavaScript+jQuery
使用说明1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中c3p0-config.xml配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入http://localhost:8080/goods/ 登录
注:Tomcat中配置项目路径必须为goods,否则会导致
管理员账号/密码:guanyu/123
用户账号/密码: zhangsan/123456
运行截图 前台界面
后台管理员界面
相关代码 图书servlet
public class BookServlet extends BaseServlet {
private BookService bookService = new BookService();
private int getPc(HttpServletRequest req) {
int pc = 1;
String param = req.getParameter("pc");
if(param != null && !param.trim().isEmpty()) {
try {
pc = Integer.parseInt(param);
} catch(RuntimeException e) {}
}
return pc;
}
private String getUrl(HttpServletRequest req) {
String url = req.getRequestURI() + "?" + req.getQueryString();
int index = url.lastIndexOf("&pc=");
if(index != -1) {
url = url.substring(0, index);
}
return url;
}
public String load(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String bid = req.getParameter("bid");//获取链接的参数bid
Book book = bookService.load(bid);//通过bid得到book对象
req.setAttribute("book", book);//保存到req中
return "f:/jsps/book/desc.jsp";//转发到desc.jsp
}
public String findByCategory(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
int pc = getPc(req);
String url = getUrl(req);
String cid = req.getParameter("cid");
PageBean pb = bookService.findByCategory(cid, pc);
pb.setUrl(url);
req.setAttribute("pb", pb);
return "f:/jsps/book/list.jsp";
}
public String findByAuthor(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
int pc = getPc(req);
String url = getUrl(req);
String author = req.getParameter("author");
PageBean pb = bookService.findByAuthor(author, pc);
pb.setUrl(url);
req.setAttribute("pb", pb);
return "f:/jsps/book/list.jsp";
}
购物车servlet
public class CartItemServlet extends BaseServlet {
private CartItemService cartItemService = new CartItemService();
public String loadCartItems(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String cartItemIds = req.getParameter("cartItemIds");
double total = Double.parseDouble(req.getParameter("total"));
List cartItemList = cartItemService.loadCartItems(cartItemIds);
req.setAttribute("cartItemList", cartItemList);
req.setAttribute("total", total);
req.setAttribute("cartItemIds", cartItemIds);
return "f:/jsps/cart/showitem.jsp";
}
public String updateQuantity(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String cartItemId = req.getParameter("cartItemId");
int quantity = Integer.parseInt(req.getParameter("quantity"));
CartItem cartItem = cartItemService.updateQuantity(cartItemId, quantity);
// 给客户端返回一个json对象
StringBuilder sb = new StringBuilder("{");
sb.append(""quantity"").append(":").append(cartItem.getQuantity());
sb.append(",");
sb.append(""subtotal"").append(":").append(cartItem.getSubtotal());
sb.append("}");
resp.getWriter().print(sb);
return null;
}
public String batchDelete(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String cartItemIds = req.getParameter("cartItemIds");
cartItemService.batchDelete(cartItemIds);
return myCart(req, resp);
}
public String add(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
Map map = req.getParameterMap();
CartItem cartItem = CommonUtils.toBean(map, CartItem.class);
Book book = CommonUtils.toBean(map, Book.class);
User user = (User)req.getSession().getAttribute("sessionUser");
cartItem.setBook(book);
cartItem.setUser(user);
cartItemService.add(cartItem);
return myCart(req, resp);
}
如果也想学习本系统,下面领取。回复:017JSP



