全方位介紹com.baomidou

一、什麼是com.baomidou

com.baomidou是一個用於Java Web開發的快速開發平台,它的目的是為了提供更加高效的開發和個性化配置,同時提升開發人員的編碼體驗。它從底層進行了優化,支持多個主流框架的集成使用。

二、為什麼選擇com.baomidou

1、代碼生成器:

com.baomidou提供了一款高效的代碼生成器,可以生成基本的Model、Mapper、Service、Controller等文件,同時它支持自定義模板文件,可以快速搭建整個項目的基本框架。

2、集成多種主流框架:

com.baomidou支持集成Mybatis-Plus、Spring Boot、Beetl、Kisso等多種主流框架,能夠滿足不同需求的開發者使用。

3、高度可配置:

com.baomidou的配置文件非常全面,支持多種運行時參數和環境參數的配置,同時還支持多種配置文件的集成使用(yml、properties等)。

4、簡單易用:

com.baomidou對於Java Web開發的每個環節都進行了優化,特別是在CRUD操作的方面,它提供的一些封裝類和工具函數能夠快速的完成增、刪、改、查等操作。

三、使用com.baomidou的注意事項

1、合理的設計目錄結構:

在使用com.baomidou開發項目時,需要合理設計項目的目錄結構。尤其是在使用代碼生成器時,需要注意生成的目錄和文件位置,可以避免一些不必要的問題。

2、適合的開發模式:

com.baomidou適合使用MVC架構的開發模式,根據它支持的框架,可以使用Mybatis-Plus進行Model層操作,同時使用Spring Boot、Beetl進行Controller和View層的操作。

3、了解常用的工具類和封裝方法:

com.baomidou提供了一些常用的工具類和封裝方法,能夠減輕開發者的負擔,例如:Wrapper類的使用、Mybatis-Plus的分頁和排序等。

四、使用com.baomidou的示例代碼

1、代碼生成器的使用示例


public class CodeGenerator {

    private static final String DRIVER_NAME = "com.mysql.jdbc.Driver";
    private static final String DB_URL = "jdbc:mysql://localhost:3306/test";
    private static final String USERNAME = "root";
    private static final String PASSWORD = "123456";

    private static final String[] TABLES = new String[]{"user", "role", "permission"};

    public static void main(String[] args) {
        GlobalConfig config = new GlobalConfig();
        config.setOutputDir("D:\\code_generator");
        config.setAuthor("example");
        config.setActiveRecord(true);
        config.setEnableCache(false);
        config.setBaseResultMap(true);
        config.setBaseColumnList(true);
        config.setXmlName("%sMapper");
        config.setServiceName("I%sService");
        config.setServiceImplName("%sServiceImpl");
        config.setControllerName("%sController");

        DataSourceConfig dataSourceConfig = new DataSourceConfig();
        dataSourceConfig.setDbType(DbType.MYSQL);
        dataSourceConfig.setDriverName(DRIVER_NAME);
        dataSourceConfig.setUrl(DB_URL);
        dataSourceConfig.setUsername(USERNAME);
        dataSourceConfig.setPassword(PASSWORD);

        StrategyConfig strategyConfig = new StrategyConfig();
        strategyConfig.setCapitalMode(true);
        strategyConfig.setNaming(NamingStrategy.underline_to_camel);
        strategyConfig.setTablePrefix("t_");
        strategyConfig.setInclude(TABLES);

        PackageConfig packageConfig = new PackageConfig();
        packageConfig.setParent("com.example");
        packageConfig.setEntity("model");
        packageConfig.setMapper("dao");
        packageConfig.setService("service");
        packageConfig.setServiceImpl("service.impl");
        packageConfig.setController("web");

        new AutoGenerator().setGlobalConfig(config)
                .setDataSource(dataSourceConfig)
                .setStrategy(strategyConfig)
                .setPackageInfo(packageConfig)
                .execute();
    }
}

2、Controller層和Service層的示例代碼


@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private IUserService userService;

    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        return userService.getById(id);
    }

    @PostMapping("/")
    public void saveUser(@RequestBody User user) {
        userService.save(user);
    }

    @PutMapping("/{id}")
    public void updateUser(@PathVariable Long id, @RequestBody User user) {
        user.setId(id);
        userService.updateById(user);
    }

    @DeleteMapping("/{id}")
    public void deleteUser(@PathVariable Long id) {
        userService.removeById(id);
    }
}

@Service
public class UserServiceImpl extends ServiceImpl implements IUserService {
}

原創文章,作者:OFFIN,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/324981.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
OFFIN的頭像OFFIN
上一篇 2025-01-13 13:23
下一篇 2025-01-13 13:23

相關推薦

  • com.alipay.sofa.bolt框架

    com.alipay.sofa.bolt框架是一款高性能、輕量級、可擴展的RPC框架。其廣泛被應用於阿里集團內部服務以及阿里雲上的服務。該框架通過NIO支持高並發,同時還內置了多種…

    編程 2025-04-29
  • com.picacomic.fregata

    一、介紹 Com.picacomic.fregata是一個基於Java的機器學習庫,旨在提供易於使用的API來開發各種機器學習模型。 在最初的版本中,com.picacomic.f…

    編程 2025-04-25
  • 訪問github.com的請求遭到拒絕

    一、網路問題導致訪問失敗 訪問github.com的請求遭到拒絕,可能是由於網路問題導致的。首先,我們需要檢查網路是否正常,例如檢查網路連接是否斷開,檢查是否有代理設置等。如果網路…

    編程 2025-04-23
  • 深入了解npmjs.com

    npm是一個跨平台的包管理器,它是世界上最大的軟體註冊表之一,包含了數百萬個包,可以讓開發者在項目中使用其他社區或個人編寫的代碼。 一、npm的歷史 npm的誕生是為了解決Java…

    編程 2025-04-20
  • www.b2s55.com的介紹

    www.b2s55.com是一家專門提供商務服務的網站,主要包括了商務通訊、商業調查、商業諮詢、銀行信貸等綜合性服務。下面我們將從五方面對其進行詳細介紹。 一、商務通訊 www.b…

    編程 2025-02-25
  • com.android.settings:Android設置應用程序的詳細闡述

    一、介紹 com.android.settings是Android操作系統中自帶的一個用於設置的應用程序,它是一個全方位的設置中心,用戶可以從這個應用中查找、配置設備的各種設置。 …

    編程 2025-02-01
  • 深入理解com.lmax.disruptor框架

    在高性能計算場景下,事件驅動方式是提高效率和吞吐量的重要手段。而com.lmax.disruptor就是其中一款優秀的非同步事件處理框架。本文將從其基礎概念,應用場景,原理實現,性能…

    編程 2025-01-24
  • 深入了解COM Exception

    一、ComException概述 當我們在使用COM組件時,往往會遇到一些異常,這些異常就是ComException。 ComException是由COM組件或者.NET封裝COM…

    編程 2025-01-20
  • 2048.com 探究

    一、遊戲介紹 2048是一款益智類數字合併遊戲,由義大利程序員Gabriele Cirulli於2014年3月創建。遊戲中玩家需要不停滑動數字塊(默認4×4)來達成最終目…

    編程 2025-01-16
  • 關於certifloat.com的信息

    本文目錄一覽:

    編程 2025-01-16

發表回復

登錄後才能評論