百姓大小事,一呼百应!

百姓网 | 百姓知道

软件开发

hibernate为什么要有方言?HQL是什么?

hibernate为什么要有方言?HQL是什么?

4 个回答

  • 喃星呓 | 2017-10-05 11:23:58

    hibernate中,方言是解决hql翻译成sql保证语法的正确,首先数据库都是支持sql的,不同的数据库会存在一些语法上面的差异。HQL则是基于对象的查询语言,当系统需要数据库的变换时,那么用hibernate的话就只需要改一改配置文件(修改连接字符串、驱动类、方言等),而用传统的jdbc时,那么sql语言可能就要有很多改动。

    本问答由喃星呓提供

  • 喃星呓 | 2017-10-05 11:44:10

    hibernate相于封住jdbc,使hibernate用考虑用数据库HQL语句都根据同数据库言编译相应数据库sql语句hibernate优势HQL语句都要经编译才能应数据库执行语句所用做持久层比ibatis稍慢

    本问答由喃星呓提供

  • 喃星呓 | 2017-10-05 11:30:45

    首先数据库都支持sql同数据库存些语面差异言则解决hql翻译sql语确hql则基于象查询语言hibernate象配置文件及言写hql翻译sql至于要做假系统数据库变换用hibernate需要配置文件(修改字符串、驱类、言等)用传统jdbcsql语言能要基本dao层重写遍吧

    本问答由喃星呓提供

  • 喃星呓 | 2017-10-05 11:29:56

    其实每家公司的数据库产品都只有不超过80%的符合标准sql。例如oracle的pL/sql就根本跟通常的sql相去甚远。而且每种产品的jdbc驱动也不相同,所以需要定义方言。

    本问答由喃星呓提供

* 本站部分内容来源自网络,仅作分享之用,侵删。