MyBatis的入門級環境搭建及增刪改查,詳細易懂

目錄

一.mybatis的簡介

二.MyBatis的環境搭建

????????2.1 導入pom依賴

????????2.2 數據庫文件導入連接

? ? ? ? ?2.3 修改web.xml文件

? ? ? ? 2.4 安裝插件

? ? ? ? 2.5 配置文件

? ? ? ? ? ? ? ? 2.5.1?mybatis.cfg.xml文件

? ? ? ? ? ? ? ??2.5.2?generatorConfig.xml文件

?2.6 最后測試生成代碼

三.MyBatis的增刪改查

? ? ? ?? 3.1? ? 寫service類,

3.2 工具類

3.3 模擬數據測試結果


一.mybatis的簡介

  • ????????MyBatis是一種持久層框架(orm框架),用于將Java對象映射到數據庫表中。它提供了一種簡單的方式來執行數據庫操作,例如查詢、插入、更新和刪除

  • MyBatis通過將SQL語句和Java代碼分離來實現數據訪問層的解耦。它使用XML或注解來描述數據庫操作,并提供了豐富的API來執行這些操作。

  • MyBatis的核心原理是通過配置文件或注解將Java對象和數據庫表進行映射。它還支持事務管理、緩存機制和動態SQL等高級功能,使得開發者能夠更加方便地進行數據庫操作。

  • 它能夠簡化數據庫訪問的開發工作,提高代碼的可讀性和可維護性。無論是小型項目還是大型企業級應用,MyBatis都是一個值得考慮的選擇。

????優點介紹:

1. 簡單易用:MyBatis使用簡單直觀的API和配置文件,使得開發人員能夠快速上手并進行數據庫操作。

2. 靈活性:MyBatis允許開發人員編寫自定義的SQL語句,以滿足各種復雜的查詢需求。同時,它也支持動態SQL,可以根據不同的條件生成不同的SQL語句。

3. 易于調試:MyBatis可以將執行的SQL語句輸出到日志中,方便開發人員進行調試和性能優化。 4. 緩存支持:MyBatis支持一級緩存和二級緩存,可以提高數據庫訪問的性能。

5. 支持多種數據庫:MyBatis支持多種主流數據庫,包括MySQL、Oracle、SQL Server等,方便開發人員在不同的項目中使用。

6. 與Java對象的映射:MyBatis使用XML或注解來描述Java對象與數據庫表的映射關系,使得開發人員可以通過簡單的配置實現對象與表之間的轉換。



二.MyBatis的環境搭建

? ? ? ? 使用框架的步驟:導入pom依賴,配置xml文件,

????????2.1 導入pom依賴

? ? ? ? 這里所有完整版的,去maven官網下載即可

<?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.zking</groupId><artifactId>mybatis01</artifactId><version>1.0-SNAPSHOT</version><packaging>war</packaging><name>mybatis01 Maven Webapp</name><!-- FIXME change it to the project's website --><url>http://www.example.com</url><properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target></properties><dependencies><!-- ********************** junit單元測試依賴 ********************** --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><!-- ********************** Java Servlet API  ********************** --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>4.0.0</version><scope>provided</scope></dependency><!-- ********************** Mybatis依賴 ********************** --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.5</version></dependency><!-- ********************** Mysql JDBC驅動 ********************** --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.44</version></dependency><!-- **********************  日志配置  ********************** --><!--記得修改mybatis.cfg.xml添加如下內容--><!--<setting name="logImpl" value="LOG4J2"/>--><!--核心log4j2jar包--><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.9.1</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId><version>2.9.1</version></dependency><!--web工程需要包含log4j-web,非web工程不需要--><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-web</artifactId><version>2.9.1</version></dependency></dependencies><build><finalName>mybatis01</finalName><resources><!--解決mybatis-generator-maven-plugin運行時沒有將XxxMapper.xml文件放入target文件夾的問題--><resource><directory>src/main/java</directory><includes><include>**/*.xml</include></includes></resource><!--解決mybatis-generator-maven-plugin運行時沒有將jdbc.properites文件放入target文件夾的問題--><resource><directory>src/main/resources</directory><includes><include>jdbc.properties</include><include>*.xml</include></includes></resource></resources><plugins><plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.2</version><dependencies><!--使用Mybatis-generator插件不能使用太高版本的mysql驅動 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.44</version></dependency></dependencies><configuration><overwrite>true</overwrite></configuration></plugin><plugin><artifactId>maven-clean-plugin</artifactId><version>3.1.0</version></plugin><!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging --><plugin><artifactId>maven-resources-plugin</artifactId><version>3.0.2</version></plugin><plugin><artifactId>maven-compiler-plugin</artifactId><version>3.8.0</version></plugin><plugin><artifactId>maven-surefire-plugin</artifactId><version>2.22.1</version></plugin><plugin><artifactId>maven-war-plugin</artifactId><version>3.2.2</version></plugin><plugin><artifactId>maven-install-plugin</artifactId><version>2.5.2</version></plugin><plugin><artifactId>maven-deploy-plugin</artifactId><version>2.8.2</version></plugin></plugins></build>
</project>

