国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Mybatis-plus 代碼生成器

這篇具有很好參考價(jià)值的文章主要介紹了Mybatis-plus 代碼生成器。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

1、pom.xml

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.xxxx</groupId>
	<artifactId>shop-generator</artifactId>
	<version>1.0-SNAPSHOT</version>

	<!-- 繼承 shop-parent 依賴 -->
	<parent>
		<groupId>com.wll</groupId>
		<artifactId>shop</artifactId>
		<version>1.0-SNAPSHOT</version>
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<maven.compiler.source>1.8</maven.compiler.source>
		<maven.compiler.target>1.8</maven.compiler.target>
	</properties>

	<dependencies>
		<!-- mybatis 依賴(讓生成的 pojo 和 mapper 不缺少注解相關(guān)類型) -->
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
		</dependency>
		<!-- mybatis generator core 依賴 -->
		<dependency>
			<groupId>org.mybatis.generator</groupId>
			<artifactId>mybatis-generator-core</artifactId>
			<version>1.3.7</version>
		</dependency>
	</dependencies>

	<!-- build 標(biāo)簽常用于添加插件及編譯配置 -->
	<build>
		<plugins>
			<!-- mybatis generator plugin 依賴 -->
			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.7</version>
				<configuration>
					<verbose>true</verbose>
					<!-- 是否覆蓋 -->
					<overwrite>true</overwrite>
					<!-- 自動(dòng)生成的配置 -->
					<configurationFile>src/main/resources/mybatis-generator.xml</configurationFile>
				</configuration>
				<dependencies>
					<!-- mysql 數(shù)據(jù)庫(kù)依賴 -->
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>${mysql.version}</version>
					</dependency>
					<!-- mybatis generator core 依賴 -->
					<dependency>
						<groupId>org.mybatis.generator</groupId>
						<artifactId>mybatis-generator-core</artifactId>
						<version>1.3.7</version>
					</dependency>
					<!-- 將項(xiàng)目打包至本地倉(cāng)庫(kù)并添加依賴 -->
					<dependency>
						<groupId>com.xxxx</groupId>
						<artifactId>shop-generator</artifactId>
						<version>1.0-SNAPSHOT</version>
					</dependency>
				</dependencies>
			</plugin>
		</plugins>
	</build>

</project>

2、mybatis-generator.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
		PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
		"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<!-- 配置生成器 -->
<generatorConfiguration>
	<context id="MysqlTables" targetRuntime="MyBatis3">
		<!-- 生成的Java文件的編碼 -->
		<property name="javaFileEncoding" value="UTF-8"/>
		<!-- 增加Models ToStirng方法 -->
		<plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
		<!-- 增加Models Serializable實(shí)現(xiàn) -->
		<plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>

		<!-- 分頁(yè)插件 -->
		<!-- 在example類中增 page 屬性,并在mapper.xml的查詢中加入page !=null 時(shí)的查詢 -->
		<!-- <plugin type="org.mybatis.generator.plugins.MySQLPagerPlugin" /> -->
		<!-- 在example類中增 offset和limit屬性,并在mapper.xml的查詢中加入limit ${offset} , ${limit} 提供在offset和limit>0時(shí)的查詢 -->
		<!-- <plugin type="org.mybatis.generator.plugins.MySQLPaginationPlugin"></plugin> -->

		<!-- 是否去除自動(dòng)生成的注釋 true:是 : false:-->
		<!-- type指定生成注釋使用的對(duì)象 -->
		<commentGenerator type="com.xxxx.generator.ShopCommentGenerator">
			<property name="suppressAllComments" value="false"/>
		</commentGenerator>

		<!-- mysql數(shù)據(jù)庫(kù)連接配置 -->
		<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
		                connectionURL="jdbc:mysql://localhost:3306/shop?"
		                userId="root" password="abc123">
		</jdbcConnection>

		<!--
			是否忽略BigDecimals 非必填項(xiàng)
				自動(dòng)生成Java對(duì)象的時(shí)候,會(huì)根據(jù)number類型的長(zhǎng)度不同生成不同的數(shù)據(jù)類型
					number長(zhǎng)度   Java類型
					1~4          Short
					5~9          Integer
					10~18        Long
					18+          BigDecimal
		 -->
		<javaTypeResolver>
			<property name="forceBigDecimals" value="false"/>
		</javaTypeResolver>

		<!-- 以下內(nèi)容,需要改動(dòng) -->
		<!-- java類生成的位置  -->
		<javaModelGenerator targetPackage="com.xxxx.generator.pojo" targetProject="src/main/java">
			<!-- 在targetPackage的基礎(chǔ)上,根據(jù)數(shù)據(jù)庫(kù)的schema再生成一層package,最終生成的類放在這個(gè)package下,默認(rèn)為false -->
			<property name="enableSubPackages" value="true"/>
			<!-- 從數(shù)據(jù)庫(kù)返回的值去除前后空格 -->
			<property name="trimStrings" value="true"/>
		</javaModelGenerator>

		<!-- *Mapper.xml配置文件生成的位置 -->
		<sqlMapGenerator targetPackage="com.xxxx.generator.mapper" targetProject="src/main/java">
			<!-- 是否讓schema作為包后綴 -->
			<property name="enableSubPackages" value="true"/>
		</sqlMapGenerator>

		<!-- java mapper接口生成的位置(interface) -->
		<javaClientGenerator type="XMLMAPPER" targetPackage="com.xxxx.generator.mapper" targetProject="src/main/java">
			<!-- 是否讓schema作為包后綴 -->
			<property name="enableSubPackages" value="true"/>
		</javaClientGenerator>

		<!--
			指定數(shù)據(jù)庫(kù)表
				tableName數(shù)據(jù)庫(kù)表名
				domainObjectName生成的實(shí)體類名
				是否需要mapper配置文件加入sql的where條件查詢,需要將enableCountByExample等設(shè)為true,會(huì)生成一個(gè)對(duì)應(yīng)domainObjectName的Example類
		 -->
		<table tableName="t_goods_category" domainObjectName="GoodsCategory"
		       enableCountByExample="false" enableDeleteByExample="false"
		       enableSelectByExample="false" enableUpdateByExample="false">
			<!-- 用于insert時(shí),返回主鍵的編號(hào) -->
			<generatedKey column="order_id" sqlStatement="MySql" identity="true"/>
		</table>

	</context>
