大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) 2020年百度Java開發(fā)面試題目

2020年百度Java開發(fā)面試題目

更新時間:2019-12-30 14:07:35 來源:動力節(jié)點 瀏覽3428次


2020年百度Java開發(fā)面試題目


  1. java 中 volatile 和 synchronized 有什么區(qū)別?


  A. volatile 本質(zhì)是在告訴jvm 當(dāng)前變量在寄存器(工作內(nèi)存)中的值是不確定的, 需要從主存中讀取;synchronized 則是鎖定當(dāng)前變量,只有當(dāng)前線程可以訪問該變量,其他線程被阻塞住。


  B. volatile 僅能使用在變量級別;synchronized 則可以使用在變量、方法、和類級別的。


  C. volatile 僅能實現(xiàn)變量的修改可見性,并不能保證原子性;而 synchronized則可以保證變量的修改可見性和原子性。


  D. volatile 不會造成線程的阻塞;synchronized 可能會造成線程的阻塞。


  E. volatile 標(biāo)記的變量不會被編譯器優(yōu)化;synchronized 標(biāo)記的變量可以被編譯器優(yōu)化。


  2. 有了解 java 的原子類?實現(xiàn)原理是什么?


  答:采用硬件提供原子操作指令實現(xiàn)的,即 CAS。每次調(diào)用都會先判斷預(yù)期的值是否符合,才進行寫操作,保證數(shù)據(jù)安全。


  3. spring 主要使用了哪些?IOC 實現(xiàn)原理是什么?AOP 實現(xiàn)原理是什么?


  答:spring 主要功能有 IOC,AOP,MVC 等,IOC 實現(xiàn)原理:先反射生成實例,然后調(diào)用時主動注入。AOP 原理:主要使用 java 動態(tài)代理


  4. mybatis 有了解嗎?它與 hibernate 有什么區(qū)別?項目中,你會選哪個?


  答:兩者都是輕量級 ORM 框架,hibernate 實現(xiàn)功能比較多,通過 HQL 操作數(shù)據(jù)庫,比較簡單方便,但 hibernate 自動生成的 sql 相長,不利測試和查找原因。復(fù)雜 sql 時,編寫比較困難,同時性能也會降低。mybatis 是半自動化,手動編寫 SQL 語句,同時提供豐富的參數(shù)判斷功能。sql 語句較清晰,可以直接進行測試,性能也較好,操作起來非常簡單。同時 hibernate 容易產(chǎn)生n+1 問題。hibernate 學(xué)習(xí)成本較 mybatis 高。國內(nèi)一些大公司基本上使用mybatis


  5. 說說數(shù)據(jù)庫性能優(yōu)化有哪些方法?


  答:使用 explain 進行優(yōu)化,查看 sql 是否充分使用索引。避免使用 in, 用exist 替代,字段值盡可能使用更小的值,任何對列的操作都將導(dǎo)致表掃描,它包括數(shù)據(jù)庫函數(shù)、計算表達式等等,查詢時要盡可能將操作移至等號右邊。使用連接查詢 (join) 代替子查詢。


  在表的多列字段上建立一個索引,但只有在查詢這些字段的第一個字段時,索引才會被使用。


  6. linux 命令熟悉?查看某個線程命令是什么?查看整個機器負(fù)載命令?文件內(nèi)容快速查找命令是什么?


  查看線程:ps -ef|greptomcat


  查看負(fù)載:top


  文件內(nèi)容查找:vi /aa test.txt 或者先打開文件,再查找: vi test.txt /aa


  7. 緩存框架有使用過哪些?memcache 和 redis 有什么區(qū)別?項目中,怎么去選擇?


  答:緩存有: ehcache,memcache 和 redis;


  memcache 和 redis 等區(qū)別:


  1、 Redis 和 Memcache 都是將數(shù)據(jù)存放在內(nèi)存中,都是內(nèi)存數(shù)據(jù)庫。不過 memcache 還可用于緩存其他東西,例如圖片、視頻等等。


  2、Redis 不僅僅支持簡單的 k/v 類型的數(shù)據(jù),同時還提供 list,set, hash 等數(shù)據(jù)結(jié)構(gòu)的 存儲。


  3、虛擬內(nèi)存 --Redis 當(dāng)物理內(nèi)存用完時,可以將一些很久沒用到的value 交換到磁盤


  4、過期策略 --memcache 在 set 時就指定,例如 set key1 0 0 8, 即永不過期。Redis 可以通 過例如 expire 設(shè)定,例如 expire name 10


  5、分布式 -- 設(shè)定 memcache 集群,利用 magent 做一主多從; redis可以做一主多從。都可以一主一從


  6、存儲數(shù)據(jù)安全 --memcache 掛掉后,數(shù)據(jù)沒了;redis 可以定期保存到磁盤(持久化)


  7、災(zāi)難恢復(fù) --memcache 掛掉后,數(shù)據(jù)不可恢復(fù); redis 數(shù)據(jù)丟失后可以通過 aof 恢復(fù)


  8、Redis 支持?jǐn)?shù)據(jù)的備份,即 master-slave 模式的數(shù)據(jù)備份。項目使用選擇:redis 是單線程實現(xiàn),若需要使用控制某些并發(fā)狀態(tài)時,可以使用 redis. 項目中需要使用 復(fù)雜的 list,set 操作時,同時可以對數(shù)據(jù)進行持久化。當(dāng)存儲數(shù)據(jù)較大時,如 100k 以上,那 memcache 性能較好,在多核上,memcache較好


2020年百度Java開發(fā)面試題目


      以上就是動力節(jié)點Java培訓(xùn)機構(gòu)小編介紹的“2020年百度Java開發(fā)面試題目”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。


相關(guān)推薦


最新最全java面試題及答案(初級到高級)


史上最全的中高級JAVA工程師面試題及答案匯總


Java高級開發(fā)工程師面試題


2019史上最全java面試題題庫大全800題


哪有資深java工程師面試題


提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: a免费国产一级特黄aa大 | 色综合久久98天天综合 | 四小虎免费永久观看 | 性欧美videos高清喷水 | 国产成综合| 久久久久久久久久久9精品视频 | 欧美一区视频 | 免费看一级特黄a大片 | 色播在线 | 色哟网站 | 夜夜夜夜夜夜夜猛噜噜噜噜噜噜 | 亚洲欧美一区二区三区在饯 | h网站国产 | 奇米影视第四色888 奇米影视第四色首页 | 狠狠躁夜夜躁人人爽天天miya | 大狠狠大臿蕉香蕉大视频 | 天天爽天天碰狠狠添 | 幻女bbwxxxxyounu| 五月天婷五月天综合网在线 | 欧美高清在线视频在线99精品 | 黄色片一级毛片 | 国产波波社区精品视频 | 欧美一区二区三区视频 | 一本一道波多野结衣一区二区 | 99热这里精品 | 亚洲欧洲综合网 | 国产一在线精品一区在线观看 | 六月成人网 | 精品视频一区二区三区在线播放 | 久久国产亚洲偷自 | 国内一区二区 | 五月开心六月伊人色婷婷 | 久草国产在线观看 | 大尺度福利视频在线观看网址 | 欧美性猛交xxxx免费看手交 | 亚州视频在线 | 国产在线欧美日韩一区二区 | 91在线欧美 | 国产国拍亚洲精品福利 | 免费精品久久久久久中文字幕 | 免费视频一区二区性色 |