最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot整合Mybatis Generator自動(dòng)生成代碼

 更新時(shí)間:2021年08月22日 11:38:11   作者:xyz@Easion  
SpringBoot 整合 Mybatis Generator自動(dòng)生成dao、entity、mapper.xml實(shí)現(xiàn)單表增刪改查。文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

Mybatis是目前主流的ORM框架,相比于hibernate的全自動(dòng),它是半自動(dòng)化需要手寫(xiě)sql語(yǔ)句、接口、實(shí)體對(duì)象,后來(lái)推出的Generator自動(dòng)生成代碼,可以幫我們提高開(kāi)發(fā)效率。

本文目的:SpringBoot 整合 Mybatis Generator自動(dòng)生成dao、entity、mapper.xml實(shí)現(xiàn)單表增刪改查。

1.創(chuàng)建SpringBoot項(xiàng)目

File→New→Project… 選擇Spring Initializr,選擇JDK版本,默認(rèn)初始化URL

1

填寫(xiě)項(xiàng)目名稱(chēng),java版本,其他描述信息

2

選擇項(xiàng)目存放路徑

在這里插入圖片描述

選擇web、mybatis、mysql依賴(lài)

6

Next–>Finish完成項(xiàng)目創(chuàng)建

2. mybatis-generator-maven插件的配置

打開(kāi)項(xiàng)目的pom.xml文件添加

			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<configuration>
					<verbose>true</verbose>
					<overwrite>true</overwrite>
				</configuration>
			</plugin>

完整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.xyz</groupId>
	<artifactId>mybatis</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>mybatis</name>
	<description>Spring Boot 整合 Mybatis</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.5.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-thymeleaf</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
			<version>1.3.2</version>
		</dependency>

		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.github.pagehelper</groupId>
			<artifactId>pagehelper-spring-boot-starter</artifactId>
			<version>1.2.5</version>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<configuration>
					<verbose>true</verbose>
					<overwrite>true</overwrite>
				</configuration>
			</plugin>
		</plugins>
	</build>


</project>

3. 項(xiàng)目結(jié)構(gòu)構(gòu)建

在項(xiàng)目目錄下(這里是mybatis)添加controller、service、dao、entity包,在resources下添加mapper包存放映射文件。

在這里插入圖片描述

4. application.yml配置

#端口號(hào)配置
server:
  port: 8088
spring:
#模板引擎配置
  thymeleaf:
    prefix: classpath:/templates/
    suffix: .html
    mode: HTML
    encoding: UTF-8
    cache: false
    servlet:
      content-type: text/html
#靜態(tài)文件配置
  resources:
    static-locations: classpath:/static,classpath:/META-INF/resources,classpath:/templates/
#jdbc配置
  datasource:
    url: jdbc:mysql://localhost:3306/video?useUnicode=true&characterEncoding=utf8
    username: xyz
    password: xyz
    driver-class-name: com.mysql.jdbc.Driver
