最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java畢業(yè)設(shè)計實戰(zhàn)之仿小米電子產(chǎn)品售賣商城系統(tǒng)的實現(xiàn)

 更新時間:2022年01月26日 16:53:41   作者:OldWinePot  
這是一個使用了java+SpringBoot+Vue+MySQL+Redis+ElementUI開發(fā)的仿小米商城系統(tǒng),是一個畢業(yè)設(shè)計的實戰(zhàn)練習,具有小米商城該有的所有基礎(chǔ)功能,感興趣的朋友快來看看吧

項目描述:這是一個基于SpringBoot+Vue框架開發(fā)的仿小米電子產(chǎn)品售賣商城系統(tǒng)。首先,這是一個前后端分離的項目,代碼簡潔規(guī)范,注釋說明詳細。其次,這項目功能豐富,具有一個電子產(chǎn)品售賣商城系統(tǒng)該有的所有功能。

項目功能:此項目分為兩個角色:普通用戶和管理員。普通用戶有登錄注冊、瀏覽商品信息、添加購物車、結(jié)算訂單、查看個人信息、查看個人訂單詳情等等功能。管理員有管理所有商品信息、管理所有訂單信息、管理所有用戶信息、查看收益數(shù)據(jù)圖表等等功能。

應用技術(shù):SpringBoot + VueCli + MySQL + MyBatis + Redis + ElementUI

運行環(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)用下面兩個方法
    @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("密碼錯誤");
            }
        }
        return result;
    }
}

到此這篇關(guān)于Java畢業(yè)設(shè)計實戰(zhàn)之仿小米電子產(chǎn)品售賣商城系統(tǒng)的實現(xiàn)的文章就介紹到這了,更多相關(guān)Java 仿小米商城系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 完整B樹算法Java實現(xiàn)代碼

    完整B樹算法Java實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了完整的B樹算法Java實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 全面解析Java中的引用類型

    全面解析Java中的引用類型

    在Java中對象以引用來指向JVM的內(nèi)存區(qū)塊,這里我們總結(jié)了強引用、軟引用、弱引用和假象引用(幽靈引用),下面就具體來全面解析Java中的引用類型:
    2016-05-05
  • springboot-mybatis/JPA流式查詢的多種實現(xiàn)方式

    springboot-mybatis/JPA流式查詢的多種實現(xiàn)方式

    這篇文章主要介紹了springboot-mybatis/JPA流式查詢,本文給大家分享三種方式,每種方式結(jié)合示例代碼給大家講解的非常詳細,需要的朋友可以參考下
    2022-12-12
  • java基礎(chǔ)之NIO介紹及使用

    java基礎(chǔ)之NIO介紹及使用

    這篇文章主要介紹了java基礎(chǔ)之NIO介紹及使用,文中有非常詳細的代碼示例,對正在學習java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • mybatisPlus更新策略導致更新失敗問題

    mybatisPlus更新策略導致更新失敗問題

    這篇文章主要介紹了mybatisPlus更新策略導致更新失敗問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Kotlin基礎(chǔ)教程之dataclass,objectclass,use函數(shù),類擴展,socket

    Kotlin基礎(chǔ)教程之dataclass,objectclass,use函數(shù),類擴展,socket

    這篇文章主要介紹了Kotlin基礎(chǔ)教程之dataclass,objectclass,use函數(shù),類擴展,socket的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • Java編程枚舉類實戰(zhàn)代碼分享

    Java編程枚舉類實戰(zhàn)代碼分享

    這篇文章主要介紹了Java編程枚舉類實戰(zhàn)代碼分享,具有一定借鑒價值,需要的朋友可以了解下。
    2017-11-11
  • 基于@ComponentScan注解及其XML配置方式

    基于@ComponentScan注解及其XML配置方式

    這篇文章主要介紹了基于@ComponentScan注解及其XML配置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Java使用TCP協(xié)議發(fā)送和接收數(shù)據(jù)方式

    Java使用TCP協(xié)議發(fā)送和接收數(shù)據(jù)方式

    這篇文章詳細介紹了Java中使用TCP進行數(shù)據(jù)傳輸?shù)牟襟E,包括創(chuàng)建Socket對象、獲取輸入輸出流、讀寫數(shù)據(jù)以及釋放資源,通過兩個示例代碼TCPTest01.java和TCPTest02.java,展示了如何在客戶端和服務器端進行數(shù)據(jù)交換
    2024-12-12
  • 教你使用java實現(xiàn)去除各種空格

    教你使用java實現(xiàn)去除各種空格

    本文給大家匯總介紹了5種java中去除空格的方法,分別是String.trim()、str.replace(" ", "");、replaceAll(" +","");以及自定義的remove函數(shù),非常的簡單實用,需要的小伙伴可以參考下。
    2015-03-03

最新評論

新泰市| 奎屯市| 涡阳县| 邢台县| 深水埗区| 宣城市| 韶山市| 登封市| 治多县| 德阳市| 会宁县| 溧阳市| 仪征市| 民和| 勃利县| 兴宁市| 陵水| 连山| 平山县| 宣城市| 吕梁市| 图木舒克市| 治多县| 古蔺县| 富锦市| 梁河县| 安顺市| 九寨沟县| 贵港市| 德昌县| 夏邑县| 罗源县| 军事| 高雄县| 余干县| 无为县| 松溪县| 来安县| 邢台县| 崇仁县| 阿图什市|