97色伦色在线综合视频,无玛专区,18videosex性欧美黑色,日韩黄色电影免费在线观看,国产精品伦理一区二区三区,在线视频欧美日韩,亚洲欧美在线中文字幕不卡

益陽(yáng)營(yíng)銷(xiāo)型網(wǎng)站建設(shè)湖南做網(wǎng)站 磐石網(wǎng)絡(luò)引領(lǐng)

鶴壁市浩天電氣有限公司 2026/01/24 08:26:55
益陽(yáng)營(yíng)銷(xiāo)型網(wǎng)站建設(shè),湖南做網(wǎng)站 磐石網(wǎng)絡(luò)引領(lǐng),seo優(yōu)化工具使用教程,云匠網(wǎng)怎么接單1. springboot項(xiàng)目和[maven]項(xiàng)目的區(qū)別#xff1f;#xff08;1#xff09;打包方式#xff1a;傳統(tǒng)項(xiàng)目如果需要打成[war 包]#xff0c;需要在[WEB-INF 目錄](méi)結(jié)構(gòu)配置 web.xml 文件#xff1b;springboot 則不需要 #xff08;2#xff09;項(xiàng)目啟動(dòng)方式#xff1a;傳…1. springboot項(xiàng)目和[maven]項(xiàng)目的區(qū)別1打包方式傳統(tǒng)項(xiàng)目如果需要打成[war 包]需要在[WEB-INF 目錄](méi)結(jié)構(gòu)配置 web.xml 文件springboot 則不需要 2項(xiàng)目啟動(dòng)方式傳統(tǒng)[web 項(xiàng)目]啟動(dòng)方式在 eclipse 和 tomcat 插件中導(dǎo)入項(xiàng)目然后啟動(dòng) tomcat項(xiàng)目也啟動(dòng)了。或者將項(xiàng)目打成[war 包]放入 tomcat 中啟動(dòng) tomcat。采用 springboot 項(xiàng)目啟動(dòng)如下圖所示打開(kāi)HelloWorldApplication.java這個(gè)類(lèi)每個(gè)項(xiàng)目都有類(lèi)名自定這是一個(gè)帶有 main 方法的類(lèi)點(diǎn)擊 main 方法右鍵 run as -java application。3配置文件的區(qū)別二者的配置文件都是放在 src/main/resources 下面 傳統(tǒng)項(xiàng)目配置文件較多必須包含 applicationContext.xml 這個(gè)核心配置文件 采用 springboot 項(xiàng)目配置文件較少相比傳統(tǒng)項(xiàng)目可以說(shuō)配置文件極少必須包含 application.properties或者是 application.yml這個(gè)配置文件2. spring mvc 工作流程1、首先用戶發(fā)送請(qǐng)求到前端控制器前端控制器根據(jù)請(qǐng)求信息如 URL來(lái)決定選擇哪一個(gè)頁(yè)面控制器進(jìn)行處理并把請(qǐng)求委托給它即以前的控 #技術(shù)分享制器的控制邏輯部分2、頁(yè)面控制器接收到請(qǐng)求后進(jìn)行功能處理首先需要收集和綁定請(qǐng)求參數(shù)到一個(gè)對(duì)象這個(gè)對(duì)象在 Spring Web MVC 中叫命令對(duì)象并進(jìn)行驗(yàn)證然后將命令對(duì)象委托給業(yè)務(wù)對(duì)象進(jìn)行處理處理完畢后返回一個(gè) ModelAndView模型數(shù)據(jù)和邏輯視圖名3、前端控制器收回控制權(quán)然后根據(jù)返回的邏輯視圖名選擇相應(yīng)的視圖進(jìn)行渲染并把模型數(shù)據(jù)傳入以便視圖渲染4、前端控制器再次收回控制權(quán)將響應(yīng)返回給用戶。3. 請(qǐng)簡(jiǎn)述一下IO流IO 流用來(lái)處理設(shè)備之間的數(shù)據(jù)傳輸Java 程序中對(duì)于數(shù)據(jù)的輸入/輸出操作 都是以“流”的方式進(jìn)行的。java.io 包下提供了各種“流”類(lèi)的接口用以獲取不同種類(lèi)的數(shù)據(jù)并通過(guò)標(biāo)準(zhǔn)的方法輸入或輸出數(shù)據(jù)。對(duì)于計(jì)算機(jī)來(lái)說(shuō)數(shù)據(jù)都是以二進(jìn)制形式讀出或?qū)懭氲?。我們可以把文件想象為一個(gè)桶我們可以通過(guò)管道將桶里的水抽出來(lái)。這里的管道也就相當(dāng)于 Java 中的流。流的本質(zhì)是一種有序的數(shù)據(jù)集合有數(shù)據(jù)源和目的地。輸入讀取外部數(shù)據(jù)磁盤(pán)、光盤(pán)等存儲(chǔ)設(shè)備的數(shù)據(jù)到程序內(nèi)存中。輸出將程序內(nèi)存數(shù)據(jù)輸出到磁盤(pán)、光盤(pán)等存儲(chǔ)設(shè)備中。流的分類(lèi)按照流的方向輸出輸入都是站在程序所在內(nèi)存的角度劃分的 輸入流只能從中讀數(shù)據(jù) 輸出流只能向文件中寫(xiě)數(shù)據(jù)字節(jié)流將數(shù)據(jù)解釋為原始的二進(jìn)制數(shù)據(jù) 讀寫(xiě)均為字節(jié)數(shù)據(jù)二進(jìn)制數(shù)據(jù)不需要編碼和解碼比文本 Io 效率更高可移植與主句編碼方式無(wú)關(guān)字符流將數(shù)據(jù)解釋為字符數(shù)據(jù)字符流將原始數(shù)據(jù)解析成一種字符文本數(shù)據(jù)存儲(chǔ) 依賴文件編碼方式它輸入輸出需要編碼解碼。篇幅限制下面就只能給大家展示小冊(cè)部分內(nèi)容了。整理了一份核心面試筆記包括了Java面試、Spring、JVM、MyBatis、Redis、MySQL、并發(fā)編程、微服務(wù)、Linux、Springboot、SpringCloud、MQ、Kafka 面試專題需要全套面試筆記及答案可以在文末獲取4. 關(guān)系型數(shù)據(jù)庫(kù)和非關(guān)系型數(shù)據(jù)庫(kù)關(guān)系型數(shù)據(jù)庫(kù)最典型的數(shù)據(jù)結(jié)構(gòu)是表由二維表及其之間的聯(lián)系所組成的一個(gè)數(shù)據(jù)組織。當(dāng)今十大主流的關(guān)系型數(shù)據(jù)庫(kù) OracleMicrosoft SQL ServerMySQLPostgreSQLDB2Microsoft AccessSQLiteTeradataMariaDB(MySQL 的一個(gè)分支)SAP優(yōu)點(diǎn)1、易于維護(hù)都是使用表結(jié)構(gòu)格式一致2、使用方便SQL 語(yǔ)言通用可用于復(fù)雜查詢3、復(fù)雜操作支持 SQL可用于一個(gè)表以及多個(gè)表之間非常復(fù)雜的查詢。缺點(diǎn)1、讀寫(xiě)性能較差尤其是海量數(shù)據(jù)的高效率讀寫(xiě)2、硬盤(pán) I/O 要求高網(wǎng)站的用戶并發(fā)性非常高往往達(dá)到每秒上萬(wàn)次讀寫(xiě)請(qǐng)求對(duì)于傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)來(lái)說(shuō)硬盤(pán) I/O 是一個(gè)很大的瓶頸 3、拓展困難 4、性能欠佳在關(guān)系型數(shù)據(jù)庫(kù)中導(dǎo)致性能欠佳的最主要原因是多表的關(guān)聯(lián)查詢以及復(fù)雜的數(shù)據(jù)分析類(lèi)型的復(fù)雜 SQL 報(bào)表查詢。為了保證數(shù)據(jù)庫(kù)的 ACID 特性原子性、一致性、隔離性、持久性必須盡量按照其要求的范式進(jìn)行設(shè)計(jì)關(guān)系型數(shù)據(jù)庫(kù)中的表都是存儲(chǔ)一個(gè)格式化的數(shù)據(jù)結(jié)構(gòu)。非關(guān)系型數(shù)據(jù)庫(kù)指非關(guān)系型的分布式的且一般不保證遵循 ACID 原則的數(shù)據(jù)存儲(chǔ)系統(tǒng)。非關(guān)系型數(shù)據(jù)庫(kù)嚴(yán)格上不是一種數(shù)據(jù)庫(kù)應(yīng)該是一種數(shù)據(jù)結(jié)構(gòu)化存儲(chǔ)方法的集合可以是文檔或者鍵值對(duì)等。優(yōu)點(diǎn)1、格式靈活存儲(chǔ)數(shù)據(jù)的格式可以是 key,value 形式、文檔形式、圖片形式等等文檔形式、圖片形式等等使用靈活應(yīng)用場(chǎng)景廣泛而關(guān)系型數(shù)據(jù)庫(kù)則只支持基礎(chǔ)類(lèi)型。2、查詢便捷可以根據(jù)需要去添加自己需要的字段為了獲取用戶的不同信息不像關(guān)系型數(shù)據(jù)庫(kù)中要對(duì)多表進(jìn)行關(guān)聯(lián)查詢。僅需要根據(jù) id 取出相應(yīng)的 value 就可以完成查詢。3、速度快nosql 可以使用硬盤(pán)或者隨機(jī)存儲(chǔ)器作為載體而關(guān)系型數(shù)據(jù)庫(kù)只能使用硬盤(pán)4、高擴(kuò)展性Nosql 基于鍵值對(duì)數(shù)據(jù)之間沒(méi)有耦合性所以非常容易水平擴(kuò)展。關(guān)系型數(shù)據(jù)庫(kù)有類(lèi)似 join 這樣的多表查詢機(jī)制的限制導(dǎo)致擴(kuò)展很艱難。5、成本低nosql 數(shù)據(jù)庫(kù)部署簡(jiǎn)單基本都是開(kāi)源軟件。缺點(diǎn)1、不提供 sql 支持學(xué)習(xí)和使用成本較高2、無(wú)事務(wù)處理3、只適合存儲(chǔ)一些較為簡(jiǎn)單的數(shù)據(jù)對(duì)于需要進(jìn)行較復(fù)雜查詢的數(shù)據(jù)關(guān)系型數(shù)據(jù)庫(kù)顯的更為合適。4、不適合持久存儲(chǔ)海量數(shù)據(jù)常見(jiàn)的非關(guān)系型數(shù)據(jù)庫(kù)有 redismongdbHbase。5. MySQL數(shù)據(jù)庫(kù)優(yōu)化 SQL選擇正確的存儲(chǔ)引擎。每個(gè)引擎都有利有弊比如 MyISAM 適用于大量查詢對(duì)大量寫(xiě)操作并不是很好 update 一個(gè)字段都會(huì)把整個(gè)表鎖起來(lái)而I nnodb 對(duì)一些小的應(yīng)用它比 MyISAM 慢但它支持行鎖再寫(xiě)操作的時(shí)候很優(yōu)秀它還支持更多的高級(jí)應(yīng)用。優(yōu)化字段的數(shù)據(jù)類(lèi)型一個(gè)原則越小的越快如果一個(gè)表只有幾列那我們就不用用 INT 來(lái)做主鍵可以使用 MEDIUMINT SMALLINT 或是更小的 TINYINT 會(huì)更經(jīng)濟(jì)一些如果不需要記錄時(shí)間使用 DATE 要比 DATETIME 好的多也要留夠足夠的空間進(jìn)行擴(kuò)展。為搜索字段添加索引索引不一定只添加給主鍵或唯一的字段如果在表中有某個(gè)字段經(jīng)常用來(lái)做搜索那就為它建立索引如果要搜索的字段是大的文本字段那應(yīng)該為它建立全文索引。避免使用 select * 因?yàn)閺臄?shù)據(jù)庫(kù)讀出的數(shù)據(jù)越多那么查詢就會(huì)越慢。如果數(shù)據(jù)庫(kù)服務(wù)和WEB服務(wù)器在不同的機(jī)器上的話還會(huì)增加網(wǎng)絡(luò)傳輸?shù)呢?fù)載。即使要查詢表的所有字段也盡量不要用 * 通配符。使用 ENUM 而不是 VARCHARENUM 類(lèi)型是非??旌途o湊的它保存的是 TINYINT 但外表上顯示的是字符串做一些選項(xiàng)列表很好比如性別民族部門(mén)狀態(tài)之類(lèi)的字段取值有限而且固定。盡可能使用 NOT NULLNULL 其實(shí)也需要額外空間的在進(jìn)行比較的時(shí)候程序也會(huì)變得復(fù)雜并不是并不可以用 NULL 在現(xiàn)實(shí)的復(fù)雜情況下依然會(huì)有些情況需要使用 NULL 值。固定長(zhǎng)度的表會(huì)更快如果表中的所有字段都是固定長(zhǎng)度的那整個(gè)表會(huì)被認(rèn)為是 “static” 或“ fixed-lenght” 。例如表中沒(méi)有 VARCHAR TEXT BLOB 只要表中其中一個(gè)字段是這些類(lèi)型那么這個(gè)表就不是“固定長(zhǎng)度靜態(tài)表”了這樣的話 MySQL 引擎會(huì)用另一種方法來(lái)處理。固定長(zhǎng)度的表也容易被緩存和重建唯一的副作用就是固定長(zhǎng)度的字段會(huì)浪費(fèi)一些空間因?yàn)楣潭ㄩL(zhǎng)度的字段無(wú)論用不用都會(huì)分配那么多的空間。為什么要避免使用 join 查詢減少消耗。對(duì)于大流量網(wǎng)站如何解決各頁(yè)面統(tǒng)計(jì)訪問(wèn)量問(wèn)題確認(rèn)服務(wù)器是否能支撐當(dāng)前訪問(wèn)量?jī)?yōu)化數(shù)據(jù)庫(kù)訪問(wèn)禁止外部訪問(wèn)如圖片盜鏈控制文件下載使用不同主機(jī)進(jìn)行分流使用瀏覽統(tǒng)計(jì)軟件了解訪問(wèn)量有針對(duì)性的進(jìn)行優(yōu)化SQL 注入的主要特點(diǎn)變種極多攻擊簡(jiǎn)單危害極大。未經(jīng)授權(quán)操作數(shù)據(jù)庫(kù)的數(shù)據(jù)。惡意篡改網(wǎng)頁(yè)。網(wǎng)頁(yè)掛木馬。私自添加系統(tǒng)賬號(hào)或是數(shù)據(jù)庫(kù)使用者賬號(hào)。優(yōu)化數(shù)據(jù)庫(kù)的方法選取最適合的字段屬性盡可能減少定義字段寬度盡量把字段設(shè)成 NOT NULL 。使用 exists 替代 in 用 not exists 替代 not in 。使用連接 JOIN 來(lái)替代子查詢。適用聯(lián)合 NUION 來(lái)代替手動(dòng)創(chuàng)建的臨時(shí)表。事務(wù)處理。鎖定表優(yōu)化事務(wù)處理。適當(dāng)用外鍵優(yōu)化鎖定表。建立索引。優(yōu)化查詢語(yǔ)句。數(shù)據(jù)庫(kù)中的事務(wù)是什么事務(wù)作為一個(gè)單元的一組有序的數(shù)據(jù)操作如果組中的所有操作都完成則認(rèn)定事務(wù)成功即使只有一個(gè)失敗事務(wù)也不成功。如果所有操作完成事務(wù)則進(jìn)行提交其修改將作用于所有其他數(shù)據(jù)庫(kù)進(jìn)程。如果一個(gè)操作失敗則事務(wù)將回滾該事務(wù)所有的操作的影響都會(huì)取消。ACID 四大特性原子性不可分割事務(wù)要么全部被執(zhí)行要么全部不執(zhí)行。一致性事務(wù)的執(zhí)行使得數(shù)據(jù)庫(kù)從一種正確的狀態(tài)轉(zhuǎn)換成另一種正確的狀態(tài)。隔離性在事務(wù)正確提交前不允許把該事務(wù)對(duì)數(shù)據(jù)的任何改變提供給任何其他事務(wù)。持久性事務(wù)正確提交后將結(jié)果永久保存到數(shù)據(jù)庫(kù)中即使在事務(wù)提交后有了其他故障事務(wù)處理結(jié)果也會(huì)得到保存。索引的目的是什么快速訪問(wèn)數(shù)據(jù)表中特定信息提高檢索速度。創(chuàng)建唯一性索引保證每一行數(shù)據(jù)的唯一性。加速表和表之間的連接。使用分組和排序子句進(jìn)行數(shù)據(jù)檢索時(shí)可顯著的減少分組和排序的時(shí)間。對(duì) SQL 語(yǔ)句的優(yōu)化方法避免在索引列上使用計(jì)算。避免在索引列上使用 IS NULL 和 IS NOT NULL 。對(duì)查詢進(jìn)行優(yōu)化盡量避免全表掃描首先因該考慮在 where 和 order by 涉及的列上建立索引。避免在 where 子句對(duì)字段進(jìn)行null值判斷這件導(dǎo)致引擎放棄使用索引而進(jìn)行全表掃描。避免在 where 子句中對(duì)字段進(jìn)行表達(dá)式操作也會(huì)導(dǎo)致引擎放棄使用索引而進(jìn)行全表掃描。char 和 varchar 的區(qū)別char 類(lèi)型的數(shù)據(jù)列里每個(gè)值都占 M 個(gè)字節(jié)如果長(zhǎng)度小于 M就會(huì)在它的右邊用空格字符進(jìn)行補(bǔ)足在檢索操作中填補(bǔ)出來(lái)的空格符將會(huì)被去掉。vachar 類(lèi)型的數(shù)據(jù)列里每個(gè)值只占用剛好夠用的字節(jié)再加上一個(gè)用來(lái)記錄長(zhǎng)度的字節(jié)所以總長(zhǎng)度為 L1 字節(jié)。SQL 問(wèn)題臟讀在一個(gè)事務(wù)處理過(guò)程中讀取到了另一個(gè)未提交事務(wù)中的數(shù)據(jù)?!纠印緼 在一個(gè)轉(zhuǎn)賬事務(wù)中轉(zhuǎn)了100給 B此時(shí) B 讀到了這個(gè)轉(zhuǎn)賬的數(shù)據(jù)然后做了一些操作給 A 發(fā)貨或是其他可是這個(gè)時(shí)候 A 的事務(wù)并沒(méi)有提交如果 A 回滾了事務(wù)那這就是臟讀。不可重復(fù)讀對(duì)數(shù)據(jù)庫(kù)中的某個(gè)數(shù)據(jù)一個(gè)事務(wù)范圍內(nèi)多次查詢卻返回了不同的數(shù)據(jù)值是由于在查詢間隔被另一個(gè)事務(wù)修改并提交了?!臼纠渴聞?wù) A 在讀取某一數(shù)據(jù)而事務(wù) B 立馬修改了這個(gè)數(shù)據(jù)并且提交了事務(wù)到數(shù)據(jù)庫(kù)事務(wù) A 再次讀取就得到了不同的結(jié)果。發(fā)生了不重復(fù)讀?;米x事務(wù)非獨(dú)立執(zhí)行時(shí)發(fā)生的一種現(xiàn)象?!臼纠渴聞?wù) A 對(duì)一個(gè)表中所有的行的某個(gè)數(shù)據(jù)項(xiàng)做了從“1”修改為“2”的操作這時(shí)事務(wù) B 又對(duì)這個(gè)表中插入了一行數(shù)據(jù)項(xiàng)這個(gè)數(shù)據(jù)的數(shù)值還是“1”并且提給了數(shù)據(jù)庫(kù)如果事務(wù) A 查看剛剛修改的數(shù)據(jù)會(huì)發(fā)現(xiàn)還有一數(shù)據(jù)沒(méi)有修改而這行數(shù)據(jù)時(shí)事務(wù) B 中添加的就像產(chǎn)生的幻覺(jué)一樣。發(fā)生了幻讀。MySQL 事務(wù)隔離級(jí)別read uncmmited 讀到未提交數(shù)據(jù)最低級(jí)別無(wú)法保證任情況read commited 讀已提交可避免臟讀repeatable read 可重復(fù)讀可避免臟讀、不可重復(fù)讀serializable 串行事務(wù)可避免臟讀、不可重復(fù)讀、幻讀MySQL 默認(rèn)事務(wù)隔離級(jí)別為 Repeatable Read可重復(fù)讀】MySQL 臨時(shí)表什么是臨時(shí)表臨時(shí)表是 MySQL 用于存儲(chǔ)中間結(jié)果集的表臨時(shí)表只在當(dāng)前連接可看當(dāng)連接關(guān)閉時(shí)會(huì)自動(dòng)刪除表并釋放所有空間。為什么會(huì)產(chǎn)生臨時(shí)表一般是因?yàn)閺?fù)雜的 SQL 導(dǎo)致臨時(shí)表被大量創(chuàng)建6. MyBatis簡(jiǎn)介MyBatis 是一款優(yōu)秀的持久層框架一個(gè)半 ORM對(duì)象關(guān)系映射框架它支持定制化 SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis 可以使用簡(jiǎn)單的 XML 或注解來(lái)配置和映射原生類(lèi)型、接口和 Java 的 POJOPlain Old Java Objects普通老式 Java 對(duì)象為數(shù)據(jù)庫(kù)中的記錄。ORMObject Relational Mapping對(duì)象關(guān)系映射是一種為了解決關(guān)系型數(shù)據(jù)庫(kù)數(shù)據(jù)與簡(jiǎn)單 Java 對(duì)象POJO的映射關(guān)系的技術(shù)。簡(jiǎn)單的說(shuō)ORM 是通過(guò)使用描述對(duì)象和數(shù)據(jù)庫(kù)之間映射的元數(shù)據(jù)將程序中的對(duì)象自動(dòng)持久化到關(guān)系型數(shù)據(jù)庫(kù)中。為什么說(shuō) Mybatis 是半自動(dòng) ORM 映射工具它與全自動(dòng)的區(qū)別在哪里Hibernate 屬于全自動(dòng) ORM 映射工具使用 Hibernate 查詢關(guān)聯(lián)對(duì)象或者關(guān)聯(lián)集合對(duì)象時(shí)可以根據(jù)對(duì)象關(guān)系模型直接獲取所以它是全自動(dòng)的。而 Mybatis 在查詢關(guān)聯(lián)對(duì)象或關(guān)聯(lián)集合對(duì)象時(shí)需要手動(dòng)編寫(xiě) sql 來(lái)完成所以稱之為半自動(dòng) ORM 映射工具。JDBC 開(kāi)發(fā)存在的問(wèn)題頻繁創(chuàng)建數(shù)據(jù)庫(kù)連接對(duì)象、釋放容易造成系統(tǒng)資源浪費(fèi)影響系統(tǒng)性能??梢允褂眠B接池解決這個(gè)問(wèn)題。但是使用 jdbc 需要自己實(shí)現(xiàn)連接池。sql 語(yǔ)句定義、參數(shù)設(shè)置、結(jié)果集處理存在硬編碼。實(shí)際項(xiàng)目中 sql 語(yǔ)句變化的可能性較大一旦發(fā)生變化需要修改 java 代碼系統(tǒng)需要重新編譯重新發(fā)布。不好維護(hù)。使用 preparedStatement 向占有位符號(hào)傳參數(shù)存在硬編碼因?yàn)?sql 語(yǔ)句的 where 條件不一定可能多也可能少修改 sql 還要修改代碼系統(tǒng)不易維護(hù)。結(jié)果集處理存在重復(fù)代碼處理麻煩。如果可以映射成 Java 對(duì)象會(huì)比較方便。JDBC 編程有哪些不足之處MyBatis 是如何解決這些問(wèn)題的1、數(shù)據(jù)庫(kù)鏈接創(chuàng)建、釋放頻繁造成系統(tǒng)資源浪費(fèi)從而影響系統(tǒng)性能如果使用數(shù)據(jù)庫(kù)連接池可解決此問(wèn)題。解決在 mybatis-config.xml 中配置數(shù)據(jù)鏈接池使用連接池管理數(shù)據(jù)庫(kù)連接。2、Sql 語(yǔ)句寫(xiě)在代碼中造成代碼不易維護(hù)實(shí)際應(yīng)用 sql 變化的可能較大sql 變動(dòng)需要改變 java 代碼。解決將 Sql 語(yǔ)句配置在 XXXXmapper.xml 文件中與 java 代碼分離。3、向 sql 語(yǔ)句傳參數(shù)麻煩因?yàn)?sql 語(yǔ)句的 where 條件不一定可能多也可能少占位符需要和參數(shù)一一對(duì)應(yīng)。解決Mybatis 自動(dòng)將 java 對(duì)象映射至 sql 語(yǔ)句。4、對(duì)結(jié)果集解析麻煩sql 變化導(dǎo)致解析代碼變化且解析前需要遍歷如果能將數(shù)據(jù)庫(kù)記錄封裝成 pojo 對(duì)象解析比較方便。解決Mybatis 自動(dòng)將 sql 執(zhí)行結(jié)果映射至 java 對(duì)象。Mybatis 優(yōu)缺點(diǎn)優(yōu)點(diǎn)與傳統(tǒng)的數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)相比ORM 有以下優(yōu)點(diǎn)基于 SQL 語(yǔ)句編程相當(dāng)靈活不會(huì)對(duì)應(yīng)用程序或者數(shù)據(jù)庫(kù)的現(xiàn)有設(shè)計(jì)造成任何影響SQL 寫(xiě)在 XML 里解除 sql 與程序代碼的耦合便于統(tǒng)一管理提供 XML 標(biāo)簽支持編寫(xiě)動(dòng)態(tài) SQL 語(yǔ)句并可重用 與 JDBC 相比減少了50%以上的代碼量消除了 JDBC 大量冗余的代碼不需要手動(dòng)開(kāi)關(guān)連接 很好的與各種數(shù)據(jù)庫(kù)兼容因?yàn)?MyBatis 使用 JDBC 來(lái)連接數(shù)據(jù)庫(kù)所以只要 JDBC 支持的數(shù)據(jù)庫(kù) MyBatis 都支持 提供映射標(biāo)簽支持對(duì)象與數(shù)據(jù)庫(kù)的 ORM 字段關(guān)系映射提供對(duì)象關(guān)系映射標(biāo)簽支持對(duì)象關(guān)系組件維護(hù) 能夠與 Spring 很好的集成缺點(diǎn)SQL 語(yǔ)句的編寫(xiě)工作量較大尤其當(dāng)字段多、關(guān)聯(lián)表多時(shí)對(duì)開(kāi)發(fā)人員編寫(xiě) SQL 語(yǔ)句的功底有一定要求 SQL 語(yǔ)句依賴于數(shù)據(jù)庫(kù)導(dǎo)致數(shù)據(jù)庫(kù)移植性差不能隨意更換數(shù)據(jù)庫(kù)MyBatis 編程步驟是什么樣的1、創(chuàng)建 SqlSessionFactory2、通過(guò) SqlSessionFactory 創(chuàng)建 SqlSession3、通過(guò) sqlsession 執(zhí)行數(shù)據(jù)庫(kù)操作4、調(diào)用 session.commit()提交事務(wù)5、調(diào)用 session.close()關(guān)閉會(huì)話篇幅限制下面就只能給大家展示小冊(cè)部分內(nèi)容了。整理了一份核心面試筆記包括了Java面試、Spring、JVM、MyBatis、Redis、MySQL、并發(fā)編程、微服務(wù)、Linux、Springboot、SpringCloud、MQ、Kafka 面試專題需要全套面試筆記及答案可以點(diǎn)擊下方名片獲取
版權(quán)聲明: 本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)聯(lián)系我們進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