#mybatis配置
mybatis:
#映射文件路徑
  mapper-locations: classpath:mapper/*.xml
#模型所在的保命
  type-aliases-package: com.xyz.mybatis.entity

5. generatorConfig.xml配置

在resources文件下創(chuàng)建generatorConfig.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>

    <!--classPathEntry:數(shù)據(jù)庫(kù)的JDBC驅(qū)動(dòng),換成你自己的驅(qū)動(dòng)位置 可選 -->
    <classPathEntry location="E:\IdeaProjects\mysql-connector-java-5.1.47.jar"/>

    <!-- 一個(gè)數(shù)據(jù)庫(kù)一個(gè)context,defaultModelType="flat" 大數(shù)據(jù)字段,不分表 -->
    <context id="MysqlTables" targetRuntime="MyBatis3Simple" defaultModelType="flat">

        <!-- 自動(dòng)識(shí)別數(shù)據(jù)庫(kù)關(guān)鍵字,默認(rèn)false,如果設(shè)置為true,根據(jù)SqlReservedWords中定義的關(guān)鍵字列表;一般保留默認(rèn)值,遇到數(shù)據(jù)庫(kù)關(guān)鍵字(Java關(guān)鍵字),使用columnOverride覆蓋 -->
        <property name="autoDelimitKeywords" value="true"/>

        <!-- 生成的Java文件的編碼 -->
        <property name="javaFileEncoding" value="utf-8"/>

        <!-- beginningDelimiter和endingDelimiter:指明數(shù)據(jù)庫(kù)的用于標(biāo)記數(shù)據(jù)庫(kù)對(duì)象名的符號(hào),比如ORACLE就是雙引號(hào),MYSQL默認(rèn)是`反引號(hào); -->
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>

        <!-- 格式化java代碼 -->
        <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>

        <!-- 格式化XML代碼 -->
        <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
        <plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>

        <!-- 注釋 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true"/><!-- 是否取消注釋 -->
            <property name="suppressDate" value="false"/> <!-- 是否生成注釋代時(shí)間戳-->
        </commentGenerator>

        <!-- jdbc連接-->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/video?serverTimezone=UTC" userId="xyz"
                        password="xyz"/>

        <!-- 類(lèi)型轉(zhuǎn)換 -->
        <javaTypeResolver>
            <!-- 是否使用bigDecimal, false可自動(dòng)轉(zhuǎn)化以下類(lèi)型(Long, Integer, Short, etc.) -->
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <!-- 生成實(shí)體類(lèi)地址 -->
        <javaModelGenerator targetPackage="com.xyz.mybatis.entity" targetProject="src/main/java">
            <!-- 是否讓schema作為包的后綴 -->
            <property name="enableSubPackages" value="false"/>
            <!-- 從數(shù)據(jù)庫(kù)返回的值去掉前后空格 -->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <!-- 生成map.xml文件存放地址 -->
        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>

        <!-- 生成接口dao -->
        <javaClientGenerator targetPackage="com.xyz.mybatis.dao" targetProject="src/main/java" type="XMLMAPPER">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>

        <!-- table可以有多個(gè),每個(gè)數(shù)據(jù)庫(kù)中的表都可以寫(xiě)一個(gè)table,tableName表示要匹配的數(shù)據(jù)庫(kù)表,也可以在tableName屬性中通過(guò)使用%通配符來(lái)匹配所有數(shù)據(jù)庫(kù)表,只有匹配的表才會(huì)自動(dòng)生成文件 enableSelectByPrimaryKey相應(yīng)的配置表示是否生成相應(yīng)的接口 -->
        <table tableName="t_manager" enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"
               enableSelectByPrimaryKey="true" enableUpdateByPrimaryKey="true"
               enableDeleteByPrimaryKey="true">
            <property name="useActualColumnNames" value="true"/>
        </table>

    </context>
</generatorConfiguration>

注意:
classPathEntry location=“E:\IdeaProjects\mysql-connector-java-5.1.47.jar”,建議用5.X系列的,否則可能生成的接口會(huì)缺少

6. 在idea中添加一個(gè)mybatis generator maven插件啟動(dòng)選項(xiàng),點(diǎn)擊Run,選擇Edit Configuration… 點(diǎn)擊加號(hào)"+"添加,選擇maven,填寫(xiě)名稱(chēng)(這里用mybatis generator),命令行:mybatis-generator:generate -e

在這里插入圖片描述

在這里插入圖片描述

7. 選擇 Mybatis Generator 啟動(dòng),自動(dòng)在dao、entity、mapper包下生成代碼

在這里插入圖片描述

注意:
利用Mybatis Generator自動(dòng)生成代碼,對(duì)于已經(jīng)存在的文件會(huì)存在覆蓋和在原有文件上追加的可能性,不宜多次生成。如需重新生成,需要?jiǎng)h除已生成的源文件。

到此這篇關(guān)于SpringBoot整合Mybatis Generator自動(dòng)生成代碼的文章就介紹到這了,更多相關(guān)SpringBoot Mybatis Generator自動(dòng)生成代碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • IDEA中配置文件格式為UTF-8的操作方法

    IDEA中配置文件格式為UTF-8的操作方法

    這篇文章主要介紹了IDEA中配置文件格式為UTF-8的操作方法,第一個(gè)需要設(shè)置文件編碼格式的位置,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-10-10
  • Nacos通過(guò)RefreshScope實(shí)現(xiàn)配置自動(dòng)更新的方式分享

    Nacos通過(guò)RefreshScope實(shí)現(xiàn)配置自動(dòng)更新的方式分享

    這篇文章主要給大家介紹了Nacos如何通過(guò)RefreshScope實(shí)現(xiàn)配置自動(dòng)更新,文中給了兩種實(shí)現(xiàn)方式供大家參考,對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-09-09
  • 最新評(píng)論

    丰都县| 东兰县| 新宾| 赤水市| 博客| 香河县| 拜泉县| 呼图壁县| 大埔区| 康平县| 耿马| 井冈山市| 余江县| 通化县| 澄城县| 沾益县| 谢通门县| 潮州市| 淄博市| 青冈县| 彰化市| 甘洛县| 湖口县| 新巴尔虎左旗| 全南县| 壶关县| 望城县| 南丰县| 庆阳市| 资阳市| 海林市| 嘉黎县| 扬州市| 保靖县| 噶尔县| 塔河县| 郁南县| 北川| 海阳市| 达日县| 光山县|