当前位置: 首页 > 编程日记 > 正文

Java项目:仿小米商城系统(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

源码获取:博客首页 "资源" 里下载!

一、项目简述

本系统功能包括: 基于vue + Springboot前后端分离项目精简版仿小米商城 系统,注册登录,首页展示,商品展示,商品购买,下单支 付(支付有点小问题仅支持单个商品支付)后台维护等 等。

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX ( Webstorm也 行)+ Eclispe ( IntelliJ IDEA,Eclispe,MyEclispe,Sts都支 持)。

项目技术: Springboot + Maven + Mybatis + Vue + Redis, B/S 模式+ Maven等等。

后台控制器品类管理:

@CrossOrigin
@RestController
@RequestMapping("category")
public class CategoryController {@Autowiredprivate CategServiceImp categServiceImp;@GetMapping("/getCategory")private CateResult getCategory(@RequestParam("pageIndex") int pageIndex,@RequestParam("pageSize") int pageSize) throws IOException {CateResult cateResult = categServiceImp.getCategory(pageIndex, pageSize);return cateResult;}@PostMapping("/updateCategory")private void updateCategory(@RequestBody Category category) throws IOException {categServiceImp.updCategory(category.getName(),category.getCategoryId());}
}

商品信息管理控制器:

@CrossOrigin
@RestController
@RequestMapping("Good")
public class GoodController {@Autowiredprivate GoodServiceImp goodServiceImp;@GetMapping("/getGood")private GoodResult getGood(@RequestParam("pageIndex") int pageIndex,@RequestParam("pageSize") int pageSize,@RequestParam("name") String goodname) throws IOException {GoodResult goodResult = goodServiceImp.getGood(pageIndex,pageSize,goodname);return goodResult;}@GetMapping("/getGoodById")private GoodResult getGoodById(@RequestParam("category") int pageIndex,@RequestParam("pageSize") int pageSize) throws IOException {GoodResult goodResult = goodServiceImp.getGoodById(pageIndex,pageSize);return goodResult;}@RequestMapping("/getGoodByName")private GoodResult getGoodByName(@RequestParam("name") String goodname) throws IOException {GoodResult goodResult = goodServiceImp.getGoodByName(goodname);return goodResult;}@RequestMapping("/updGood")private GoodResult getGoodByName(@RequestParam("good_id") int goodid,@RequestParam("name") String goodname,@RequestParam("newhot") int newhot) throws IOException {GoodResult goodResult = goodServiceImp.updGood(goodid,goodname,newhot);return goodResult;}@GetMapping("/getGoodPicById")private GoodPicResult getGoodPicById(@RequestParam("category") int pageIndex,@RequestParam("pageSize") int pageSize) throws IOException {GoodPicResult goodpicResult = goodServiceImp.getGoodPic(pageIndex,pageSize);return goodpicResult;}@RequestMapping("/getGoodPicByName")private GoodPicResult getGoodPicByName(@RequestParam("name") String goodname) throws IOException {
//        int categor = Integer.parseInt(category);GoodPicResult goodResult = goodServiceImp.getGoodPicByName(goodname);return goodResult;}@PostMapping("/pushGood")private GoodPushResult pushGood(@RequestBody good good) throws IOException {GoodPushResult goodPushResult = goodServiceImp.getGoodPush(good);return goodPushResult;}@PostMapping("/delGood")private void delGood(@RequestBody good good) throws IOException {goodServiceImp.delGood(good);}@PostMapping("/delMulGood")private void delMulGood(@RequestBody List<good> goods) throws IOException {goodServiceImp.delMulGood(goods);}@GetMapping("/getGoodPic")private GoodPicResult getGoodPic(@RequestParam("pageIndex") int pageIndex,@RequestParam("pageSize") int pageSize) throws IOException {GoodPicResult goodPicResult = goodServiceImp.getGoodPic(pageIndex,pageSize);return goodPicResult;}@PostMapping("/updGoodPic")private void upGoodPic(@RequestBody GoodPic goodPic) throws IOException {int goodid= goodPic.getGood_id();String icon= goodPic.getIcon();String imageHead = goodPic.getImageHead();String imageFoot = goodPic.getImageFoot();goodServiceImp.updGoodPic(goodid,icon,1);goodServiceImp.updGoodPic(goodid,imageHead,2);goodServiceImp.updGoodPic(goodid,imageFoot,3);}
}

后台用户控制器:

@CrossOrigin
@RestController
@RequestMapping("User")
public class UserController {@Autowiredprivate UserServiceImp userServiceImp;@RequestMapping("/getUsers")public UserResult getUsers() throws IOException {UserResult userResult = userServiceImp.getUsers();return userResult;}
}

后台用户登陆控制器:

@CrossOrigin
@RestController
@RequestMapping("Login")
public class LoginController {@Autowiredprivate 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;}
}

源码获取:博客首页 "资源" 里下载!

相关文章:

vb socket的使用

说明:原本在 csdn 博客 写博客的&#xff0c;因为使用的移动宽带&#xff0c;csdn的 博客无法访问&#xff0c;所以先暂时到博客园写博客了 有能解决移动宽带 有部分网站不能访问的问题&#xff0c;请联系我&#xff0c;QQ 809775607 /***************************/ 下面写wins…

不吹牛会死!国内音乐平台进入“大逃杀”

日前&#xff0c;一篇《看看海洋与腾讯音乐将如何“血洗”独立音乐应用》的文章引起了广泛关注。文中海洋声称长期独家签约的音乐及版权代理公司达40多家&#xff0c;占市场份额超过15%&#xff0c;一时间名不见经传的海洋音乐仿佛成了一匹跃然网上的“黑马”。然而据音乐圈深喉…

leetcode网学习笔记(1)

https://leetcode-cn.com/problems/reverse-linked-list/submissions/ 206 反转链表 错误原因&#xff1a;没有考虑到链表为空以及链表只有一个元素的情况 https://leetcode-cn.com/problems/swap-nodes-in-pairs/comments/ 24 两两交换链表 原方法&#xff1a;使用4个指针遍历…

贪心算法简单实践 -- 分糖果、钱币找零、最多区间覆盖、哈夫曼编解码

1. 贪心算法概览 贪心算法是一种算法思想。希望能够满足限制的情况下将期望值最大化。比如&#xff1a;Huffman编码&#xff0c;Dijkstra单源最短路径问题&#xff0c;Kruskal最小生成树 等问题都希望满足限制的情况下用最少的代价找到解决问题的办法。 这个办法就是贪心算法…

Java项目:个人博客系统(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

源码获取&#xff1a;博客首页 "资源" 里下载&#xff01; 一、项目简述 本系统功能包括&#xff1a;文章展示、热门文章、文章分类、标签云用户登录评论、匿名评论用户留言、匿名留言评论管理、文章发布、文章管理文章数据统计等等&#xff0e; 二、项目运行 环境…

第十九章——使用资源调控器管理资源(2)——使用T-SQL配置资源调控器

第十九章——使用资源调控器管理资源&#xff08;2&#xff09;——使用T-SQL配置资源调控器 原文:第十九章——使用资源调控器管理资源&#xff08;2&#xff09;——使用T-SQL配置资源调控器 前言&#xff1a;在前一章已经演示了如何使用SSMS来配置资源调控器。但是作为DBA&a…

Android_开源框架_Volley实例

2019独角兽企业重金招聘Python工程师标准>>> 1.自定义相关类在 Android_开源框架_Volley(Google IO 2013)源代码及内部实现过程分析一文中&#xff0c;简单概述了Volley框架内部实现过程。如想理解彻底应该熟悉 android多线程通信机制( Android_Thread多线程_Handle…

maven的配置-2019-4-13

一.Maven的优点 1. 依赖管理 jar 包管理 2.一键构建 &#xff08;编译-----测试------打包-----安装-----部署 &#xff09; 什么是项目构建&#xff1f; 指的是项目从编译-----测试------打包-----安装-----部署 整个过程都交给maven进行管理&#xff0c;这个过程称为构建 一…

WiredTiger引擎编译 及 LT_PREREQ(2.2.6)问题解决

近期需要为异构引擎做准备&#xff0c; wiredtiger 以其优异的性能(B-tree和LSM-tree都支持)和稳定性(Mongodb的默认存储引擎) 被我们备选为异构引擎里的一个子引擎&#xff0c;后续将深入wiredtiger 引擎原理。这里简单记录一下Wiredtiger 存储引擎的编译记录。 Environment …

Java项目:员工管理系统(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

源码获取&#xff1a;博客首页 "资源" 里下载&#xff01; 一、项目简述 本系统功能包括&#xff1a;分为前端翻后端部分&#xff0c;包括用户&#xff0c;区分晋通用户以及誉里员用户&#xff0c;包括首页展示&#xff0c;部门管理&#xff0c;人事管理&#xff0c…

缺陷重点内容分析

1.缺陷优先级 序号优先级描述1低暂时不影响继续测试&#xff0c;可以在方便时解决2中部分功能测试无法继续测试&#xff1b;需要优先解决3高测试暂停&#xff0c;无法进行&#xff0c;必须立即解决2.缺陷的状态&#xff08;图片来自云测视频&#xff09; 3.缺陷生命周期与管理流…

关于node.js的误会

昨天写了篇博客&#xff0c;介绍了一下我对node.js的第一次亲密接触后的感受&#xff0c;以为node.js很小众&#xff0c;出乎我意料很多人感兴趣&#xff0c;并且对博客中的细节问题做了评论&#xff0c;最多的是围绕node.js的异步与单线程展开的&#xff0c;当然还有很多关于n…

文本相关CSS

文本相关CSS 属性 word-breakoverflow-wrap(word-wrap)white-spacetext-overflowtext-wrap(目前主流浏览器都不支持)应用 一般断行需求实现文本不换行&#xff0c;以省略号表示超出的部分参考资料属性 word-break 作用&#xff1a;指定非CJK(中日韩)文本的断行规则。&#xff0…

Rocksdb 的优秀代码(三)-- 工业级 线程池实现分享

文章目录前言1. Rocksdb线程池概览2. Rocksdb 线程池实现2.1 基本数据结构2.2 线程池创建2.3 线程池 调度线程执行2.4 线程池销毁线程2.5 线程池优先级调度2.6 动态调整线程池 线程数目上限3. 总结前言 Rocksdb 作为一个第三方库的形态嵌入到各个存储系统之中存储元数据&#…

Java项目:网上电商项目(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

源码获取&#xff1a;博客首页 "资源" 里下载&#xff01; 一、项目简述 本系统功能包括&#xff1a; 一款基于SpringbootVue的电商项目&#xff0c;前后端分离项目&#xff0c;前台后台都有&#xff0c;前台商品展示购买&#xff0c;购物车分类&#xff0c;订 单查…

3月7日 ArrayList集合

ArrayList与数组的区别&#xff1a; 数组是连续的、同一类型数据的一块区域&#xff0c;而集合可以是不连续的、多种数据类型的。 1.ArrayList ArrayList al new ArrayList(); al.Add(3); al.Add(5.09); al.Add("gfdg"); al.Inse…

什么时候出生好?

从年龄来说&#xff0c;女人头一胎的怀孕时间最好在35岁以前&#xff0c;因为过了35岁后不孕和头胎生育缺陷的比例会大幅度升高。那么&#xff0c;从孩子的角度&#xff0c;什么时候出生好&#xff1f;很多人不考虑这个问题&#xff0c;能不能怀上还难说那。迷信的人则追求出生…

数据库搜索与索引

索引是对数据库表中一列或多列的值进行排序的一种结构&#xff0c;使用索引可快速访问数据库表中的特定信息。如果想按特定职员的姓来查找他或她&#xff0c;则与在表中搜索所有的行相比&#xff0c;索引有助于更快地获取信息。 索引的一个主要目的就是加快检索表中数据&#x…

Clion 远程开发 配置

文章目录1. 增加远端服务工具2. 配置远端服务器3. 配置编译选项4. 设置远端开发路径Clion作为C/C语言友好的IDE&#xff0c;除了高效的代码索引 以及 基本的本地开发 能力之外还需要有远程开发能力&#xff0c;即我们工作中的代码处于远端linux服务器之上&#xff0c;通过在本地…

Java项目:朴素风个人博客系统(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

源码获取&#xff1a;博客首页 "资源" 里下载&#xff01; 一、项目简述 本系统功能包括&#xff1a; 基于vue Springboo痼J后端分离项目个人博客系统&#xff0c;注册 登录&#xff0c;首页展示&#xff0c;喜爰图书展示&#xff0c;后台图书维护&#xff0c;个人…

NodeJS+Mongodb+Express做CMS博客系统

楼主正在用业余时间开发中…… &#xff0c;目前的版本仅支持会员系统&#xff0c;尝鲜一下吧~ hi-blog 一个 nodejsexpressmongodb 的 cms 系统怎么启动 默认你已经安装了 mongodb &#xff1b;那么你得这样操作&#xff1a;安装项目 -> 初始化管理员 -> 运行项目 1、请…

Piranha实验总结

操作系统&#xff1a;rhel5.8分别在DirectorMaster和DirectorBackup上部署浮动资源(VIP IPVS策略)测试2个Director在DR模式下是否都可以正常工作。测试完成后都撤掉浮动资源。DirectorMaster[rootlocalhost ~]#yum install piranha[rootlocalhost ~]#piranha-passwdNew Passwor…

虚IP切换原理

高可用性HA&#xff08;High Availability&#xff09;指的是通过尽量缩短因日常维护操作&#xff08;计划&#xff09;和突发的系统崩溃&#xff08;非计划&#xff09;所导致的停机时间&#xff0c;以提高系统和应用的可用性。HA系统是目前企业防止核心计算机系统因故障停机的…

vim 键盘宏操作 -- 大道至简

最近利用vim做一些文本处理时 发现vim 支持的键盘宏是一个好东西啊&#xff0c;高效优雅得处理大量需要重复性操作的文本&#xff0c;让人爱不释手&#xff01;&#xff01;&#xff01; 希望接下来对键盘宏的分享能够实际帮助到大家。 后文中描述的一些vim操作会汇集成指令字…

Java项目:家居购物商城系统(java+html+jdbc+mysql)

源码获取&#xff1a;博客首页 "资源" 里下载&#xff01; 一、项目简述 功能&#xff1a; Java Web精品项目源码&#xff0c;家居商城分类展示&#xff0c;商品展示&#xff0c; 商品下单&#xff0c;购物车&#xff0c;个人中心&#xff0c;后台管理&#xff0c;用…

leetcode:Search in Rotated Sorted Array

题目要求&#xff1a; Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2). You are given a target value to search. If found in the array return its index, otherwise return -1. You may a…

解决Debian-7.1下Chrome浏览器字体难看的问题

首先在 Advance Setting 的 font 标签页下做如下配置&#xff1a; 然后在用户目录下创建 .fonts.conf 文件&#xff0c;内容如下&#xff1a; <?xml version1.0?> <!DOCTYPE fontconfig SYSTEM fonts.dtd> <fontconfig><match target"font"&g…

HDU.4903.The only survival(组合 计数)

题目链接 惊了 \(Description\) 给定\(n,k,L\)&#xff0c;表示&#xff0c;有一张\(n\)个点的无向完全图&#xff0c;每条边的边权在\([1,L]\)之间。求有多少张无向完全图满足&#xff0c;\(1\)到\(n\)的最短路为\(k\)。\(n,k\leq 12,\ L\leq10^9\)。 \(Solution\) 考虑暴力&a…

Rocksdb 写入数据后 GetApproximateSizes 获取的大小竟然为0?

项目开发中需要从引擎 获取一定范围的数据大小&#xff0c;用作打点上报&#xff0c;测试过程中竟然发现写入了一部分数据之后通过GetApproximateSizes 获取写入的key的范围时取出来的数据大小竟然为0。。。难道发现了一个bug?&#xff08;欣喜&#xff09; 因为写入的数据是…

Java项目:在线婚纱摄影预定系统(java+javaweb+SSM+springboot+mysql)

源码获取&#xff1a;博客首页 "资源" 里下载&#xff01; 一、项目简述 功能&#xff1a; 前后用户的登录注册&#xff0c;婚纱照片分类&#xff0c;查看&#xff0c;摄影师预 订&#xff0c;后台订单管理&#xff0c;图片管理等等。 二、项目运行 环境配置&am…