——————————DescriptionStart——————————
运行环境 Java≥8、MySQL≥5.7
开发工具 eclipse/idea/myeclipse/sts等均可配置运行
适用 课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明 前台:购书
后台:管理书、用户、订单发货等
前台
后台
技术框架 JavaWeb SpringBoot MyBatis Thymeleaf html layui JavaScript SpringMVC MySQL
基于javaweb的SpringBoot+MyBatis网上书店管理系统在线购书系统(前台、后台)(java+springboot+thymeleaf+html+mysql+maven)
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 @RestController @RequestMapping("/upload") public class ImageUploadController { @PostMapping("/book_image") public ResultVO uploadBookImage (MultipartFile bookImage, HttpServletRequest request) { String srcPath = "src/main/resources/stathttps://yms-1257401191.cos.ap-nanjing.myqcloud.com/book_images" ; String targetFileName = System.currentTimeMillis() + bookImage.getOriginalFilename().substring(bookImage.getOriginalFilename().lastIndexOf("." )); try { File srcFile = new File(new File(srcPath).getAbsolutePath(), targetFileName); bookImage.transferTo(srcFile); copyToTargetDir(srcFile, targetFileName); } catch (Exception e) { e.printStackTrace(); throw new CustomizeException(ResultCode.FAILED, "上传图片失败" ); } return new ResultVO(ResultCode.SUCCESS, targetFileName); } private void copyToTargetDir (File srcFile, String targetFileName) throws Exception { String targetPath = "target/classes/stathttps://yms-1257401191.cos.ap-nanjing.myqcloud.com/book_images" ; InputStream inBuff = new BufferedInputStream(new FileInputStream(srcFile)); OutputStream outBuff = new BufferedOutputStream(new FileOutputStream(new File(new File(targetPath).getAbsolutePath(), targetFileName))); byte [] b = new byte [1024 * 5 * 10 ]; int len; while ((len = inBuff.read(b)) != -1 ) { outBuff.write(b, 0 , len); } outBuff.flush(); inBuff.close(); outBuff.close(); } } package com.demo.controller;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 @PostMapping("/update") public ResultVO updateUser (@RequestBody @Valid User record) { int users =userService.updateByUserId(record); return new ResultVO(ResultCode.SUCCESS,null ); } @GetMapping("/search") public ResultVO searchUsers (User user, Integer page, Integer limit) { if (user.getUserName().isEmpty()) { user.setUserName(null ); } if (user.getEmail().isEmpty()) { user.setEmail(null ); } List<User> users = userService.searchUsers(user, page, limit); PageInfo pageInfo = new PageInfo(users); return new ResultVO(ResultCode.SUCCESS, (int ) pageInfo.getTotal(), users); } } package com.demo.controller;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 } package com.demo.controller;@RestController @RequestMapping("/upload") public class ImageUploadController { @PostMapping("/book_image") public ResultVO uploadBookImage (MultipartFile bookImage, HttpServletRequest request) { String srcPath = "src/main/resources/stathttps://yms-1257401191.cos.ap-nanjing.myqcloud.com/book_images" ; String targetFileName = System.currentTimeMillis() + bookImage.getOriginalFilename().substring(bookImage.getOriginalFilename().lastIndexOf("." )); try { File srcFile = new File(new File(srcPath).getAbsolutePath(), targetFileName); bookImage.transferTo(srcFile); copyToTargetDir(srcFile, targetFileName); } catch (Exception e) {
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 public class AdminInterceptor implements HandlerInterceptor { @Override public boolean preHandle (HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HttpSession session = request.getSession(); if (session.getAttribute("admin" )==null ) { throw new CustomizeException(ResultCode.USER_NOT_LOGGED_IN); } Admin admin = (Admin) session.getAttribute("admin" ); return true ; } } package com.demo.service;public interface LoginRegisterService { void userLogin (User record, HttpSession session) ;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 @GetMapping("/search") public ResultVO searchOrders (Order order, Integer page, Integer limit) { if (order.getConsigneeName().isEmpty()) { order.setConsigneeName(null ); } List<Order> orders = orderService.searchOrders(order, page, limit); PageInfo pageInfo = new PageInfo(orders); return new ResultVO(ResultCode.SUCCESS, (int ) pageInfo.getTotal(), orders); } } package com.demo.controller;@RestController @RequestMapping("/cart") public class ShoppingCartController { @Autowired private ShoppingCartService shoppingCartService; @GetMapping("/list") public ResultVO getCartByUserId (HttpSession session) { User user = (User) session.getAttribute("user" );
——————————PayStart——————————
项目链接: https://javayms.github.io?id=272022090304106aj https://javayms.pages.dev?id=272022090304106aj