Convert Figma logo to code with AI

newbee-ltd logonewbee-mall-api

🔥 🎉新蜂商城前后端分离版本-后端API源码

1,387
491
1,387
3

Top Related Projects

11,773

Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively “Adobe”) are subject to the terms of the Adobe Contributor License Agreement.

PrestaShop is the universal open-source software platform to build your e-commerce solution.

A free shopping cart system. OpenCart is an open source PHP-based online e-commerce solution.

14,588

An open source eCommerce platform giving you full control and customizability. Modular and API-first. Multi-vendor, multi-tenant, multi-store, multi-currency, multi-language. Built using Ruby on Rails. Developed by @vendo-dev

Quick Overview

The newbee-mall-api repository is a backend API for the Newbee Mall, an e-commerce platform built using Spring Boot. It provides a set of RESTful APIs for managing products, orders, and user accounts.

Pros

  • Comprehensive Functionality: The API covers a wide range of e-commerce features, including product management, shopping cart, order processing, and user authentication.
  • Modern Technology Stack: The project utilizes the latest version of Spring Boot, which ensures the codebase is up-to-date and leverages the latest features and best practices.
  • Well-Documented: The repository includes detailed documentation, making it easier for developers to understand and integrate the API into their projects.
  • Active Development: The project is actively maintained, with regular updates and bug fixes, ensuring the API remains reliable and secure.

Cons

  • Steep Learning Curve: The project uses a complex technology stack, which may require developers to have a strong understanding of Spring Boot and related frameworks.
  • Limited Customization: The API is designed to be a general-purpose e-commerce solution, which may limit the ability to customize it for specific business requirements.
  • Potential Performance Issues: Depending on the scale of the e-commerce platform, the API may face performance challenges, especially with high traffic or complex queries.
  • Vendor Lock-in: By using the Newbee Mall API, developers may become dependent on the platform, making it difficult to migrate to alternative solutions in the future.

Code Examples

N/A (This is not a code library)

Getting Started

N/A (This is not a code library)

Competitor Comparisons

11,773

Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively “Adobe”) are subject to the terms of the Adobe Contributor License Agreement.

Pros of Magento2

  • Magento2 is a feature-rich and highly customizable e-commerce platform, offering a wide range of built-in functionalities and extensions.
  • The platform has a large and active community, providing a wealth of resources, support, and third-party integrations.
  • Magento2 is highly scalable and can handle large-scale e-commerce operations, making it suitable for enterprise-level businesses.

Cons of Magento2

  • Magento2 has a steeper learning curve compared to NewbeeMall-API, requiring more technical expertise to set up and maintain.
  • The platform can be resource-intensive, requiring powerful hardware and hosting infrastructure to run efficiently.
  • Magento2 can be more expensive to implement and maintain, especially for smaller businesses, due to its enterprise-level features and the need for specialized development resources.

Code Comparison

Magento2 (simplified):

public function execute()
{
    $this->_view->loadLayout();
    $this->_view->renderLayout();
}

NewbeeMall-API (simplified):

@GetMapping("/api/v1/goods/list")
public Result<PageResult<GoodsListVO>> list(
    @RequestParam(value = "pageNumber", defaultValue = "1") Integer pageNumber,
    @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize
) {
    return goodsService.getGoodsListPage(pageNumber, pageSize);
}

PrestaShop is the universal open-source software platform to build your e-commerce solution.

Pros of PrestaShop

  • PrestaShop is a well-established and widely-used open-source e-commerce platform, with a large and active community.
  • It offers a wide range of features and customization options, making it suitable for a variety of online stores.
  • PrestaShop has a robust plugin ecosystem, allowing for easy integration of additional functionality.

Cons of PrestaShop

  • PrestaShop can have a steeper learning curve compared to some other e-commerce platforms, especially for users with limited technical expertise.
  • The platform can be resource-intensive, requiring more powerful hosting infrastructure to handle high-traffic stores.
  • Some users have reported performance issues and compatibility problems with certain plugins or themes.

Code Comparison

Here's a brief comparison of the code structure between PrestaShop and newbee-mall-api:

PrestaShop (simplified):

class ProductController extends FrontController
{
    public function initContent()
    {
        parent::initContent();
        $this->product = new Product($this->getId());
        $this->context->smarty->assign('product', $this->product);
    }

    public function displayHeader()
    {
        parent::displayHeader();
        $this->addCSS(_THEME_CSS_DIR_.'product.css');
    }
}

