Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之仿小米電子產(chǎn)品售賣商城系統(tǒng)的實(shí)現(xiàn)
項(xiàng)目描述:這是一個(gè)基于SpringBoot+Vue框架開發(fā)的仿小米電子產(chǎn)品售賣商城系統(tǒng)。首先,這是一個(gè)前后端分離的項(xiàng)目,代碼簡潔規(guī)范,注釋說明詳細(xì)。其次,這項(xiàng)目功能豐富,具有一個(gè)電子產(chǎn)品售賣商城系統(tǒng)該有的所有功能。
項(xiàng)目功能:此項(xiàng)目分為兩個(gè)角色:普通用戶和管理員。普通用戶有登錄注冊、瀏覽商品信息、添加購物車、結(jié)算訂單、查看個(gè)人信息、查看個(gè)人訂單詳情等等功能。管理員有管理所有商品信息、管理所有訂單信息、管理所有用戶信息、查看收益數(shù)據(jù)圖表等等功能。
應(yīng)用技術(shù):SpringBoot + VueCli + MySQL + MyBatis + Redis + ElementUI
運(yùn)行環(huán)境:IntelliJ IDEA2019.3.5+ MySQL5.7+ Redis5.0.5 + JDK1.8 + Maven3.6.3+ Node14.16.1
后臺管理員訂單管理:
@CrossOrigin @RestController @RequestMapping("orders") public class OrderController { @Autowired private OrderServiceImp orderServiceImp; @Autowired private RegLogServiceImp regLogServiceImp; @PostMapping("/createorder") public OrderResult createOrder(@RequestBody OrdCreaParm ordCreaParm) throws IOException { OrderResult orderResult = new OrderResult(); orderResult.setStatus(0); OrderList orderList = orderServiceImp.creatOrder(ordCreaParm); orderResult.setData(orderList); return orderResult; } @RequestMapping("/getorderlist") public UserOrdListResult getUserOrdList(String username) throws IOException { UserOrdListResult userOrdListResult = new UserOrdListResult(); User user = regLogServiceImp.getUserByUserName(username); String userid = user.getUserid(); List<UserOrdList> orderList = orderServiceImp.getOrderList(userid); for(UserOrdList userOrdList:orderList){ int orderNo = userOrdList.getOrderNo(); List<UserOrdItemList> orderListItems = orderServiceImp.getOrderListItems(orderNo); userOrdList.setItems(orderListItems); } userOrdListResult.setStatus(0); userOrdListResult.setTotal(orderList.size()); userOrdListResult.setList(orderList); return userOrdListResult; } //下單成功后調(diào)用下面兩個(gè)方法 @RequestMapping("/getorder") public OrdFinaResult getOrder(@RequestParam("id") int id) throws IOException{ OrdFinaResult orderResult = new OrdFinaResult(); orderResult.setStatus(0); OrdFina orderList = orderServiceImp.getOrderById(id); orderResult.setOrdFina(orderList); return orderResult; } @RequestMapping("/getorderdetail") public OrdFinaResult getOrderDetail(@RequestParam("username") String username) throws IOException{ User user = regLogServiceImp.getUserByUserName(username); String userid = user.getUserid(); List<orderItemVoList> orderItems = orderServiceImp.getOrderItems(userid); OrdFinaResult orderResult = new OrdFinaResult(); orderResult.setStatus(0); orderResult.setLists(orderItems); return orderResult; } }
后臺商品信息管理:
@CrossOrigin @RestController @RequestMapping("goods") public class GoodController { @Autowired private GoodServiceImp goodServiceImp; @RequestMapping("getGoodsAll") private GoodsAll getGoodByCategory() { GoodsAll goodsAll = new GoodsAll(); ArrayList<GoodAll> goodAlls = new ArrayList<>(); for (int i = 1; i <= 9; i++) { List<Good> good = goodServiceImp.getGood(i); GoodCategory goodCategory = goodServiceImp.getGoodCategory(i); GoodAll goodAll = new GoodAll(); goodAll.setName(goodCategory.getName()); goodAll.setFoods(good); goodAlls.add(goodAll); } goodsAll.setData(goodAlls); return goodsAll; } }
用戶信息控制層:
import java.io.IOException; @CrossOrigin @RestController @RequestMapping("User") public class UserController { @Autowired private UserServiceImp userServiceImp; @RequestMapping("/getUsers") public UserResult getUsers() throws IOException { UserResult userResult = userServiceImp.getUsers(); return userResult; } }
登錄控制層:
@CrossOrigin @RestController @RequestMapping("Login") public class LoginController { @Autowired private LoginServiceImp loginServiceImp; Map<String, String> keyMap = RSAUtils.createKeys(512); // String publicKey = keyMap.get("publicKey"); // String privateKey = keyMap.get("privateKey"); // private String publicKey = "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIS-9P6aiWK-mNIJxz0R_XXIbHM21pS_ZncpQcE8T5Mu6P6sJfoi5Cw6S4jcSqxNbRs5FSUc59GAkU1Ek9onrz8CAwEAAQ"; private String privateKey = "MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAhL70_pqJYr6Y0gnHPRH9dchsczbWlL9mdylBwTxPky7o_qwl-iLkLDpLiNxKrE1tGzkVJRzn0YCRTUST2ievPwIDAQABAkAviOHaOiRwQ6gdrnq2F7cXcknDiCOW6GMc0J1HQP2Nyn52HKtc9E9Ailm-eQesTw6P-qTsvHMyfuVYz8fLhfkhAiEAvhvoG2Dz6qSN6IHeuPboJP7YHK9zTt6M_NGCJKAenasCIQCywU7eStITcHFTRDjjShH0CfO-vR6q-zgWQPjtNI_YvQIgY8UNiODW4bu-ZdlSY8vghRnhnRxO7YNKhpwFKueFacUCIQCZ-P65ZVNs4ScMZTBnP48VWVk2S-rVto0KRi7lC6h4NQIgEa_GhBO6U2p6G5cGAR25ZiQVH9dFnrMVyPxY7P7-WsA"; @PostMapping("/login") public LoginResult Login(@RequestBody User adminUser) throws IOException, InvalidKeySpecException, NoSuchAlgorithmException { User user = loginServiceImp.getUserByUserName(adminUser.getUsername()); LoginResult result = new LoginResult(); LoginData loginData = new LoginData(); if (user == null) { result.setMsg("無此用戶,請重新輸入正確用戶名"); result.setStatus(2008); } else { if (RSAUtils.privateDecrypt(user.getPwd(), RSAUtils.getPrivateKey(privateKey)).equals(adminUser.getPwd())){ result.setStatus(0); String token = TokenUtil.token(user.getId().trim()); loginData.setToken(token); result.setMsg("登錄成功"); result.setStatus(1010); result.setData(loginData); }else{ result.setStatus(2007); result.setMsg("密碼錯(cuò)誤"); } } return result; } }
到此這篇關(guān)于Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之仿小米電子產(chǎn)品售賣商城系統(tǒng)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Java 仿小米商城系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之財(cái)務(wù)預(yù)算管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之在線高中考試系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之平行志愿管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之教室預(yù)訂管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之共享租車信息管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之寵物醫(yī)院與商城一體的系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之生活旅行分享平臺的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之圖片展覽館管理系統(tǒng)的實(shí)現(xiàn)
- Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之工作管理系統(tǒng)的實(shí)現(xiàn)
相關(guān)文章
java基礎(chǔ)-給出一個(gè)隨機(jī)字符串,判斷有多少字母?多少數(shù)字?
這篇文章主要介紹了java基礎(chǔ)-給出一個(gè)隨機(jī)字符串,判斷有多少字母?多少數(shù)字?文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04玩轉(zhuǎn)spring boot MVC應(yīng)用(2)
玩轉(zhuǎn)spring boot,如何快速搭建一個(gè)MCV程序?這篇文章為大家詳細(xì)主要介紹了一個(gè)MCV程序的快速搭建過程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01Java實(shí)現(xiàn)二分查找算法實(shí)例分析
這篇文章主要介紹了Java實(shí)現(xiàn)二分查找算法,實(shí)例分析了二分查找算法的原理與相關(guān)實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07springboot(thymeleaf)中th:field和th:value的區(qū)別及說明
這篇文章主要介紹了springboot(thymeleaf)中th:field和th:value的區(qū)別及說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10springboot配置templates直接訪問的實(shí)現(xiàn)
這篇文章主要介紹了springboot配置templates直接訪問的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12