????????2.2 數據庫文件導入連接

? ? ? ? ?2.3 修改web.xml文件

?

? ? ? ? 2.4 安裝插件

????????安裝以下插件

????????????????Free mybatis plugin:

????????????????????????有以下作用:? 1.注解支持?

????????????????????????????????????????????????2.XML映射文件支持?

????????????????????????????????????????????????3. SQL語句智能提示 ?

????????????????????????????????????????????????4. 代碼生成器?

????????????????????????????????????????????????5. 數據庫連接和查詢

Free MyBatis Plugin通過提供豐富的功能和工具,簡化了? MyBatis開發過程中的各種操作,提高了開發效率和代碼質量。

????????????????Mybatis generator:

? ? ? ? ? ? ? ? ? ? ? 有以下作用:1. 自動生成實體類

??????????????????????????????????????????? 2. 自動生成Mapper接口(包含了常用的增刪改查方法)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3. 生成XML映射文件(包含SQL語句的定義和參數映射關系)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 4. 生成的代碼可自定義

MyBatis Generator可以根據數據庫表結構自動生成CRUD代碼,減少手動編寫重復代碼的工作量,提高開發效率和代碼質量。同時,生成的代碼可根據需求進行自定義修改和擴展,以滿足具體的業務需求

????????????????mybatis tools:

? ? ? ? ? ? ? ? ? ? ? ? ? ? 有以下作用:1. 代碼生成(生成對應的實體類、Mapper接口和XML映射)

??????????????????????????????????????????????????2. SQL語句編輯和調試

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??3. SQL語句執行和結果查看

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 4. 自動生成SQL語句

MyBatis Tools是一個集成在IDE中的插件,提供了一系列輔助開發的功能,如代碼生成、SQL語句編輯和調試、SQL語句執行和結果查看等

????????????????maven helper :

? ? ? ? ? ? ? ? ? ? ? ? ? ?有以下作用:1. 依賴架包分析

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2. 快速搜索依賴

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?3. 優化依賴

?????????????????????????????????????????????????4. 自動導入依賴

????????????????幫助開發人員更方便地管理和調試 Maven 項目。

點擊File--->點擊setting--->點擊Plugins---->搜索框輸入下載

?下載之后重寫啟動軟件

重啟之后,就變成這樣,已下載即可

?

? ? ? ? 2.5 配置文件

? ? ? ? ? ? ? ? 2.5.1?mybatis.cfg.xml文件

