基于javaweb的网上电商项目(前后端分离+java+vue+springboot+ssm+mysql+redis)

2023-11-14

基于javaweb的网上电商项目(前后端分离+java+vue+springboot+ssm+mysql+redis)

运行环境

Java≥8、MySQL≥5.7、Node.js≥10

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行

前端:WebStorm/VSCode/HBuilderX等均可

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

20220819215928

20220819215929

20220819215930

20220819215931

20220819215932

基于javaweb+mysql的网上电商项目(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

一、项目简述

本系统功能包括: 一款基于Springboot+Vue的电商项目,前后端分离项目,前台后台都有,前台商品展示购买,购物车分类,订 单查询等等,后台商品管理,订单管理,信息维护,用户管理等等。

二、项目运行

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

项目技术: Springboot + Maven + Mybatis + Vue + Redis, B/S 模式+ Maven等等,附带支付宝沙箱环境以及支付环节代码。

订单相关业务:

/**

  • @descriiption 订单相关业务

*/

@RestController

@CrossOrigin

public class OrderController {

final OrderService orderService;

final ProductService productService;

final LogisticsService logisticsService;

final RedisTemplate<String,String> redisTemplate;

public OrderController(RedisTemplate<String,String> redisTemplate,OrderService orderService,LogisticsService logisticsService,ProductService productService) {

this.orderService = orderService;

this.productService = productService;

this.logisticsService = logisticsService;

this.redisTemplate = redisTemplate;

@RequestMapping(value = “/order/findById”)

private CommonResult findOrderById(Integer orderId) {

Order order= orderService.selectById(orderId);

if(orderId!=null){

return CommonResult.success(“订单信息查询成功”,order);

}else{

return CommonResult.error(“订单信息查询失败”);

@RequestMapping(value = “/order/findOrderInfo”)

private CommonResult findOrderInfo(String userAccount) {

List<Map<String, Object>> orderMap = orderService.selectAllOrder(userAccount);

if(orderMap!=null){

return CommonResult.success(“订单信息查询成功”,orderMap);

}else{

return CommonResult.error(“订单信息查询失败”);

@RequestMapping(value = “/order/findAll”)

private CommonResult findAllOrder() {

List orders = orderService.selectAll();

System.out.println(orders);

if(orders!=null){

return CommonResult.success(“订单信息查询成功”,orders);

}else{

return CommonResult.error(“订单信息查询失败”);

@RequestMapping(value = “/order/findCount”)

private CommonResult findCount() {

Integer count = orderService.selectCount();

if(count!=null){

return CommonResult.success(“订单数量查询成功”,count);

}else{

return CommonResult.error(“订单数量查询失败”);

@RequestMapping(value = “/order/add”)

private CommonResult addOrder(Order order) {

if(order!=null){

if(order.getProductNo().contains(“Vip”)){

if(orderService.insertData(order)){

return CommonResult.success(“创建订单成功”,order);

}else{

return CommonResult.error(“创建订单失败”);

}else{

Product product = productService.selectByKey(order.getProductNo());

Integer productStock = product.getProductStock();

Integer payAmount = order.getPayAmount();

boolean isOk =productStock >= payAmount;

if(isOk){

Product newProduct = new Product();

newProduct.setProductId(product.getProductId());

int newStock = productStock - payAmount;

newProduct.setProductStock(newStock);

newProduct.setIsStockOut(newStock<product.getLowestStock());

// 如果库存小于等于0,自动下架

newProduct.setIsSale(newStock>0);

if(productService.updateById(newProduct)){

if(orderService.insertData(order)){

redisTemplate.opsForValue().set(order.getOrderNo(),order.getOrderNo(),24, TimeUnit.HOURS);

return CommonResult.success(“创建订单成功”,order);

}else{

return CommonResult.error(“创建订单失败”);

}else{

return CommonResult.error(“创建订单失败”);

}else{

return CommonResult.error(“商品库存不足”);

}else{

return CommonResult.error(“订单数据不完整”);

@RequestMapping(value = “/order/cartOrder”)

private CommonResult cartOrder(String orderNo,String ordersInfo) {

JSONArray jsonArray = JSON.parseArray(ordersInfo);

List orders = JSONObject.parseArray(jsonArray.toJSONString(), Order.class);

if(orders!=null){

ArrayList orderInfo = new ArrayList<>();

ArrayList productInfo = new ArrayList<>();

for (Order order : orders) {

Product product = productService.selectByKey(order.getProductNo());

Integer productStock = product.getProductStock();

Integer payAmount = order.getPayAmount();

boolean isOk =productStock >= payAmount;

if(isOk){

Product newProduct = new Product();

newProduct.setProductId(product.getProductId());

int newStock = productStock - payAmount;

newProduct.setProductStock(newStock);

newProduct.setIsStockOut(newStock<product.getLowestStock());

// 如果库存小于等于0,自动下架

newProduct.setIsSale(newStock>0);

if(productService.updateById(newProduct)){

if(orderService.insertData(order)){

orderInfo.add(order.getOrderNo());

productInfo.add(order.getProductNo());

if(orderInfo.size()!=0){

String orderNoInfo = StringUtils.join(orderInfo, “,”);

String productNoInfo = StringUtils.join(productInfo, “,”);

redisTemplate.opsForValue().set(orderNo,orderNoInfo,24, TimeUnit.HOURS);

return CommonResult.success(“创建订单成功”,productNoInfo);

}else{

return CommonResult.success(“创建订单失败”);

}else{

return CommonResult.error(“订单数据不完整”);

@RequestMapping(value = “/order/update”)

private CommonResult updateOrder(Order order) {

if(orderService.updateById(order)){

return CommonResult.success(“修改订单成功”,order);

}else{

return CommonResult.error(“修改订单失败”);

@RequestMapping(value = “/order/delete”)

private CommonResult deleteOrder(Integer orderId) {

if(orderService.deleteById(orderId)){

return CommonResult.success(“删除订单成功”,“订单id:”+orderId);

}else{

return CommonResult.error(“删除订单失败”);

@RequestMapping(value = “/order/receipt”)

private CommonResult updateOrder(Integer orderId) {

Order order = new Order();

order.setOrderId(orderId);

order.setOrderState(“已收货”);

if(orderService.updateById(order)){

return CommonResult.success(“商品收货成功”,order);

}else{

return CommonResult.error(“商品收货失败”);

@RequestMapping(value = “/orderDetail/orderInfo”)

private CommonResult orderInfo(String orderNo) {

ArrayList resultList = new ArrayList<>();

Order order = orderService.selectByKey(orderNo);

Logistics logistics = logisticsService.selectOrderNo(orderNo);

if(order!=null){

resultList.add(order);

if(logistics!=null){

resultList.add(logistics);

if(resultList.size()!=0){

return CommonResult.success(“订单详情查询成功”,resultList);

}else{

return CommonResult.error(“订单详情查询失败”);

数据分析,商品数量,订单数量等分析业务:

/**

  • @descriiption 数据分析,商品数量,订单数量等分析业务

*/

@CrossOrigin

@RestController

public class OverViewController {

final OrderService orderService;

final ProductService productService;

final ReturnGoodsService returnGoodsService;

public OverViewController(OrderService orderService,ProductService productService,ReturnGoodsService returnGoodsService) {

this.orderService = orderService;

this.productService = productService;

this.returnGoodsService = returnGoodsService;

@RequestMapping(value = “/view/dataInfo”)

private CommonResult dataInfo() {

Map<String, Object> resultMap = new HashMap<>();

Map<String, Object> productMap = productService.productOverview();

Map<String, Object> orderMap = orderService.orderOverview();

Map<String, Object> returnGoodsMap = returnGoodsService.returnGoodsOverview();

if(productMap!=null){

resultMap.putAll(productMap);

if(orderMap!=null){

resultMap.putAll(orderMap);

if(returnGoodsMap!=null){

resultMap.putAll(returnGoodsMap);

if(resultMap.size()!=0){

return CommonResult.success(“查询成功”,resultMap);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/view/orderChartDATE”)

private CommonResult orderChartDATE(String startTime,String endTime) {

Map<String, Object> data = new HashMap<>();

List<Map<String, Object>> lineData = orderService.selectChartDATE(startTime,endTime);

List<Map<String, Object>> ringData = orderService.selectProductTypeChart(startTime, endTime);

Map<String, Object> countData = orderService.selectCountAndAmount(startTime,endTime);

if(lineData.size()!=0){

data.put(“lineData”,lineData);

if(ringData.size()!=0){

data.put(“ringData”,ringData);

if(countData.size()!=0){

data.put(“countData”,countData);

if(data.size()!=0){

return CommonResult.success(“查询成功”,data);

}else{

return CommonResult.error(“查询失败”);

商品相关业务:

/**

  • @descriiption 商品相关业务

*/

@RestController

@CrossOrigin

public class ProductController {

final ProductTypeService productTypeService;

final ProductBrandService productBrandService;

final ProductService productService;

public ProductController(ProductService productService, ProductTypeService productTypeService,ProductBrandService productBrandService) {

this.productTypeService = productTypeService;

this.productBrandService = productBrandService;

this.productService = productService;

/商品类别/

@RequestMapping(value = “/product/findById”)

private CommonResult findById(Integer productId) {

Product product = productService.selectById(productId);

if(product!=null){

return CommonResult.success(“商品查询成功”,product);

}else{

return CommonResult.error(“商品查询失败”);

@RequestMapping(value = “/product/findByKey”)

private CommonResult findByKey(String productNo) {

Product product = productService.selectByKey(productNo);

if(product!=null){

return CommonResult.success(“商品查询成功”,product);

}else{

return CommonResult.error(“商品查询失败”);

@RequestMapping(value = “/product/findIdByKey”)

private CommonResult findIdByKey(String productNo) {

Integer productId = productService.selectIdByKey(productNo);

if(productId!=null){

return CommonResult.success(“商品id查询成功”,productId);

}else{

return CommonResult.error(“商品id查询失败”);

@RequestMapping(value = “/product/findCount”)

private CommonResult findCount() {

Integer count = productService.selectCount();

if(count!=null){

return CommonResult.success(“商品数量查询成功”,count);

}else{

return CommonResult.error(“商品数量查询失败”);

@RequestMapping(value = “/product/existsKey”)

private CommonResult existsKey(String productNo) {

Boolean isExist = productService.existsWithPrimaryKey(productNo);

if(isExist!=null){

return CommonResult.success(“商品是否存在查询成功”,isExist);

}else{

return CommonResult.error(“商品是否存在查询失败”);

@RequestMapping(value = “/product/existsType”)

private CommonResult existsType(String productType) {

Boolean isExist = productService.existsProductType(productType);

if(isExist!=null){

return CommonResult.success(“查询成功”,isExist);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/product/existsBrand”)

private CommonResult existsBrand(String productBrand) {

Boolean isExist = productService.existsProductBrand(productBrand);

if(isExist!=null){

return CommonResult.success(“查询成功”,isExist);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/product/findAll”)

private CommonResult findAll() {

List products = productService.selectAll();

if(products!=null){

return CommonResult.success(“全部商品信息查询成功”,products);

}else{

return CommonResult.error(“全部商品信息查询失败”);

@RequestMapping(value = “/product/findAllSale”)

private CommonResult findAllSale() {

List products = productService.selectAllSale();

if(products!=null){

return CommonResult.success(“全部商品信息查询成功”,products);

}else{

return CommonResult.error(“全部商品信息查询失败”);

@RequestMapping(value = “/product/findAllLikeName”)

private CommonResult findAllLikeName(String keyWord) {

List products = productService.selectAllLikeName(keyWord);

if(products!=null){

return CommonResult.success(“全部商品信息查询成功”,products);

}else{

return CommonResult.error(“全部商品信息查询失败”);

@RequestMapping(value = “/product/findAllLikeType”)

private CommonResult findAllLikeType(String keyWord) {

List products = productService.selectAllLikeType(keyWord);

if(products!=null){

return CommonResult.success(“全部商品信息查询成功”,products);

}else{

return CommonResult.error(“全部商品信息查询失败”);

@RequestMapping(value = “/product/findAllLikeBrand”)

private CommonResult findAllLikeBrand(String keyWord) {

List products = productService.selectAllLikeBrand(keyWord);

if(products!=null){

return CommonResult.success(“全部商品信息查询成功”,products);

}else{

return CommonResult.error(“全部商品信息查询失败”);

@RequestMapping(value = “/product/findAllByType”)

private CommonResult findAllByType() {

List<Map<String, Object>> maps = productService.selectAllByType();

if(maps!=null){

return CommonResult.success(“商品分类信息查询成功”,maps);

}else{

return CommonResult.error(“商品分类信息查询失败”);

@RequestMapping(value = “/product/add”)

private CommonResult add(Product product) {

System.out.println(product);

if(productService.insertData(product)){

return CommonResult.success(“添加商品成功”,product);

}else{

return CommonResult.error(“添加商品失败”);

@RequestMapping(value = “/product/update”)

private CommonResult update(Product product) {

if(product.getIsNew()!=null && product.getIsNew()){

product.setSaleTime(new Date());

if(productService.updateById(product)){

return CommonResult.success(“修改商品成功”,product);

}else{

return CommonResult.error(“修改商品失败”);

@RequestMapping(value = “/product/delete”)

private CommonResult delete(Integer productId) {

if(productService.deleteById(productId)){

return CommonResult.success(“商品删除成功”,“productId:” + productId);

}else{

return CommonResult.error(“商品删除失败”);

/商品类别/

@RequestMapping(value = “/productType/add”)

private CommonResult addType(ProductType productType) {

if(productTypeService.insertData(productType)){

return CommonResult.success(“商品分类添加成功”,productType);

}else{

return CommonResult.error(“商品分类添加失败”);

@RequestMapping(value = “/productType/update”)

private CommonResult updateType(ProductType productType) {

if(productTypeService.updateById(productType)){

return CommonResult.success(“商品分类修改成功”,productType);

}else{

return CommonResult.error(“商品分类修改失败”);

@RequestMapping(value = “/productType/deleteById”)

private CommonResult deleteTypeById(Integer typeId) {

if(productTypeService.deleteById(typeId)){

return CommonResult.success(“商品分类删除成功”,"typeId: "+typeId);

}else{

return CommonResult.error(“商品分类删除失败”);

@RequestMapping(value = “/productType/deleteByName”)

private CommonResult deleteTypeByName(String typeName) {

if(productTypeService.deleteByName(typeName)){

return CommonResult.success(“商品分类删除成功”,"typeName: "+typeName);

}else{

return CommonResult.error(“商品分类删除失败”);

@RequestMapping(value = “/productType/existsTypeName”)

private CommonResult existsTypeName(Integer typeId,String typeName) {

Boolean isExist = productTypeService.existsWithTypeName(typeId,typeName);

if(isExist!=null){

return CommonResult.success(“查询成功”,isExist);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/productType/findAll”)

private CommonResult findAllType() {

List productTypes = productTypeService.selectAll();

if(productTypes!=null){

return CommonResult.success(“商品分类查询成功”,productTypes);

}else{

return CommonResult.error(“商品分类查询失败”);

@RequestMapping(value = “/productType/findAllName”)

private CommonResult findAllTypeName() {

List names = productTypeService.selectAllName();

if(names!=null){

return CommonResult.success(“商品分类名称查询成功”,names);

}else{

return CommonResult.error(“商品分类名称查询失败”);

/商品品牌/

@RequestMapping(value = “/productBrand/add”)

private CommonResult addBrand(ProductBrand productBrand) {

if(productBrandService.insertData(productBrand)){

return CommonResult.success(“商品品牌添加成功”,productBrand);

}else{

return CommonResult.error(“商品品牌添加失败”);

@RequestMapping(value = “/productBrand/update”)

private CommonResult updateBrand(ProductBrand productBrand) {

if(productBrandService.updateById(productBrand)){

return CommonResult.success(“商品品牌修改成功”,productBrand);

}else{

return CommonResult.error(“商品品牌修改失败”);

@RequestMapping(value = “/productBrand/deleteById”)

private CommonResult deleteBrandById(Integer brandId) {

if(productBrandService.deleteById(brandId)){

return CommonResult.success(“商品品牌删除成功”,"brandId: "+brandId);

}else{

return CommonResult.error(“商品品牌删除失败”);

@RequestMapping(value = “/productBrand/deleteByName”)

private CommonResult deleteBrandByName(String brandName) {

if(productBrandService.deleteByName(brandName)){

return CommonResult.success(“商品品牌删除成功”,"brandName: "+brandName);

}else{

return CommonResult.error(“商品品牌删除失败”);

@RequestMapping(value = “/productBrand/findAll”)

private CommonResult findAllBrand() {

List productBrands = productBrandService.selectAll();

if(productBrands!=null){

return CommonResult.success(“商品品牌查询成功”,productBrands);

}else{

return CommonResult.error(“商品品牌查询失败”);

@RequestMapping(value = “/productBrand/existsBrandName”)

private CommonResult existsBrandName(Integer brandId,String brandName) {

Boolean isExist = productBrandService.existsWithBrandName(brandId,brandName);

if(isExist!=null){

return CommonResult.success(“查询成功”,isExist);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/productBrand/findAllName”)

private CommonResult findAllBrandName() {

List names = productBrandService.selectAllName();

if(names!=null){

return CommonResult.success(“商品品牌名称查询成功”,names);

}else{

return CommonResult.error(“商品品牌名称查询失败”);

用户授权等相关业务:

/**

  • @descriiption 用户授权等相关业务

*/

@RestController

@CrossOrigin

public class RoleController {

final RoleService roleService;

public RoleController(RoleService roleService) {

this.roleService = roleService;

/根据id查询用户/

@RequestMapping(value = “/role/findById”)

private CommonResult findById(Integer roleId) {

Role role = roleService.selectById(roleId);

if(role!=null){

return CommonResult.success(“查询成功”,role);

}else{

return CommonResult.error(“查询失败”);

/根据角色名称查询角色/

@RequestMapping(value = “/role/findByKey”)

private CommonResult findByKey(String roleName) {

Role role = roleService.selectByKey(roleName);

if(role!=null){

return CommonResult.success(“查询成功”,role);

}else{

return CommonResult.error(“查询失败”);

/根据key查询用户/

@RequestMapping(value = “/role/existRoleName”)

private CommonResult existRoleName(Integer roleId,String roleName) {

Boolean isExist = roleService.existsRoleName(roleId,roleName);

if(isExist!=null){

return CommonResult.success(“查询成功”,isExist);

}else{

return CommonResult.error(“查询失败”);

/查询所有角色信息/

@RequestMapping(value = “/role/findAll”)

private CommonResult findAll() {

List roles = roleService.selectAll();

if(roles!=null){

return CommonResult.success(“查询成功”,roles);

}else{

return CommonResult.error(“查询失败”);

/查询所有用户/

@RequestMapping(value = “/role/findAllUsable”)

private CommonResult findAllUsable() {

List roles = roleService.selectAllUsable();

if(roles!=null){

return CommonResult.success(“查询成功”,roles);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/role/count”)

private CommonResult findCount() {

Integer count = roleService.selectCount();

if(count!=null){

return CommonResult.success(“查询成功”,count);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/role/findIdByKey”)

private CommonResult findIdByKey(String key) {

Integer id = roleService.selectIdByKey(key);

if(id!=null){

return CommonResult.success(“查询成功”,"id: "+id);

}else{

return CommonResult.error(“查询失败”);

@RequestMapping(value = “/role/add”)

private CommonResult add(Role role) {

if(role!=null){

if(roleService.insertData(role)){

return CommonResult.success(“添加成功”,role);

}else{

return CommonResult.error(“添加失败”);

return CommonResult.error(“用户数据不存在”);

@RequestMapping(value = “/role/update”)

private CommonResult update(Role role) {

System.out.println(role);

if(roleService.updateById(role)){

return CommonResult.success(“更新成功”,role);

}else{

return CommonResult.error(“更新失败”);

@RequestMapping(value = “/role/delete”)

private CommonResult delete(Integer roleId) {

if(roleService.deleteById(roleId)){

return CommonResult.success(“删除成功”,roleId);

}else{

return CommonResult.error(“删除失败”);


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于javaweb的网上电商项目(前后端分离+java+vue+springboot+ssm+mysql+redis) 的相关文章

随机推荐

  • linux应用程序core dump处理

    默认编译出来的程序在出现Segmentation fault 时并没有生成core崩溃文件 可以在gcc g 编译时增加 g选项 如果仍然没有生成core文件 则可能是因为系统设置了core文件大小为0 可以通过 ulimit a 查询得知
  • 实现游戏结束时显示GameOver界面。(Unity)

    在Canvas画板里添加Text文本组件 修改名字为GameOver 修改名字是为了让我们以后更改时更容易找到对应的组件 请名字时尽量和代码一样需要见名知义 并且通过锚点修改他的位置 在位置里修改他需要显示的大小 并且在Text文本组件中修
  • python画笑脸-如何用Python画滑稽笑脸

    Linux编程 点击右侧关注 免费入门到精通 作者丨Saltwater Room https blog csdn net Saltwater Room article details 829 用turtle画滑稽 fromturtle im
  • Android ListView默认选中第一项或第N项

    大体上从查阅的资料和自己的实践一共可以分为以下几种方法 一 重写Adapter 在getView里进行自己的操作 选中 变色等等 class MyAdapter extends BaseAdapter Override public Vie
  • 垂直网络广告

    垂直网站 英文名 Vertical website 注意力集中在某些特定的领域或某种特定的需求 提供有关这个领域或需求的全部深度信息和相关服务 作为互联网的亮点 垂直网站正引起越来越多人的关注 垂直网络广告是指广告发布主体利用网络广告投放平
  • 两个二叉树的合并

    将给定两个二叉树 想象当你将它们中的一个覆盖到另一个上时 两个二叉树的一些节点便会重叠 你需要将他们合并为一个新的二叉树 合并的规则是如果两个节点重叠 那么将他们的值相加作为节点合并后的新值 否则不为 NULL 的节点将直接作为新二叉树的节
  • 手把手教你打造自己的弱口令扫描工具(系统弱口令篇)

    0x01 前言 在渗透测试过程中 弱口令检测是必要的一个环节 选择一个好用的弱口令扫描工具 尤为重要 类似的弱口令检测工具如 Hydra Hscan X Scan 很多时候满足不了自己的需求 通过Python打造自己的弱口令扫描工具 集成在
  • 01FFMPEG的AVFormatContext结构体分析和输出时AVFormatContext的初始化(包含有输入和无输入的AVFormatContext)

    01FFMPEG的AVFormatContext结构体分析和输出时AVFormatContext的初始化 包含有输入和无输入的AVFormatContext 提醒 接下来对所有源码的分析都是针对于目前最新版本的avformat5 8源码 概
  • 五个实施环节

    定级 定级流程 在 信息系统安全等级保护定级指南 中 说明了定级的一般流程 1 确定作为定级对象的信息系统 2 确定业务信息安全受到破坏时所侵害的客体 3 根据不同的受侵害客体 从多个方面综合评定业务信息安全被破坏对客体的侵害程度 4 根据
  • 专项-弱网络测试

    弱网络 简单理解 网络不好 网络环境复杂 使用场景多变 异常逻辑检查 弱网络测什么 测试标准 客户端的核心场景必须有断线重连机制 并在有网络抖动 延时 丢包的网络场景下 客户端需达到以下要求 一 不能出现以下现象 1 游戏中不能出现收支不等
  • Lloyd-Max条件、DPCM系统最佳预测系数推导以及最小二乘:梯度下降、牛顿法、高斯牛顿法总结

    文章目录 1 Lloyd Max条件推导 2 DPCM系统最佳预测系数推导 3 最小二乘 梯度下降 牛顿法 高斯牛顿法总结 3 1 梯度下降 3 2 牛顿法 3 3 高斯牛顿法 1 Lloyd Max条件推导 2 DPCM系统最佳预测系数推
  • Kimera-VIO-ROS,Kimera-Semantic源码运行结果及问题解决

    前期条件准备 1 VMware Ubuntu18 04 2 ROS rviz melodic 3 Eigen3 3 7 一 Kimera VIO ROS 1 源码运行 Polygon mode solid Polygon mode wire
  • vue+springboot中使用ueditor,路由跳转后再进入ueditor,ueditor无法加载出来

    问题描述 已经在标题上了 解决办法 1 在页面销毁时删除ueditor实例 mounted时创建实例 这样做的目的是再次进来时重新加载ueditor mounted 自定义上传路径 const baseUrl http localhost
  • deebot扫地机器人响四声_科沃斯扫地机器人故障声叫4声什么故障_科沃斯扫地机器人故障...

    科沃斯扫地机器人初次使用时 请多多陪同 这样能及时发现问题 解决问题 常见故障二 地宝出现语音提示 运行困难 请检查驱动轮 解决方法 关机后滑动驱动轮 检查其能否转动 回弹 并清理干净 然后把地宝放回原地 点击主机启动键即可继续工作 常见
  • APK的安装流程

    文章目录 我们来思考一下Android系统是如何安装一个APK文件的 从直观的流程上 当我们点击一个APK文件或者从应用商店下载一个APK文件 会弹起一个安装对话框 点击安装就可以安装应用 那么这里面的流程是什么样的呢 首先很容易想到的是
  • QT增加链接库和头文件搜索目录(相对目录)

    QT开发的时候 需要增加链接的动态库或者静态库 或者搜索的头文件 正常情况下 使用相对目录是最好的 下面是常用的方法 1 增加库依赖 如下 OUT PWD表示QT编译后的输出目录 比如Debug或者Release目录 后续发布的时候 把so
  • 【设计模式】Java设计模式——模板方法模式(Template Pattern)

    文章目录 1 介绍 1 1 定义 1 2 作用 2 模式结构 2 1 UML类图 2 2 模式组成 3 代码实例 3 1 背景 3 2 应用 4 优点 5 缺点 6 应用场景 1 介绍 1 1 定义 模板方法模式 Template Patt
  • 上古神器Vim

    玩转Vim 世界上10种人 会用Vim的和不会用Vim的 玩转Vim 从放弃到爱不释手 什么是Vim Linux下两大编辑神器之一Vim Linux Unix下使用最多的编辑器 Vi的改进版 可能是最难上手的编辑器之一 为什么要学习Vim
  • 【经验分享】用PS如何将图片的四角做成圆弧角

    经验分享 用PS如何将图片的四角做成圆弧角 在很多情况下圆角图片看起来更美观整洁 今天分享一下自己经常使用 PS 是如何将图片做出圆弧角 仅供参考 以下面这张图片为例 一 在 PS 中打开素材图片 选择 圆角矩形工具 二 在上方选项卡中选择
  • 基于javaweb的网上电商项目(前后端分离+java+vue+springboot+ssm+mysql+redis)

    基于javaweb的网上电商项目 前后端分离 java vue springboot ssm mysql redis 运行环境 Java 8 MySQL 5 7 Node js 10 开发工具 后端 eclipse idea myeclip