newbee-mall-api (simplified):

@RestController
@RequestMapping("/api/v1/goods")
public class GoodsController {
    @Autowired
    private GoodsService goodsService;

    @GetMapping("/{goodsId}")
    public ResponseEntity<GoodsDetailVO> getGoodsDetail(@PathVariable Long goodsId) {
        GoodsDetailVO goodsDetailVO = goodsService.getGoodsDetail(goodsId);
        return ResponseEntity.ok(goodsDetailVO);
    }

    @PostMapping
    public ResponseEntity<String> saveGoods(@RequestBody GoodsVO goodsVO) {
        goodsService.saveGoods(goodsVO);
        return ResponseEntity.ok("Success");
    }
}

A free shopping cart system. OpenCart is an open source PHP-based online e-commerce solution.

Pros of OpenCart

  • Extensive Plugin Ecosystem: OpenCart has a vast ecosystem of plugins and extensions, allowing for easy customization and expansion of the platform's functionality.
  • Multilingual and Multicurrency Support: OpenCart supports multiple languages and currencies out of the box, making it suitable for international e-commerce businesses.
  • Active Community: OpenCart has a large and active community of developers and users, providing a wealth of resources, support, and documentation.

Cons of OpenCart

  • Steep Learning Curve: OpenCart can have a steeper learning curve compared to some other e-commerce platforms, especially for users with limited technical expertise.
  • Limited Scalability: While OpenCart can handle a moderate amount of traffic and product listings, it may not be as scalable as some enterprise-level e-commerce solutions.
  • Security Concerns: OpenCart has faced some security vulnerabilities in the past, which may require diligent maintenance and updates to address.

Code Comparison

Here's a brief code comparison between OpenCart and newbee-mall-api:

OpenCart (index.php):

// Registry
$registry = new Registry();

// Config
$config = new Config();
$registry->set('config', $config);

// Database
$db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
$registry->set('db', $db);

// Session
$session = new Session();
$registry->set('session', $session);

newbee-mall-api (Application.java):

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

As you can see, the OpenCart code is more complex, dealing with various components like the registry, config, database, and session, while the newbee-mall-api code is more straightforward, using the Spring Boot framework to bootstrap the application.

14,588

An open source eCommerce platform giving you full control and customizability. Modular and API-first. Multi-vendor, multi-tenant, multi-store, multi-currency, multi-language. Built using Ruby on Rails. Developed by @vendo-dev

Pros of Spree

  • Spree is a mature and feature-rich e-commerce platform that provides a wide range of functionality out of the box, including product management, order processing, and payment integration.
  • The Spree community is active and supportive, with a large number of extensions and plugins available to extend the platform's functionality.
  • Spree is built on Ruby on Rails, a popular and well-established web framework, which makes it easy to integrate with other Ruby-based applications.

Cons of Spree

  • Spree has a steeper learning curve compared to newbee-mall-api, as it is a more complex and feature-rich platform.
  • Spree may be overkill for smaller e-commerce projects that don't require the full range of features it provides.
  • Spree's codebase is larger and more complex than newbee-mall-api, which may make it more challenging to customize and maintain.

Code Comparison

Here's a brief code comparison between Spree and newbee-mall-api:

Spree (Ruby on Rails):

class Spree::Order < Spree::Base
  include Spree::Order::Checkout
  include Spree::Order::Payments
  include Spree::Order::Shipments
  include Spree::Order::Totals
  include Spree::Order::StoreCredit
  include Spree::Order::Updating
  include Spree::Order::Reimbursements
  include Spree::Order::Concerns::Shipping
  include Spree::Order::Concerns::Taxation
  include Spree::Order::Concerns::Adjustments
  include Spree::Order::Concerns::Approvals
  include Spree::Order::Concerns::Checkout
  include Spree::Order::Concerns::Payments
  include Spree::Order::Concerns::Shipments
  include Spree::Order::Concerns::Totals
  include Spree::Order::Concerns::StoreCredit
  include Spree::Order::Concerns::Updating
  include Spree::Order::Concerns::Reimbursements
end

newbee-mall-api (Java Spring Boot):

@RestController
@RequestMapping("/api/v1/goods")
public class GoodsController {
    @Autowired
    private GoodsService goodsService;