wap網(wǎng)站制作app有幫忙做ppt的網(wǎng)站或人嗎

wap網(wǎng)站制作app,有幫忙做ppt的網(wǎng)站或人嗎,龍崗區(qū)最新通告,wordpress4.7.2 xss還記得上次重裝系統(tǒng)時(shí)的抓狂嗎#xff1f;找U盤(pán)、下鏡像、搞啟動(dòng)設(shè)置...簡(jiǎn)直比寫(xiě)代碼還燒腦#xf

2026/01/23 00:19:01

php做的網(wǎng)站開(kāi)發(fā)商交房必備條件

php做的網(wǎng)站,開(kāi)發(fā)商交房必備條件,天津建設(shè)監(jiān)理協(xié)會(huì)網(wǎng)站,php是網(wǎng)站開(kāi)發(fā)的語(yǔ)言嗎一.項(xiàng)目介紹在語(yǔ)音處理與自然語(yǔ)言交互等場(chǎng)景中#xff0c;將語(yǔ)音準(zhǔn)確轉(zhuǎn)換為文本并提取有價(jià)值的語(yǔ)音特征是關(guān)鍵需求。傳統(tǒng)語(yǔ)

2026/01/23 06:03:01

手機(jī)訪問(wèn)pc網(wǎng)站自動(dòng)跳轉(zhuǎn)手機(jī)端網(wǎng)站代碼懷化網(wǎng)絡(luò)科技有限公司

手機(jī)訪問(wèn)pc網(wǎng)站自動(dòng)跳轉(zhuǎn)手機(jī)端網(wǎng)站代碼,懷化網(wǎng)絡(luò)科技有限公司,花都電子商務(wù)網(wǎng)站建設(shè),某企業(yè)網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)模板網(wǎng)易云音樂(lè)NCM加密格式解碼技術(shù)深度解析 【免費(fèi)下載鏈接】ncmdump 項(xiàng)目地址: h

2026/01/23 07:51:01

個(gè)人網(wǎng)站建設(shè)案例教程做全國(guó)社保代理的網(wǎng)站

個(gè)人網(wǎng)站建設(shè)案例教程,做全國(guó)社保代理的網(wǎng)站,株洲能建網(wǎng)站的有哪些,哪里網(wǎng)站建設(shè)聯(lián)系掌握正確的伙伴培養(yǎng)策略和屬性加點(diǎn)方案是提升團(tuán)隊(duì)?wèi)?zhàn)力的關(guān)鍵。本文通過(guò)科學(xué)的升級(jí)路線規(guī)劃#xff0c;結(jié)合職業(yè)協(xié)同效果#x

2026/01/21 15:34:01