文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Java怎么实现仿天猫网上商城

2023-06-25 15:08

关注

小编给大家分享一下Java怎么实现仿天猫网上商城,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

一、项目简述

功能:

前台:

* 用户模块

* 分类模块

* 商品模块

* 购物车模块

* 订单模块

后台:

* 管理员模块

* 分类管理模块

* 商品管理模块

* 订单模块

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: JSP + C3P0+ Servlert + html+ css + JavaScript + JQuery + Ajax + Fileupload等等。

Java怎么实现仿天猫网上商城

Java怎么实现仿天猫网上商城

Java怎么实现仿天猫网上商城

Java怎么实现仿天猫网上商城

Java怎么实现仿天猫网上商城

基础信息操作代码:

基础信息操作: public abstract class BaseBackServlet extends HttpServlet {         public abstract String add(HttpServletRequest request, HttpServletResponse response, Page page);        public abstract String delete(HttpServletRequest request, HttpServletResponse response, Page page);        public abstract String update(HttpServletRequest request, HttpServletResponse response, Page page);        public abstract String edit(HttpServletRequest request, HttpServletResponse response, Page page);        public abstract String list(HttpServletRequest request, HttpServletResponse response, Page page);     protected CategoryDAO categoryDAO = new CategoryDAO();    protected OrderDAO orderDAO = new OrderDAO();    protected OrderItemDAO orderItemDAO = new OrderItemDAO();    protected ProductDAO productDAO = new ProductDAO();    protected ProductImageDAO productImageDAO = new ProductImageDAO();    protected PropertyDAO propertyDAO = new PropertyDAO();    protected PropertyValueDAO propertyValueDAO = new PropertyValueDAO();    protected ReviewDAO reviewDAO = new ReviewDAO();    protected UserDAO userDAO = new UserDAO();     @Override    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {        try{                        int start = 0;            int count = 5;            try{                start = Integer.parseInt(req.getParameter("page.start"));                count = Integer.parseInt(req.getParameter("page.count"));            } catch(Exception e) {             }             Page page = new Page(start, count);                         String method = (String)req.getAttribute("method");            Method m = this.getClass().getMethod(method, HttpServletRequest.class, HttpServletResponse.class, Page.class);            String redirect = m.invoke(this, req, resp, page).toString();                         if(redirect.startsWith("@")){                resp.sendRedirect(redirect.substring(1));            } else if(redirect.startsWith("%")){                resp.getWriter().print(redirect.substring(1));            } else {                req.getRequestDispatcher(redirect).forward(req, resp);            }        } catch (NoSuchMethodException e) {            e.printStackTrace();        } catch (IllegalAccessException e) {            e.printStackTrace();        } catch (InvocationTargetException e) {            e.printStackTrace();        }    }     public InputStream parseUpload(HttpServletRequest request, Map<String, String> params){        InputStream is = null;        try{            DiskFileItemFactory factory = new DiskFileItemFactory();            ServletFileUpload upload = new ServletFileUpload(factory);            //设置上传的文件大小限制为10M            factory.setSizeThreshold(1024 * 1024);             List items = upload.parseRequest(request);            Iterator iter = items.iterator();             while(iter.hasNext()){                FileItem item = (FileItem) iter.next();                if(!item.isFormField()){                    //获取上传文件的输入流                    is = item.getInputStream();                } else {                    String paramName = item.getFieldName();                    String paramValue = item.getString();                    paramValue = new String(paramValue.getBytes("ISO-8859-1"), "UTF-8");                    params.put(paramName, paramValue);                }            }         } catch (FileUploadException e) {            e.printStackTrace();        } catch (UnsupportedEncodingException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }        return is;    } }

用户信息操作代码:

用户信息操作: public class UserServlet extends BaseBackServlet {     @Override    public String add(HttpServletRequest request, HttpServletResponse response, Page page) {        System.out.println("调用了 UserServlet add方法");        return null;    }     @Override    public String delete(HttpServletRequest request, HttpServletResponse response, Page page) {        System.out.println("调用了 UserServlet delete方法");         int id = Integer.parseInt(request.getParameter("id"));        userDAO.delete(id);        return "@admin_user_list";    }     @Override    public String update(HttpServletRequest request, HttpServletResponse response, Page page) {        System.out.println("调用了 UserServlet update方法");         Map<String, String> params = new HashMap<>();        InputStream is = super.parseUpload(request, params);        System.out.println(params);         int id = Integer.parseInt(params.get("id"));        String password = params.get("password");         User user = userDAO.get(id);        user.setPassword(password);         userDAO.update(user);         return "@admin_user_list";    }     @Override    public String edit(HttpServletRequest request, HttpServletResponse response, Page page) {        System.out.println("调用了 UserServlet edit方法");         int id = Integer.parseInt(request.getParameter("id"));        User u = userDAO.get(id);         request.setAttribute("u", u);         return "admin/editUser.jsp";    }     @Override    public String list(HttpServletRequest request, HttpServletResponse response, Page page) {        System.out.println("调用了 UserServlet list方法");         List<User> us = userDAO.list(page.getStart(), page.getCount());        int total = userDAO.getTotal();        page.setTotal(total);         request.setAttribute("us", us);        request.setAttribute("page", page);         return "admin/listUser.jsp";    }}

以上是“Java怎么实现仿天猫网上商城”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