温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Hibernate JDBC是什么

发布时间:2021-12-04 16:21:40 来源:亿速云 阅读:107 作者:iii 栏目:编程语言

这篇文章主要介绍“Hibernate JDBC是什么”,在日常操作中,相信很多人在Hibernate JDBC是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Hibernate JDBC是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一.老版本的JDBC

如果在用Hibernate操作比较老的JDBC版本时遇到了问题, 那么请禁用下面这两个JDBC 2特有的特性:  批量更新和滚动的结果集.
◆Hibernate.jdbc.batch_size=0
◆Hibernate.jdbc.use_scrollable_resultsets=false

1.oracle驱动

注: oracle安装文件的jdbc目录下的lib目录中,有oracle所需的各种驱动. 支持所有平台的JDBC Thin驱动如: classes12.jar , ojdbc14.jar等等…
◆classes12.jar  - JDK 1.2 和 JDK 1.3下使用
◆ojdbc14.jar  - JDK 1.4以上使用

2.thin与oci访问的区别

这个是Oracle提供的两套Java访问Oracle数据库的方法。thin就是纯粹用Java完成访问数据库的所有方法,优点是不用安装客户端;oci是Oracle   Call   Interface的首字母缩写,就是使用Java来调用本机的Oracle客户端,然后再访问数据库,优点是速度快,但是需要安装和配置数据库。(oci方式连接数据库,如果不安装oracle客户端,我们必须将oracle的bin目录中的oci.dll, ocijdbc9.dll, ociw32.dll  copy到应用所使用的JDK的bin目录中.)

jdbc:oracle:thin:@ip地址:1521:实例名  换为  jdbc:oracle:oci@本地服务名 即可。如:从jdbc:oracle:thin:@10.1.1.2:1521:shdb改成:jdbc:oracle:oci8:@shdb.  Shdb是数据库,非数据库用户.

二.Hibernate基础——JMX

JMX是一个用来管理Java应用和组件的标准API---主要通过Mbean访问这些应用程序和组件.Mbean是服务和资源包装器.

三.Hibernate基础——XML配置

Hibernate.cfg.xml,它应放在应用程序类路径的根目录中.如果已经使用了hibernate.properties,那么hibernate.cfg.xml会覆盖hibenate.properties中的任何设置.

四.Hibernate基础——自定义命名策略

假设CaveatEmptor中的所有表名都应该遵循模式CE_<table_name>.一种解决方案是手工在映射文件中的所有<class>和集合元素上指定table属性.然而,这种方法既费时又容易遗忘.替代做法是,实现Hibnernate的NamingStrategy接口:

Public class CENamingStrategy extends ImprovedNamingStrategy{  Public String classToTableName(String className){  Return StringHelper.unqualify(className);  }  Public String propertyToColumnName(String propertyName){  Return propertyName;  }  Public String tableName(String tableName){  Return “CE_”+tableName  }  Public String columnName(String columnName){  Return columnName;  }  Public Strring propertyToTableName(String className,String propertyName){  Return “CE_”+classToTableNmae(className)  +”_”+propertyToColumnName(propertyName);  }  }

你扩展了ImproveNameingStrategy,它对你不想从头开始实现的NamingStrategy的所有方法提供默认实现.仅当<class>映射没有指定显式的table名称时才调用classToTableName方法.如果属性没有显式的column名称,就调用propertyToColumnName()方法.当声明了显式的名称时,则调用tableName()和columnName()方法.NamingStrategy接口的***特性是动态行为的潜能.为了启用一个特定的命名策略.可以在启动时把一个实例传递到Hibernate的Configuration:

Configuration cfg = new Configuration();    Cfg.setNamingStrategy(new CENameingStrategy());  SessionFactory sessionFactory = cfg.configure().buildSessionFactory();

到此,关于“Hibernate JDBC是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI