zoukankan      html  css  js  c++  java
  • 面试题:谈谈你对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


  • 相关阅读:
    golang切片使用append追加内容导致切片值异常问题
    golang对通道进行select,case生效异常问题
    golang defer未按预期顺序执行
    GO实现无锁队列
    mysql建表报错:Specified key was too long
    右键快捷键
    算法与数据结构基础<三>----数据结构基础之栈和队列加强之用栈实现队列
    ios从入门到放弃之C基础巩固-----数组、字符串
    获取股票数据【使用JQData查询行情数据、财务指标、估值指标】
    IDEA配置.gitignore不生效的问题
  • 原文地址:https://www.cnblogs.com/wzzkaifa/p/7258223.html
Copyright © 2011-2022 走看看