在学习Hibernate框架的关系映射时,遇到了一个问题:

INFO: HHH000422: Disabling contextual LOB creation as connection was null

在网上找了一下原因,以下是网上找的原文:

毕竟hibernate是有名的ORM框架,所以还是学着用一用,结果还是出了不少问题,文档啊文档,你就不能及时更新么。

首先在创建一个全局的SessionFactory中,文档中的示例代码是这样的,但这个是不能成功运行的,需要在try块中稍微改一下

public class HibernateUtil {

private static final SessionFactory sessionFactory = buildSessionFactory();

private static SessionFactory buildSessionFactory() {
try {
// Create the SessionFactory from hibernate.cfg.xml
new Configuration().configure().buildSessionFactory(
new StandardServiceRegistryBuilder().build() );
}
catch (Throwable ex) {
// Make sure you log the exception, as it might be swallowed
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
} public static SessionFactory getSessionFactory() {
return sessionFactory;
}

}

Configuration config = new Configuration();

config.configure(“hibernate.cfg.xml”); // 这里还是指定一下要不然会先去找hibernate.properties

return config.buildSessionFactory(new StandardServiceRegistryBuilder()

.applySettings(config.getProperties()).build()); // 主要多加了一个applySettings

然后在启动的时候还会抛一个错

九月 17, 2014 9:29:52 下午 org.hibernate.engine.jdbc.internal.LobCreatorBuilder useContextualLobCreation

INFO: HHH000424: Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException

在下面这个网站可以看这部分的源码

http://grepcode.com/file/repo1.maven.org/maven2/org.hibernate/hibernate-core/4.3.6.Final/org/hibernate/engine/jdbc/internal/LobCreatorBuilder.java#LobCreatorBuilder.useContextualLobCreation%28java.util.Map%2Cjava.sql.Connection%29

其中的注释是这样说的

Basically here we are simply checking whether we can call the java.sql.Connection methods for LOB creation added in JDBC 4. We not only check whether the java.sql.Connection declares these methods, but also whether the actual java.sql.Connection instance implements them (i.e. can be called without simply throwing an exception).

也就是说,这个错误应该是hibernate检测到mysql-connector-java(5.1.31)没有实现这个接口。

也看到有人说http://my.oschina.net/huangchp/blog/205461

使用mysql-connector-java 5.1.13及以下版本可以解决,但具体原因还不知道

感觉应该是这个原因了,不过暂时不影响使用就先不管了

这里是:原文链接

最新文章

  1. Android -- 获取网络数据并将数据存到本地数据库中
  2. Arduino uno LED灯实验
  3. Elasticsearch安装
  4. Windows Phone编程中Dispatcher.BeginInvoke的使用
  5. Codeforces 475D CGCDSSQ(分治)
  6. iOS-UITextField中给placeholder动态设置颜色的四种方法
  7. SQLite 学习流水账笔记
  8. UIScrollView 代理方法
  9. sysadmin_basement
  10. C#之基础
  11. FastDFS 集群 安装 配置
  12. LinuxCPU性能监控工具---mpstat
  13. go tail
  14. Docker入门 - 002 Docker 的简单操作
  15. AtCoder WTF 2019 C2. Triangular Lamps Hard
  16. yii 定义场景
  17. SpringApplication初始化
  18. Celery学习--- Celery 最佳实践之与django结合实现异步任务
  19. 整体修改VS中C++工程和解决方案命名问题
  20. 浅谈Android选项卡(三)

热门文章

  1. Ncurses-窗口
  2. python安装plinter
  3. noip宝藏
  4. 【Android】ScaleAnimation 详解
  5. 本地化KendoUI
  6. POJ2676 Sudoku 舞蹈链 DLX
  7. xml方式将dataset导出excel
  8. 011 Linux环境下配置eclipse,以及创建maven工程
  9. IEnumerable 与 IEnumerable<T>
  10. 使用EndNote在Word中插入参考文献