日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

利剑无意之JAVA面试题(一)

發布時間:2024/2/28 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利剑无意之JAVA面试题(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • mybatis中ResultMap和ResultType的差別?
    ?

兩者都是表示查詢結果集與java對象之間的一種關系,處理查詢結果集映射到java對象。

resultMap:表示將查詢結果集中的列一一映射到bean對象的各個屬性。

ResultType:表示的是bean中的對象類,此時可以省略掉resultMap標簽的映射,但是必須保證查詢結果集中的屬性 和 bean對象類中的屬性是一一對應的,此時大小寫不敏感,但是有限制。

  • mybatis中的#和$的區別?
    ?

#{}:占位符號,好處防止sql注入

${}:sql拼接符號

#方式能夠很大程度防止sql注入,$方式無法防止sql注入。

?

$方式一般用于傳入數據庫對象,例如傳入表名

?

一般能用#的就別用$

  • JDBC編程有哪些不足之處,MyBatis是如何解決這些問題的?
    ?

1.數據庫鏈接創建、釋放頻繁造成系統資源浪費從而影響系統性能,如果使用數據庫鏈接池可解決此問題。

解決:在SqlMapConfig.xml中配置數據鏈接池,使用連接池管理數據庫鏈接。

2.Sql語句寫在代碼中造成代碼不易維護,實際應用sql變化的可能較大,sql變動需要改變java代碼。

解決:將Sql語句配置在XXXXmapper.xml文件中與java代碼分離。

3.向sql語句傳參數麻煩,因為sql語句的where條件不一定,可能多也可能少,占位符需要和參數一一對應。

解決:Mybatis自動將java對象映射至sql語句。

4.對結果集解析麻煩,sql變化導致解析代碼變化,且解析前需要遍歷,如果能將數據庫記錄封裝成pojo對象解析比較方便。

解決:Mybatis自動將sql執行結果映射至java對象。

  • 常用的動態sq|語句標簽有哪些?
    ?

if、choose、when、otherwise、where、trim、set、foreach

  • 分頁插件pagehelper如何使用?
    ?

1.導入pagehelper依賴

2.在mybatis的配置文件中配置plugin插件

3.在代碼中通過PageHelper.startPage(int num,int size)設置查詢頁碼和每頁記錄數

4.把查詢結果封裝到PageInfo工具類中,獲得相關分頁信息

?

  • 當實體類的屬性名和表種字段名不一致怎么辦?有幾種解決辦法?
    ?

1.在sql語句中給字段添加別名,使用別名與屬性名相同

2.通過resultMap實現字段與屬性的映射

  • 什么是maven本地倉庫? Maven到底有哪些倉庫?它們什么關系?
    ?

本地倉庫路徑配置

所以本地倉庫就是相當于加了一層jar包緩存,先到這里來查。如果這里查不到,那么就去私服上找,如果私服也找不到,那么去中央倉庫去找,找到jar后,會把jar的信息同步到私服和本地倉庫中。

私服,就是公司內部局域網的一臺服務器而已。

中央倉庫:該倉庫存儲了互聯網上的jar,由Maven團隊來維護.

  • Maven的生命周期命令有哪些?
    ?

clean、compile、test、package、install、deploy

  • maven項目中servlet和jsp的依賴范圍是哪個?它有什么作用?

provided:編譯期有效,運行期不需要提供,不會打入包中。

  • Maven坐標是那三個要素?
    ?

groupID,artifactId,version

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的利剑无意之JAVA面试题(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。