• SpringBoot购物推荐体育用品商城


    作者主页:夜未央5788

     简介:Java领域优质创作者、Java项目、学习资料、技术互助

    文末获取源码

    项目介绍

    本项目为前后台管理系统,包括管理员与普通用户两种角色;
    管理员角色包含以下功能:
    管理员登录,用户管理,商品类型管理,商品管理,订单信息管理,用户留言管理,资讯管理等功能。

    用户角色包含以下功能:
    用户首页,用户登录,商品推荐,资讯信息,留言板,查看商品,提交订单,查看订单信息,个人资料管理等功能。

    由于本程序规模不大,可供课程设计,毕业设计学习演示之用

    ps:推荐模块用了协同过滤推荐算法,下订单模块用的是百度地图api。本商城可以修改为任意商城不止是体育商城。

    环境需要

    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. 后端:SpringBoot

    2. 前端:HTML+JSP+CSS+JavaScript+jQuery

    使用说明

    1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
    2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
    若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
    3. 将项目中application.properties配置文件中的数据库配置改为自己的配置;
    4. 运行项目,在浏览器中输入http://localhost:18110/ 登录
    管理员账号/密码:admin/admin

    用户账号/密码: user/123456

    运行截图

    前台界面

     

     

     

     

     

     

    后台界面

     

     

     

     

     

     

    相关代码

    登录控制器

    1. @Controller
    2. public class LoginAction {
    3. @Autowired
    4. LoginManager loginManager;
    5. public LoginManager getLoginManager() {
    6. return loginManager;
    7. }
    8. public void setLoginManager(LoginManager loginManager) {
    9. this.loginManager = loginManager;
    10. }
    11. /**
    12. * @Title: InSystem
    13. * @Description: 用户登录
    14. * @return String
    15. */
    16. @RequestMapping(value="admin/LoginInSystem.action",method=RequestMethod.POST)
    17. public String InSystem(Manager params,
    18. ModelMap model,HttpServletRequest request,HttpServletResponse response,HttpSession httpSession){
    19. try {
    20. String random = (String)httpSession.getAttribute("random");
    21. if (!random.equals(params.getRandom())) {
    22. model.addAttribute("tip","验证码错误");
    23. model.addAttribute("params",params);
    24. return "login";
    25. }
    26. //用户登录查询
    27. Manager admin = loginManager.getManager(params);
    28. if (admin!=null) {
    29. httpSession.setAttribute("admin", admin);
    30. }else {
    31. model.addAttribute("tip","用户名或密码错误");
    32. model.addAttribute("params",params);
    33. return "login";
    34. }
    35. } catch (Exception e) {
    36. e.printStackTrace();
    37. model.addAttribute("tip","登录异常,请稍后重试");
    38. model.addAttribute("params",params);
    39. return "login";
    40. }
    41. return "redirect:index.jsp";
    42. }
    43. /**
    44. * @Title: OutSystem
    45. * @Description: 退出登录
    46. * @return String
    47. */
    48. @RequestMapping(value="admin/LoginOutSystem.action",method=RequestMethod.GET)
    49. public String OutSystem(HttpSession httpSession){
    50. try {
    51. //用户查询
    52. Manager manager = (Manager)httpSession.getAttribute("admin");
    53. if (manager!=null) {
    54. //退出登录
    55. httpSession.removeAttribute("admin");
    56. httpSession.invalidate();
    57. }
    58. } catch (Exception e) {
    59. return "login";
    60. }
    61. return "login";
    62. }
    63. }

    首页控制器

    1. @Controller
    2. public class IndexAction{
    3. @Autowired
    4. IndexManager indexManager;
    5. @Autowired
    6. IGouWuCheDao gouWuCheDao;
    7. @Autowired
    8. IDingDanDao dingDanDao;
    9. @Autowired
    10. IOrdersDetailDao ordersDetailDao;
    11. @Autowired
    12. IPinglunDao pinglunDao;
    13. @Autowired
    14. IGoodsDao goodsDao;
    15. @Autowired
    16. ZixunMapper zixunMapper;
    17. public IndexManager getIndexManager() {
    18. return indexManager;
    19. }
    20. public void setIndexManager(IndexManager indexManager) {
    21. this.indexManager = indexManager;
    22. }
    23. String tip;
    24. /**
    25. * @Title: index
    26. * @Description: 首页
    27. * @return String
    28. * @throws Exception
    29. */
    30. @RequestMapping(value= { " ", "", "/" },method=RequestMethod.GET)
    31. public void admin(Manager paramsManager,
    32. ModelMap model,HttpServletRequest request,HttpServletResponse response,HttpSession httpSession) throws Exception{
    33. response.sendRedirect(request.getContextPath() + "index.jsp");
    34. }
    35. /**
    36. * @Title: index
    37. * @Description: 首页
    38. * @return String
    39. */
    40. @RequestMapping(value="page_index.action",method=RequestMethod.GET)
    41. public String index(ModelMap model){
    42. //查询热销商品信息
    43. Goods goods = new Goods();
    44. goods.setStart(0);
    45. goods.setLimit(8);
    46. List<Goods> goodss = indexManager.listGoodssTop(goods);
    47. model.addAttribute("goodss", goodss);
    48. //查询最新上架商品
    49. List<Goods> goodss2 = indexManager.listGoodss(goods, null);
    50. model.addAttribute("goodss2", goodss2);
    51. return "default";
    52. }
    53. /**
    54. * @Title: listGoodss
    55. * @Description: 查询商品
    56. * @return String
    57. */
    58. @RequestMapping(value="page_listGoodss.action")
    59. public String listGoodss(Goods paramsGoods,PaperUtil paperUtil,
    60. ModelMap model,HttpServletRequest request,HttpServletResponse response,HttpSession httpSession){
    61. try {
    62. if (paramsGoods==null) {
    63. paramsGoods = new Goods();
    64. }
    65. if (paperUtil==null) {
    66. paperUtil = new PaperUtil();
    67. }
    68. //设置分页信息
    69. paperUtil.setPagination(paramsGoods);
    70. //总的条数
    71. int[] sum={0};
    72. //查询商品列表
    73. List<Goods> goodss = indexManager.listGoodss(paramsGoods,sum);
    74. model.addAttribute("goodss", goodss);
    75. model.addAttribute("paramsGoods", paramsGoods);
    76. paperUtil.setTotalCount(sum[0]);
    77. //查询商品类型
    78. GoodsType goodsType = new GoodsType();
    79. goodsType.setStart(-1);
    80. List<GoodsType> goodsTypes = indexManager.listGoodsTypes(goodsType, null);
    81. if (goodsTypes==null) {
    82. goodsTypes = new ArrayList<GoodsType>();
    83. }
    84. model.addAttribute("goodsTypes", goodsTypes);
    85. } catch (Exception e) {
    86. e.printStackTrace();
    87. return "error";
    88. }
    89. return "goods";
    90. }

    如果也想学习本系统,下面领取。回复:072springboot   

  • 相关阅读:
    使用html和css实现个人简历表单的制作
    2022/07/22:服务504超时响应告警 - 线程池的秘密
    前后端分离项目使用宝塔部署
    <C++>【类与对象篇】(一)
    自主式模块化无人机设计
    神经网络和深度学习-加载数据集DataLoader
    查看apk是否签名成功
    Android 三种动画 (帧动画 、补间动画、属性动画)
    【老生谈算法】matlab实现遗传算法源码——遗传算法
    如何长时间坚持学习python?
  • 原文地址:https://blog.csdn.net/hanyunlong1989/article/details/125533911