当前位置:   article > 正文

基于springboot+vue的商城系统(电商平台)(前后端分离)_电子商城 前端后端

电子商城 前端后端

博主主页猫头鹰源码

博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战

主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询

文末联系获取

项目介绍: 

本系统以商城为主题,采用前后端分离,项目代码工整,结构清晰,适合选题:各类商城系统、前后端分离类其他商城系统等。系统采用springboot+vue整合开发,前端主要使用了element-ui框架、项目后端主要使用了springboot,数据层采用mybatis。

项目功能:

系统包含技术:

后端:springboot,mybatis
前端:element-ui、js、css等
开发工具:idea/vscode
数据库:mysql 5.7
JDK版本:jdk1.8

部分截图说明:

下面是首页

登录页面

搜索商品

 商品详情,可以查看介绍,评论

 购物车

付款成功后进入我的订单

收藏夹展示我的收藏内容

个人中心

 后台首页

 后台管理员对用户管理

管理员对商品管理

管理员对轮播图管理

管理员对角色管理

部分代码截图:

拦截器

  1. @Override
  2. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
  3. String token = request.getHeader("token");
  4. if (StrUtil.isBlank(token)) {
  5. throw new CustomException("401", "未获取到token, 请重新登录");
  6. }
  7. String username;
  8. try {
  9. username = JWT.decode(token).getAudience().get(0);
  10. } catch (JWTDecodeException j) {
  11. throw new CustomException("401", "权限验证失败, 请重新登录");
  12. }
  13. User user = userService.getOne(Wrappers.<User>lambdaQuery().eq(User::getUsername, username));
  14. if (user == null) {
  15. throw new CustomException("401", "用户不存在, 请重新登录");
  16. }
  17. // 验证 token
  18. JWTVerifier jwtVerifier = JWT.require(Algorithm.HMAC256(user.getPassword())).build();
  19. try {
  20. jwtVerifier.verify(token);
  21. } catch (JWTVerificationException e) {
  22. throw new CustomException("401", "token不合法, 请重新登录");
  23. }
  24. return true;
  25. }

 跨域

  1. // 当前跨域请求最大有效时长。这里默认1
  2. private static final long MAX_AGE = 24 * 60 * 60;
  3. private CorsConfiguration buildConfig() {
  4. CorsConfiguration corsConfiguration = new CorsConfiguration();
  5. corsConfiguration.addAllowedOrigin("*"); // 1 设置访问源地址
  6. corsConfiguration.addAllowedHeader("*"); // 2 设置访问源请求头
  7. corsConfiguration.addAllowedMethod("*"); // 3 设置访问源请求方法
  8. corsConfiguration.setMaxAge(MAX_AGE);
  9. return corsConfiguration;
  10. }
  11. @Bean
  12. public CorsFilter corsFilter() {
  13. UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
  14. source.registerCorsConfiguration("/**", buildConfig()); // 4 对接口配置跨域设置
  15. return new CorsFilter(source);
  16. }

商品操作

  1. /**
  2. * 推荐商品
  3. * @return
  4. */
  5. @GetMapping("/recommend")
  6. public Result<?> recommend() {
  7. List<Goods> list = goodsService.recommend();
  8. return Result.success(list);
  9. }
  10. /**
  11. * 推热销商品
  12. * @return
  13. */
  14. @GetMapping("/sales")
  15. public Result<?> sales() {
  16. List<Goods> list = goodsService.sales();
  17. return Result.success(list);
  18. }
  19. /**
  20. * 根据分类id查询商品
  21. * @param id
  22. * @param pageNum
  23. * @param pageSize
  24. * @return
  25. */
  26. @GetMapping("/byCategory/{id}")
  27. public Result<?> findByCategory(@PathVariable Long id,
  28. @RequestParam(required = false, defaultValue = "1") Integer pageNum,
  29. @RequestParam(required = false, defaultValue = "10") Integer pageSize) {
  30. IPage<Goods> page = goodsService.pageByCategory(new Page<>(pageNum, pageSize), id);
  31. return Result.success(page);
  32. }

以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/143853
推荐阅读
相关标签
  

闽ICP备14008679号