? ? ? 關于數據庫的連接?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><!-- 引入外部配置文件 --><properties resource="jdbc.properties"/><settings><setting name="logImpl" value="LOG4J2"/></settings><!-- 別名 --><typeAliases><!--<typeAlias type="com.javaxl.model.Book" alias="Book"/>--></typeAliases><!-- 配置mybatis運行環境 --><environments default="development"><environment id="development"><!-- type="JDBC" 代表使用JDBC的提交和回滾來管理事務 --><transactionManager type="jdbc"/><!-- mybatis提供了3種數據源類型,分別是:POOLED,UNPOOLED,JNDI --><!-- POOLED 表示支持JDBC數據源連接池 --><!-- UNPOOLED 表示不支持數據源連接池 --><!-- JNDI 表示支持外部數據源連接池 --><dataSource type="POOLED"><property name="driver"value="${jdbc.driver}"/><property name="url"value="${jdbc.url}"/><property name="username" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></dataSource></environment></environments><mappers><!--<mapper resource="com/javaxl/mapper/BookMapper.xml"/>--></mappers>
</configuration>

2.5.2?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><!--  引入配置文件  --><properties resource="jdbc.properties"/><!-- 指定數據庫jdbc驅動jar包的位置 --><classPathEntry location="F:\\temp\\maven_repository\\mysql\\mysql-connector-java\\5.1.44\\mysql-connector-java-5.1.44.jar"/><!--  一個數據庫一個context  --><context id="infoGuardian"><!--  注釋  --><commentGenerator><property name="suppressAllComments" value="true"/><!--  是否取消注釋  --><property name="suppressDate" value="true"/><!--  是否生成注釋代時間戳  --></commentGenerator><!--  jdbc連接  --><jdbcConnection driverClass="${jdbc.driver}" connectionURL="${jdbc.url}" userId="${jdbc.username}" password="${jdbc.password}"/><!--  類型轉換  --><javaTypeResolver><!--  是否使用bigDecimal, false可自動轉化以下類型(Long, Integer, Short, etc.)  --><property name="forceBigDecimals" value="false"/></javaTypeResolver><!--  01 指定javaBean生成的位置  --><!--  targetPackage:指定生成的model生成所在的包名  --><!--  targetProject:指定在該項目下所在的路徑   --><javaModelGenerator targetPackage="com.zking.model" targetProject="src/main/java"><!--  是否允許子包,即targetPackage.schemaName.tableName  --><property name="enableSubPackages" value="false"/><!--  是否對model添加構造函數  --><property name="constructorBased" value="true"/><!--  是否針對string類型的字段在set的時候進行trim調用  --><property name="trimStrings" value="false"/><!--  建立的Model對象是否 不可改變  即生成的Model對象不會有 setter方法,只有構造方法  --><property name="immutable" value="false"/></javaModelGenerator><!--  02 指定sql映射文件生成的位置  --><sqlMapGenerator targetPackage="com.zking.mapper" targetProject="src/main/java"><!--  是否允許子包,即targetPackage.schemaName.tableName  --><property name="enableSubPackages" value="false"/></sqlMapGenerator><!--  03 生成XxxMapper接口  --><!--  type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper對象  --><!--  type="MIXEDMAPPER",生成基于注解的Java Model 和相應的Mapper對象  --><!--  type="XMLMAPPER",生成SQLMap XML文件和獨立的Mapper接口  --><javaClientGenerator targetPackage="com.zking.mapper" targetProject="src/main/java" type="XMLMAPPER"><!--  是否在當前路徑下新加一層schema,false路徑com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName]  --><property name="enableSubPackages" value="false"/></javaClientGenerator><!--  配置表信息  --><!--  schema即為數據庫名  --><!--  tableName為對應的數據庫表  --><!--  domainObjectName是要生成的實體類  --><!--  enable*ByExample是否生成 example類  --><!-- <table schema="" tableName="t_book" domainObjectName="Book" --><!-- enableCountByExample="false" enableDeleteByExample="false" --><!-- enableSelectByExample="false" enableUpdateByExample="false"> --><!-- &lt;!&ndash; 忽略列,不生成bean 字段 &ndash;&gt; --><!-- &lt;!&ndash; <ignoreColumn column="FRED" /> &ndash;&gt; --><!-- &lt;!&ndash; 指定列的java數據類型 &ndash;&gt; --><!-- &lt;!&ndash; <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" /> &ndash;&gt; --><!-- </table> --><table schema="" tableName="t_mvc_book" domainObjectName="Book" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false"><!--  忽略列,不生成bean 字段  --><!--  <ignoreColumn column="FRED" />  --><!--  指定列的java數據類型  --><!--  <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />  --></table></context>
</generatorConfiguration>