</generatorConfiguration>

Example類

這里可以生成一個(gè)example類
什么是example類?
Mybatis-Plus的代碼生成器可以自動(dòng)生成一些基本的代碼文件,其中包括了Example(查詢條件構(gòu)造器)類。如下是Example類的大致解釋和用法:

Example類是在Mybatis-Plus中用于構(gòu)建復(fù)雜條件查詢的常用工具類,它是基于Wrapper(Lambda表達(dá)式構(gòu)造器)來(lái)構(gòu)造查詢條件的。它可以幫助開(kāi)發(fā)人員通過(guò)有條件的SQL查詢獲取到想要的數(shù)據(jù)結(jié)果。

Example類通常是由以下三個(gè)組成部分構(gòu)成:

  1. QueryWrapper: 表示要查詢哪個(gè)表,以及要查詢哪些字段
  2. Criteria: 指定查詢條件,包括大于、小于、等于等
  3. OrderBy: 指定要排序的字段以及排序方式

在使用Example類時(shí),可以通過(guò)鏈?zhǔn)秸{(diào)用來(lái)構(gòu)建查詢條件,以達(dá)到更加靈活、簡(jiǎn)便的查詢效果。

Example<User> example = new Example<>();
example.createCriteria().andEqualTo("name", "John").andBetween("age", 20, 30);
List<User> users = userMapper.selectByExample(example);

Example類是Mybatis-Plus中用于構(gòu)建復(fù)雜條件查詢的工具類。
它的構(gòu)造規(guī)則如下:1. Example對(duì)象必須要指定泛型類型,以表明要查詢的實(shí)體類。2. Example對(duì)象支持鏈?zhǔn)秸{(diào)用,可以使用Example.xxx().xxx()的方式來(lái)對(duì)查詢條件進(jìn)行設(shè)置。3. Example類的構(gòu)造方法可以帶有一個(gè)參數(shù),即泛型類型。例如:Example example = new Example(User.class);

Example類中常用的方法:

  1. createCriteria():該方法通過(guò)調(diào)用Criteria類的方法來(lái)構(gòu)建查詢條件。返回值為Criteria類型的對(duì)象,可以通過(guò)該對(duì)象來(lái)添加查詢條件。
  2. andXXX():該類方法用于添加查詢條件,在這里XXX可以是大于、小于、等于等。例如:andEqualTo()表示等于,andBetween()表示在兩個(gè)值之間。
  3. orderBy():該方法用于設(shè)置排序方式。例如:orderBy(“id”).asc()表示按id升序排序,orderBy(“id”).desc()表示按id降序排序。
  4. setDistinct():該方法用于設(shè)置查詢結(jié)果是否去重。默認(rèn)情況下,查詢結(jié)果不去重。
  5. or():該方法用于設(shè)置OR查詢條件。例如:or().andEqualTo(“name”, “John”).andBetween(“age”, 20, 30)表示根據(jù)name為"John"或者age在20到30之間的條件進(jìn)行查詢。
  6. selectProperties():該方法用于設(shè)置查詢結(jié)果中的字段。例如:selectProperties(“id”, “name”)表示只查詢id和name兩個(gè)字段的數(shù)據(jù)。
  7. isDistinct():該方法用于判斷查詢結(jié)果是否去重。
  8. getOrderByClause():該方法用于獲取查詢結(jié)果的排序方式。需要注意的是,Example類可以和Wrapper類(Lambda表達(dá)式構(gòu)造器)配合使用來(lái)構(gòu)建更加復(fù)雜的查詢條件。在使用時(shí),可以根據(jù)實(shí)際需求進(jìn)行靈活選擇。

Criteria類是Example類的內(nèi)部類,作為Example類的一部分用于構(gòu)建查詢條件。它提供了豐富的方法,用于設(shè)置查詢條件

Mybatis代碼生成器的問(wèn)題

生成的類型不一定是我們想要的。

如將tinyint類型生成了Boolean,但實(shí)際上我們要存的是byte
tinyint 類型在 MySQL 中表示一個(gè) 8 位的整數(shù)類型,范圍為 -128 到 127。在 Java 中,可以將 tinyint 數(shù)據(jù)類型與 byte 或 Byte 類型對(duì)應(yīng)。
如果數(shù)據(jù)庫(kù)中的 tinyint 類型是用于表示布爾值(例如 0 表示 false,1 表示 true),則可以將其與 boolean 或 Boolean 類型對(duì)應(yīng)。由于 Java 中的 boolean 類型只有 true 和 false 兩個(gè)取值,因此需要在程序中對(duì) tinyint 的值進(jìn)行轉(zhuǎn)換。通常情況下,將 0 視為 false,非 0 值視為 true。

數(shù)據(jù)庫(kù)和java對(duì)象類型對(duì)應(yīng)表

Mybatis-plus 代碼生成器文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-427216.html

到了這里,關(guān)于Mybatis-plus 代碼生成器的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【MyBatis-Plus】DML編程控制 代碼生成器(文末贈(zèng)書)

    【MyBatis-Plus】DML編程控制 代碼生成器(文末贈(zèng)書)

    查詢相關(guān)的操作我們已經(jīng)介紹完了,緊接著我們需要對(duì)另外三個(gè),增刪改進(jìn)行內(nèi)容的講解。挨個(gè)來(lái)說(shuō)明下,首先是新增(insert)中的內(nèi)容。 1. id生成策略控制 前面我們?cè)谛略龅臅r(shí)候留了一個(gè)問(wèn)題,就是新增成功后,主鍵ID是一個(gè)很長(zhǎng)串的內(nèi)容,我們更想要的是按照數(shù)據(jù)庫(kù)表字段

    2024年02月13日
    瀏覽(46)
  • Mybatis-Plus 代碼生成器,自定義模板Demo,快速搭建??!

    Mybatis-Plus 代碼生成器,自定義模板Demo,快速搭建!!

    詳細(xì)信息以及具體配置方法解析–》官方文檔:https://baomidou.com/ velocity 和 freemarker 選擇導(dǎo)入,velocity 對(duì)應(yīng)vm的模板,freemarker 對(duì)應(yīng)flt模板,自定義模板,需要將導(dǎo)入進(jìn)的配置下的模板復(fù)制到自己項(xiàng)目的resource下 01:Mybatis-Plus 下的模板 02:自己項(xiàng)目 resource 新建 templates 03:maven:

    2023年04月19日
    瀏覽(22)
  • Java:mybatis-plus-generator-ui 基于Mybatis-Plus的代碼自助生成器

    Java:mybatis-plus-generator-ui 基于Mybatis-Plus的代碼自助生成器

    引用官方文檔上的簡(jiǎn)介: 提供交互式的Web UI用于生成兼容mybatis-plus框架的相關(guān)功能代碼,包括Entity,Mapper,Mapper.xml,Service,Controller等 ,可以自定義模板以及各類輸出參數(shù),也可通過(guò)SQL查詢語(yǔ)句直接生成代碼。 文檔 github: https://github.com/davidfantasy/mybatis-plus-generator-ui gitee: https://g

    2024年02月10日
    瀏覽(24)
  • MyBatis-Plus 可視化代碼生成器來(lái)啦,讓你的開(kāi)發(fā)效率大大提速??!

    MyBatis-Plus 可視化代碼生成器來(lái)啦,讓你的開(kāi)發(fā)效率大大提速??!

    在基于Mybatis的開(kāi)發(fā)模式中,很多開(kāi)發(fā)者還會(huì)選擇Mybatis-Plus來(lái)輔助功能開(kāi)發(fā),以此提高開(kāi)發(fā)的效率。雖然Mybatis也有代碼生成的工具,但Mybatis-Plus由于在Mybatis基礎(chǔ)上做了一些調(diào)整,因此,常規(guī)的生成工具生成的代碼還有一些不太符合預(yù)期。而且對(duì)于多數(shù)據(jù)庫(kù)的支持不是很好。

    2024年02月05日
    瀏覽(27)
  • 代碼生成器-mybatis-plus-generator

    代碼生成器-mybatis-plus-generator

    我們平時(shí)在開(kāi)發(fā)的過(guò)程中,對(duì)于新建的一張表難免會(huì)有對(duì)其進(jìn)行增刪改查的操作,而且還要寫Controller、service、Mapper、Mapper.xml、PO、VO等等。如果每次都要去寫這些跟業(yè)務(wù)毫不相干但是卻又耗時(shí)耗力的重復(fù)代碼這不僅是讓開(kāi)發(fā)人員不能專注于業(yè)務(wù)邏輯甚至可能由于不注意導(dǎo)致字

    2023年04月25日
    瀏覽(21)
  • mybatis-plus-generator-ui 可視化代碼生成器!

    mybatis-plus-generator-ui 可視化代碼生成器!

    它提供交互式的Web UI用于生成兼容mybatis-plus框架的相關(guān)功能代碼,包括Entity,Mapper,Mapper.xml,Service,Controller等。 可以自定義模板以及各類輸出參數(shù),也可通過(guò)SQL查詢語(yǔ)句直接生成代碼。 git地址 :https://github.com/davidfantasy/mybatis-plus-generator-ui 1、引入依賴 2、新建程序入口,以main函

    2024年02月08日
    瀏覽(18)
  • springboot的代碼生成器mybatis-plus-generator-ui

    springboot的代碼生成器mybatis-plus-generator-ui

    GeberatorUIServer 在springboot的test中運(yùn)行 這段代碼是一個(gè)用于生成 MyBatis-Plus 代碼的工具類,進(jìn)行解釋: 這是一個(gè)名為 GeberatorUIServer 的類。 這是程序的入口方法,即 main 方法。 這段代碼創(chuàng)建了一個(gè) GeneratorConfig 對(duì)象,并使用鏈?zhǔn)秸{(diào)用的方式設(shè)置了一系列參數(shù): jdbcUrl :數(shù)據(jù)庫(kù)連

    2024年02月10日
    瀏覽(16)
  • 5.6 Mybatis代碼生成器Mybatis Generator (MBG)實(shí)戰(zhàn)詳解

    5.6 Mybatis代碼生成器Mybatis Generator (MBG)實(shí)戰(zhàn)詳解

    本文我們主要實(shí)戰(zhàn)Mybatis官方的代碼生成器:Mybatis Generator(MBG),掌握它以后,可以簡(jiǎn)化大部分手寫代碼,我們只需要寫復(fù)雜邏輯代碼! 通過(guò)前幾篇,我們掌握了在SpringBoot下Mybatis的基本用法,操作步驟回顧一下: 創(chuàng)建與MySQL表對(duì)應(yīng)的Java PO對(duì)象,字段一一對(duì)應(yīng); 創(chuàng)建Mapper接口,

    2024年02月05日
    瀏覽(20)
  • mybatis-generator代碼生成器的使用與配置

    mybatis-generator代碼生成器的使用與配置

    官網(wǎng)的MyBatis Generator使用介紹,請(qǐng)點(diǎn)擊下面的鏈接: 鏈接 MyBatis Generator 生成的文件包含三類: (1)Model實(shí)體文件,一個(gè)數(shù)據(jù)庫(kù)表對(duì)應(yīng)生成一個(gè) Model 實(shí)體; (2)Mapper接口文件,數(shù)據(jù)數(shù)操作方法都在此接口中定義; (3)Mapper?XML配置文件 在pom.xml文件添加如下依賴: 代碼如下

    2024年02月14日
    瀏覽(18)
  • 如何利用Mybatis-Plus自動(dòng)生成代碼(超詳細(xì)注解)

    如何利用Mybatis-Plus自動(dòng)生成代碼(超詳細(xì)注解)

    1、簡(jiǎn)介 MyBatis-Plus (opens new window)(簡(jiǎn)稱 MP)是一個(gè) MyBatis (opens new window)的增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開(kāi)發(fā)、提高效率而生。 特性 無(wú)侵入:只做增強(qiáng)不做改變,引入它不會(huì)對(duì)現(xiàn)有工程產(chǎn)生影響,如絲般順滑 損耗?。?jiǎn)?dòng)即會(huì)自動(dòng)注入基本 CURD,性

    2024年02月01日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包