    @GetMapping("/list")
    public Result<PageResult<GoodsListVO>> list(@RequestParam(required = false) String goodsName,
                                               @RequestParam(required = false) Integer goodsCategoryId,
                                               @RequestParam(required = false, defaultValue = "1") Integer pageNumber,
                                               @RequestParam(required = false, defaultValue = "10") Integer pageSize) {
        PageResult<GoodsListVO> goodsListPage = goodsService.getGoodsListPage(goodsName, goodsCategoryId, pageNumber, pageSize);
        return ResultGenerator.genSuccessResult(goodsListPage);
    }
}

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Build Status Version 2.0.0 License

newbee-mall 项目是一套电商系统,基于 Spring Boot 和 Vue 以及相关技术栈开发。前台商城系统包含首页门户、商品分类、新品上线、首页轮播、商品推荐、商品搜索、商品展示、购物车、订单结算、订单流程、个人订单管理、会员中心、帮助中心等模块。 后台管理系统包含数据面板、轮播图管理、商品管理、订单管理、会员管理、分类管理、设置等模块。

当前分支的 Spring Boot 版本为 2.7.5,想要学习和使用其它版本可以直接点击下方的分支名称跳转至对应的仓库分支中。

分支名称Spring Boot Version
spring-boot-2.3.72.3.7-RELEASE
spring-boot-2.6.x2.6.3
main2.7.5
spring-boot-3.x3.1.0

坚持不易,如果觉得项目还不错的话可以给项目一个 Star 吧,也是对我一直更新代码的一种鼓励啦,谢谢各位的支持。

newbee-mall-info

newbee-mall (新蜂商城)系列项目概览

newbee-mall-course-2022

项目名称仓库地址备注
newbee-mallnewbee-mall in GitHub
newbee-mall in Gitee
初始版本、Spring Boot、Thymeleaf、MyBatis、MySQL
newbee-mall-plusnewbee-mall-plus in GitHub
newbee-mall-plus in Gitee
升级版本、优惠券、秒杀、支付、Spring Boot、Thymeleaf、MyBatis、MySQL、Redis
newbee-mall-cloudnewbee-mall-cloud in GitHub
newbee-mall-cloud in Gitee
微服务版本、分布式事务、Spring Cloud Alibaba、Nacos、Sentinel、OpenFeign、Seata
newbee-mall-apinewbee-mall-api in GitHub
newbee-mall-api in Gitee
前后端分离、Spring Boot、MyBatis、Swagger、MySQL
newbee-mall-api-gonewbee-mall-api-go in GitHub
newbee-mall-api-go in Gitee
前后端分离、Go、Gin、MySQL
newbee-mall-vue-appnewbee-mall-vue-app in GitHub
newbee-mall-vue-app in Gitee
前后端分离、Vue2、Vant
newbee-mall-vue3-appnewbee-mall-vue3-app in GitHub
newbee-mall-vue3-app in Gitee
前后端分离、Vue3、Vue-Router4、Vuex4、Vant3
vue3-adminvue3-admin in GitHub
vue3-admin in Gitee
前后端分离、Vue3、Element-Plus、Vue-Router4、Vite

更多 Spring Boot 实战项目可以关注十三的另一个代码仓库 spring-boot-projects,该仓库中主要是 Spring Boot 的入门学习教程以及一些常用的 Spring Boot 实战项目教程,包括 Spring Boot 使用的各种示例代码,同时也包括一些实战项目的项目源码和效果展示,实战项目包括基本的 web 开发以及目前大家普遍使用的前后端分离实践项目等,后续会根据大家的反馈继续增加一些实战项目源码,摆脱各种 hello world 入门案例的束缚,真正的掌握 Spring Boot 开发。

关注公众号:程序员十三,回复"勾搭"进群交流。

wx-gzh

开发及部署文档

Vue3 + Spring Boot 版本

Vue3 + Spring Boot 商城升级版本

联系作者

大家有任何问题或者建议都可以在 issues 中反馈给我,我会慢慢完善这个项目。

  • 我的邮箱:2449207463@qq.com
  • QQ技术交流群:719099151 796794009

软件著作权

本系统已申请软件著作权,受国家版权局知识产权以及国家计算机软件著作权保护!

接口文档

页面展示

以下为新蜂商城 Vue 版本的页面预览:

  • 登录页

  • 首页

  • 商品搜索

  • 商品详情页

  • 购物车

  • 生成订单

  • 地址管理

  • 订单列表

  • 订单详情

感谢