????????但是這里面的一些數據要根據自己情況而定,需要自行更改

jar包的位置

?路徑位置

SQL文件位置? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

Mapper接口名稱? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ?數據庫表名 及實體類的名字? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ? ? ? ? ?

?

?

?2.6 最后測試生成代碼

? ? ? ? 可以看到,下面報錯了,沒有生成代碼成功,是因為版本原因,因為我的數據庫是 8.0的版本,現在要我將版本換成 5.7的版本

?換完之后,再次測試

?

?

?這樣,MyBatis的環境搭建就已經完美辣!!!

三.MyBatis的增刪改查

? ? ? ? ? ?3.1? ? 寫service類,

先定義一個接口 BookBiz

package com.zking.biz;import com.zking.model.Book;public interface BookBiz {int deleteByPrimaryKey(Integer bid);int insert(Book record);int insertSelective(Book record);Book selectByPrimaryKey(Integer bid);int updateByPrimaryKeySelective(Book record);int updateByPrimaryKey(Book record);
}

接著寫一個類實現BookBiz接口

package com.zking.biz;import com.sun.prism.impl.Disposer;
import com.zking.mapper.BookMapper;
import com.zking.model.Book;/*** @author yinzi* @create 2023-08-19 16:13*/
public class BookBizImpl implements BookBiz{private BookMapper bm;@Overridepublic int deleteByPrimaryKey(Integer bid) {return bm.deleteByPrimaryKey(bid);}@Overridepublic int insert(Book record) {return bm.insert(record);}@Overridepublic int insertSelective(Book record) {return bm.insertSelective(record);}@Overridepublic Book selectByPrimaryKey(Integer bid) {return bm.selectByPrimaryKey(bid);}@Overridepublic int updateByPrimaryKeySelective(Book record) {return bm.updateByPrimaryKeySelective(record);}@Overridepublic int updateByPrimaryKey(Book record) {return bm.updateByPrimaryKey(record);}
}

3.2 工具類

? ? ? ? 定義一個工廠類生成SqlSession

