基于javaweb+mysql的在线购书商城系统(java+jsp+mysql+servlert+ajax)
生活随笔
收集整理的這篇文章主要介紹了
基于javaweb+mysql的在线购书商城系统(java+jsp+mysql+servlert+ajax)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、項目簡述
功能:一個基于javaweb+mysql的網上書店的設計與實現,歸納 出了幾個模塊,首先是登錄注冊模塊,圖書查找模塊,購 物車模塊,訂單模塊,個人中心模塊,用戶管理模塊,圖 書管理模塊等。 該項目是javaJeb技術的實戰操作,采用了MVC設計模 式,包括基本的entity, jscript, servlet,以及ajax異步請 求,查詢分頁,持久化層方法的封裝等等,對javaweb技 術的鞏固很有幫助,為J2EE的學習打下基礎,適用于課程 設計,畢業設計。
二、項目運行
環境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。
項目技術: JSP + Entity+ Servlert + html+ css + JavaScript + JQuery + Ajax + Fileupload 等等。
適用
課程設計,大作業,畢業設計,項目練習,學習演示等
}}@GetMapping("/payPage/{orderId}")public String toPay(@PathVariable("orderId") String orderId, Model model) {BSResult bsResult = orderService.findOrderById(orderId);if (bsResult.getCode() == 200) {model.addAttribute("order", bsResult.getData());return "payment";}return "exception";}@RequestMapping("/deletion/{orderId}")public String deletion(@PathVariable("orderId") String orderId) {BSResult bsResult = orderService.deleteOrder(orderId);if (bsResult.getCode() == 200) {return "redirect:/order/list";}return "exception";}/*** 訂單列表** @return*/@GetMapping("/list")public String orderList(HttpServletRequest request) { return "payment";} else {request.setAttribute("exception", bsResult.getMessage());return "exception";}}//普通購物車Cart cart = (Cart) request.getSession().getAttribute("cart");if (cart != null) {BSResult bsResult = orderService.createOrder(cart, userDTO, express, payMethod);if (bsResult.getCode() == 200) {request.setAttribute("order", bsResult.getData());cartService.clearCart(request, "cart");return "payment";} else {request.setAttribute("exception", bsResult.getMessage());return "exception";} SecurityUtils.getSubject().logout();return "redirect:/page/login";}/*** 注冊 檢驗用戶名是否存在** @param username* @return*/@RequestMapping("/checkUserExist")@ResponseBodypublic BSResult checkUserExist(String username) {if (StringUtils.isEmpty(username)) {return BSResultUtil.build(200, USERNAME_CANNOT_NULL, false);}return userService.checkUserExistByUsername(username); }return "redirect:" + url;} catch (UnknownAccountException | IncorrectCredentialsException uae) {model.addAttribute("loginMsg", USERNAME_PASSWORD_NOT_MATCH);return "login";} catch (LockedAccountException lae) {model.addAttribute("loginMsg", "賬戶已被凍結!");return "login";} catch (AuthenticationException ae) {model.addAttribute("loginMsg", "登錄失敗!");return "login";}} else {//用戶已經登錄return "redirect:/index";}}@RequestMapping("/info")public String personInfo(){return "user_info";} * @param user* @return*/@RequestMapping("/register")public String register(User user, Model model) {BSResult isExist = checkUserExist(user.getUsername());//盡管前臺頁面已經用ajax判斷用戶名是否存在,// 為了防止用戶不是點擊前臺按鈕提交表單造成的錯誤,后臺也需要判斷if ((Boolean) isExist.getData()) {user.setActive("1");BSResult bsResult = userService.saveUser(user);//獲得未激活的用戶User userNotActive = (User) bsResult.getData();/* try {mailService.sendHtmlMail(user.getEmail(), "<dd書城>---用戶激活---","<html><body><a href='http://"+ip+"/user/active?activeCode=" + userNotActive.getCode() + "'>親愛的" + user.getUsername() +",請您點擊此鏈接前往激活</a></body></html>");} catch (Exception e) {e.printStackTrace();model.addAttribute("registerError", "發送郵件異常!請檢查您輸入的郵箱地址是否正確。");return "fail";}*/model.addAttribute("username", user.getUsername());return "register_success";} else {//用戶名已經存在,不能注冊 return "exception";}} } 書籍信息控制層: @Controller @RequestMapping("/book") public class BookInfoController {@Autowiredprivate IBookInfoService bookInfoService;@Autowiredprivate BookDescMapper bookDescMapper;/*** 查詢某一本書籍詳情* return "order_list";}/*** 創建訂單** @return*/@PostMapping("/creation")public String createOrder(User userDTO, String express, int payMethod, HttpServletRequest request) {//立即購買,優先創建訂單Cart buyNowCart = (Cart) request.getSession().getAttribute("buyNowCart");User loginUser = (User) request.getSession().getAttribute("loginUser");userDTO.setUserId(loginUser.getUserId());userDTO.setZipCode(loginUser.getZipCode());if (buyNowCart != null) {BSResult bsResult = orderService.createOrder(buyNowCart, userDTO, express, payMethod);if (bsResult.getCode() == 200) {request.setAttribute("order", bsResult.getData());cartService.clearCart(request, "buyNowCart");return "payment";} else {request.setAttribute("exception", bsResult.getMessage());return "exception";}}//普通購物車 public String register(User user, Model model) {BSResult isExist = checkUserExist(user.getUsername());//盡管前臺頁面已經用ajax判斷用戶名是否存在,// 為了防止用戶不是點擊前臺按鈕提交表單造成的錯誤,后臺也需要判斷if ((Boolean) isExist.getData()) {user.setActive("1");BSResult bsResult = userService.saveUser(user);//獲得未激活的用戶User userNotActive = (User) bsResult.getData();/* try {mailService.sendHtmlMail(user.getEmail(), "<dd書城>---用戶激活---","<html><body><a href='http://"+ip+"/user/active?activeCode=" + userNotActive.getCode() + "'>親愛的" + user.getUsername() +",請您點擊此鏈接前往激活</a></body></html>"); } catch (LockedAccountException lae) {model.addAttribute("loginMsg", "賬戶已被凍結!");return "login";} catch (AuthenticationException ae) {model.addAttribute("loginMsg", "登錄失敗!");return "login";}} else {//用戶已經登錄return "redirect:/index";}}@RequestMapping("/info")public String personInfo(){return "user_info";}/* @RequestMapping("/login1")public String login1(@RequestParam(value = "username", required = false) String username,@RequestParam(value = "password", required = false) String password,Model model, HttpServletRequest request) {if (StringUtils.isEmpty(username)) {model.addAttribute("loginMsg", USERNAME_CANNOT_NULL);return "login";}if (StringUtils.isEmpty(password)) {model.addAttribute("loginMsg", "密碼不能為空"); model.addAttribute("recommendBookList", recommendBookList);return "book_info";}/*** 通過關鍵字和書籍分類搜索書籍列表** @param keywords* @return*/@RequestMapping("/list")public String bookSearchList(@RequestParam(defaultValue = "", required = false) String keywords,@RequestParam(defaultValue = "0", required = false) int cateId,//分類Id,默認為0,即不按照分類Id查@RequestParam(defaultValue = "1", required = false) int page,@RequestParam(defaultValue = "6", required = false) int pageSize,Model model) {keywords = keywords.trim();PageInfo<BookInfo> bookPageInfo = bookInfoService.findBookListByCondition(keywords, cateId, page, pageSize,0);//storeId為0,不按照商店Id查詢model.addAttribute("bookPageInfo", bookPageInfo);model.addAttribute("keywords", keywords);model.addAttribute("cateId", cateId);return "book_list";} }總結
以上是生活随笔為你收集整理的基于javaweb+mysql的在线购书商城系统(java+jsp+mysql+servlert+ajax)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 实例12:python
- 下一篇: oracle新建用户sql局域,orac