bookstore

Project Url: donglight/bookstore
Introduction: springboot+mybatis+shiro 的电商书城系统
More: Author   ReportBugs   
Tags:

适用人群

  • 本系统适用于 JavaWeb 初学者。

    使用技术

  • 后台主要是 springboot+mybatis+shiro+jsp(jsp 已过时)...,前端界面主要使用 bootstrap 框架搭建,并使用了 ueditor 富文本编辑器、highcharts 图表库

    系统划分与功能

  • 该系统分为前台展示和后台管理两大模块。
  • 前台主要是为消费者服务。该子系统实现了注册,登录,以及从浏览、下单到支付的整个流程,支付使用的是支付宝的沙箱环境,属于模拟环境。需要注册沙箱账号才能付款(可用支付账号:ynkltg9762@sandbox.com,密码:111111)。
  • 后台主要是为商家服务,实现了权限,店铺,商品和订单等的管理,以及生成一些简单的报表信息。访问/admin进入后台

    依赖环境

  • jdk1.8,maven,mysql
  • 注意事项
    • 在数据库中创建名为bookstore数据库,然后运行项目的resource目录下的 sql 脚本,记得在application.properties改数据库配置信息
    • 登录系统的账号和密码,请自行查看数据库下的user表 (管理员账号:admin 密码:123)
    • application.properties中的邮箱配置要改成自己,否则不能注册系统账号
    • 使用沙箱环境的支付宝才能扫码支付,application.properties中的 my.ip 要改成自己,有项目名还要加项目名,否则支付成功回调出错

      运行项目

  • 方法一:在 ide(推荐 idea)运行项目,配置好启动环境,运行 main 方法, 要去掉继承的类 SpringBootServletInitializer 和方法
  • 方法二:在项目的根目录下执行 maven 命令
    mvn spring-boot:run
  • 方法三: 在 ide 或直接用 maven 打成的 war 包放到 tomcat 运行,此时如果访问需要加上项目名的话,支付宝回调地址需要加上项目名称
    mvn package -Dmaven.test.skip=true
  • 方法四: 使用命令运行 jar 或 war,因为也是一个传统 JavaWeb 项目,前后端不分离,打成 jar 会无法访问静态资源,所以只能打成 war,把 WEN-INF 下面的东西也打包好)
    java -jar xxx.war
  • 具体可以自行百度搜索Spring Boot项目的启动方式

    系统缺陷

  • 缺陷(注意,读者可以自行重构或完善):
    • 技术方面
      • 后台 API 并没有符合 restful 风格。
      • 代码不够规范,注释也少,有些代码会难以理解。
      • 使用 JSP 模板引擎开发前端,而不是前后端分离的架构。
      • 图片上传的路径是当前工程目录,会导致重启覆盖
      • 已经完成的功能中或多或少会存在 bug(没有很好的判断输入域的边界值)。
      • 技术架构比较简单,单体应用。
      • 前端界面较为简陋,许多地方的用户体验性也不好
      • 不同浏览器,可能会出现页面样式变形问题,bootstrap 响应式那边不会处理。
    • 业务方面
      • 购物车和订单不能分店铺统计和付款。
      • 书记详情和书籍评论没有实现。
      • 权限管理很简单,商家注册很简单。
      • 总的来说,功能较为简单,许多功能还没有完成(如物流,第三方登录等)
Apps
About Me
GitHub: Trinea
Facebook: Dev Tools