package com.zking.Utils;import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;/*** @author yinzi* @create 2023-08-19 16:22*/
public class SessionUtil {private static SqlSessionFactory sessionFactory;private static ThreadLocal<SqlSession> threadLocal = new ThreadLocal<SqlSession>();static {sessionFactory = new SqlSessionFactoryBuilder().build(SessionUtil.class.getResourceAsStream("/mybatis.cfg.xml"));}public static SqlSession openSession() {SqlSession session = threadLocal.get();if (null == session) {session = sessionFactory.openSession();threadLocal.set(session);}return session;}public static void main(String[] args) {SqlSession session = openSession();System.out.println(session.getConnection());session.close();
//        System.out.println(session.getConnection());}
}

3.3 模擬數據測試結果

? ? ? ? 根據ID查詢

?

?刪除單個

?運行結果

?

今天介紹的內容就到這啦!!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/43702.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/43702.shtml
英文地址,請注明出處:http://en.pswp.cn/news/43702.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux命令200例:nc非常有用的網絡工具(常用)

&#x1f3c6;作者簡介&#xff0c;黑夜開發者&#xff0c;全棧領域新星創作者?。CSDN專家博主&#xff0c;阿里云社區專家博主&#xff0c;2023年6月csdn上海賽道top4。 &#x1f3c6;數年電商行業從業經驗&#xff0c;歷任核心研發工程師&#xff0c;項目技術負責人。 &…

【LVS】3、LVS+Keepalived群集

為什么用它&#xff0c;為了做高可用 服務功能 1.故障自動切換 2.健康檢查 3.節點服務器高可用-HA Keepalived的三個模塊&#xff1a; core&#xff1a;Keepalived的核心&#xff0c;負責主進程的啟動、維護&#xff1b;調用全局配置文件進行加載和解析 vrrp&#xff1a;實…

matlab使用教程(16)—圖論中圖的定義與修改

1.修改現有圖的節點和邊 此示例演示如何使用 addedge 、 rmedge 、 addnode 、 rmnode 、 findedge 、 findnode 及 subgraph 函數訪問和修改 graph 或 digraph 對象中的節點和/或邊。 1.1 添加節點 創建一個包含四個節點和四條邊的圖。s 和 t 中的對應元素用于指定每條…

使用 MBean 和 日志查看 Tomcat 線程池核心屬性數據

文章目錄 CustomTomcatThreadPoolMBeanCustomTomcatThreadPool CustomTomcatThreadPoolMBean com.qww.config;public interface CustomTomcatThreadPoolMBean {String getStatus(); }CustomTomcatThreadPool package com.qww.config;import com.alibaba.fastjson.JSON; impor…

三本書與三場發布會,和鯨社區重新定義編程類書籍從閱讀到實踐新體驗

當 AI 開發者社區配備 AI 基礎設施開發平臺工具時&#xff0c;它還能做什么&#xff1f; 答案是&#xff1a;過去半年&#xff0c;和鯨社區憑借在氣象、醫學、社科等垂直領域的長期積累以及多方伙伴的支持&#xff0c;聯合舉辦了三場新書發布會——從 Python 到 R 語言 、從氣…

Midjourney Prompt 提示詞速查表 v5.2

Midjourney 最新的版本更新正不斷推出令人興奮的新功能。這雖然不斷擴展了我們的AI繪圖工具箱&#xff0c;但有時也會讓我們難以掌握所有實際可以使用的功能和參數。 針對此問題, 小編整理了 "Midjourney Prompt 提示詞速查表"&#xff0c;這是一個非常方便的 Midjo…

Java“牽手“拼多多商品詳情頁面數據獲取方法,拼多多API實現批量商品數據抓取示例

拼多多商城是一個網上購物平臺&#xff0c;售賣各類商品&#xff0c;包括服裝、鞋類、家居用品、美妝產品、電子產品等。要獲取拼多多商品詳情數據&#xff0c;您可以通過開放平臺的接口或者直接訪問拼多多商城的網頁來獲取商品詳情信息。以下是兩種常用方法的介紹&#xff1a;…

Linux:shell腳本數組和腳本免交互

目錄 一、shell數組的定義 二、定義數組的方式 &#xff08;1&#xff09;數組名(value1 value2 value3 value4 ...) &#xff08;2&#xff09;獲取數組的長度 &#xff08;3&#xff09;獲取數組下標對應的值 &#xff08;4&#xff09;數組的遍歷 &#xff08;5&#x…

qsort函數詳解

大家好&#xff0c;我是蘇貝&#xff0c;本篇博客帶大家了解qsort函數&#xff0c;如果你覺得我寫的不錯的話&#xff0c;可以給我一個贊&#x1f44d;嗎&#xff0c;感謝?? 文章目錄 一. qsort函數參數詳解1.數組首元素地址base2.數組的元素個數num和元素所占內存空間大小w…

ThreeJS——在3D地球上標記中國地圖板塊

Threejs3D地球標記中國地圖位置 先看效果 地球預覽視頻效果 用到的庫 TweenJS (動畫庫)用來做相機轉場的動畫Jquery(這里只用到一個 each 循環方法&#xff0c;可以使用 js 去寫)ThreeJS (3D 地球制作)100000.json(全國城市經緯度)d3.v6.js用來設置平面轉3D效果(本來考慮做成…

深入解析IDS/IPS與SSL/TLS和網絡安全

目錄 防火墻 IDS IPS DMZ VPN VPS SSL/TLS 動態IP 靜態IP 防火墻 防火墻是一種網絡安全設備&#xff0c;用于監控和控制網絡流量&#xff0c;保護網絡免受未經授權的訪問、惡意攻擊和威脅。防火墻可以基于規則進行數據包過濾&#xff0c;允許或阻止特定類型的流量通過…

Lead-Lag控制器形式

對于Lead-Lag&#xff08;超前—滯后&#xff09;&#xff0c;有的地方叫做控制器 Controller&#xff0c;有的地方叫補償器 Compensator&#xff0c;有的地方叫濾波器 Filter&#xff0c;都是一個東西。 Lead-Lag也有幾種不同的形式&#xff0c;一種是 G c ( s ) 1 a T s 1…

QT設置widget背景圖片

首先說方法&#xff0c;在給widget或者frame或者其他任何類型的控件添加背景圖時&#xff0c;在樣式表中加入如下代碼&#xff0c;指定某個控件&#xff0c;設置其背景。 類名 # 控件名 { 填充方式&#xff1a;圖片路徑 } 例如&#xff1a; QWidget#Widget {border-image: url…

無涯教程-TensorFlow - 優化器

Optimizers是擴展類&#xff0c;其中包括用于訓練特定模型的附加信息&#xff0c;Optimizers類使用給定的參數初始化&#xff0c;用于提高速度和性能&#xff0c;以訓練特定模型。 TensorFlow的基本Optimizers是- tf.train.Optimizer 此類在tensorflow/python/training/opti…

C語言:深度學習知識儲備

目錄 數據類型 每種類型的大小是多少呢&#xff1f; 變量 變量的命名&#xff1a; 變量的分類&#xff1a; 變量的作用域和生命周期 作用域&#xff1a; 生命周期&#xff1a; 常量 字符串轉義字符注釋 字符串&#xff1a; 轉義字符 操作符&#xff1a; 算術操作符…

圖神經網絡 day2 圖的分類

圖神經網絡基礎算法 1 GCN2 GraphSAGE2.1 采樣&#xff1a;采樣固定長度的鄰居2.2 聚合2.3 GraphSAGE_minibatch2.4 GraphSAGE_embedding 3 GAT4. 圖網絡的分類4.1 遞歸圖神經網絡 RGNN4.2 圖卷積神經網絡GCN4.3 圖注意力網絡 GAT4.4 圖自動編碼 GAE4.5 圖時空網絡 GSTN4.6 圖生…

typeScript 接口和類

工具&#xff1a; PlayGround 接口 接口用來定義對象的結構和類型&#xff0c;描述對象應該具有哪些屬性和方法。 它僅用于聲明&#xff0c;而不是實現&#xff1b; 這對于編寫可重用的代碼非常有用。它可用于&#xff1a; 關鍵字是interface&#xff0c; 注意&#xff1a;它…

OSPF在廣播類型的網絡拓撲中DR和BDR的選舉

指定路由器&#xff08;DR&#xff09;&#xff1a; 一個網段上的其他路由器都和指定路由器&#xff08;DR&#xff09;構成鄰接關系&#xff0c;而不是它們互相之間構成鄰接關系。 備份指定路由器&#xff08;BDR&#xff09;&#xff1a; 當DR出現問題&#xff0c;由BDR接…

redis事務對比Lua腳本區別是什么

redis官方對于lua腳本的解釋&#xff1a;Redis使用同一個Lua解釋器來執行所有命令&#xff0c;同時&#xff0c;Redis保證以一種原子性的方式來執行腳本&#xff1a;當lua腳本在執行的時候&#xff0c;不會有其他腳本和命令同時執行&#xff0c;這種語義類似于 MULTI/EXEC。從別…

中間件: Kafka安裝部署

單機部署 下載二進制包 cd /opt/soft/archive wget http://archive.apache.org/dist/kafka/3.2.0/kafka_2.12-3.2.0.tgz tar -zxf kafka_2.12-3.2.0.tgz -C ../ cd ../kafka_2.12-3.2.0修改配置 vim config/server.propertiesadvertised.listenersPLAINTEXT://39.105.11.50:…