面試題:談談你對hibernate的理解


說說這類問題一般要和一個東西比較。說說他們的長處和缺點,hibernate就和JDBC比較唄。你就說說JDBC的優缺點。然后說說hibernate的優缺點,最后對照得出hibernate更好。

hibernate:

   1、概念:ormapping    對象關系映射

       1、操作數據庫的框架

           底層是通過jdbc操作數據庫的

       2、用面向對象的方式操作數據庫

   2、jdbc的缺點

       1、代碼太繁瑣了

       2、不是面向對象的數據庫操作

       3、資源關閉的代碼也非常繁瑣,每次都得打開、關閉

       4、沒有做到數據緩存

       5、移植性比較差

       長處:

          由於是最低層的操作。所以效率比較高

   3、hibernate

       1、代碼比較精簡了

       2、是面向對象的數據庫操作

       3、僅僅須要關閉一個對象就能夠了session

       4、數據緩存  一級緩存  二級緩存  查詢緩存

       5、移植性比較好

       缺點:

          1、程序猿不能控制sql語句的生成

              hibernate中有一個hql

          2、假設一個項目對sql語句的優化要求特別高。不適合用hibernate

          3、假設一張表的數據量特別大。不適合用hibernate

對於查詢數據庫的sql優化問題。這里有一個面試題,給你一個學生student表,叫你用各種方式查詢出指定的學生信息

這里有五種方式得出指定學生2,3,4的信息

--方式一
select *
from student
where id in(2,3,4)

--方式二
select *
from student
where id =2 or id=3 or id=4

--方式三
select *
from student
where id between 2 and 4

--方式四
select *
from student
where id>=2 and id<=4

--方式五
select *
from student
where id=2
union
select *
from student
where id=3
union
select *
from student
where id=4



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM