hibernate学习出错信息

static静态代码块,当类被加载的时候首先读取。。




myeclipse自动生成的数据库连接,连接URL处有问题
   jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=demo
应该去掉中间的Microsoft






hibernate中使用user作为表名的时候,要在映射文件中的user加[],而不是在dao中加








Exception in thread "main" org.hibernate.TransactionException: Transaction not successfully started
at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:183)


主要产生的原因是:
第一、代码在写入数据时,尽量不能使用事务和rollback方法,使用此方法在查询的时候使用。
第二、当更新和插入一条记录到数据库, 使用事务的时候, 关闭数据库的自动提交. 检查你的连接池是否正常.
第三、当有一个错误, 一定要关闭你的Hibernate连接. 当你捕获一个异常, 使用finally关闭hibernate Session或者数据库连接.


对于此问题,解决方案如下:
方法一、如果是数据库事务原因的话,把hibernate的autocommit设为false,设置此参数是在程序代码里来设置。 
方法二、在hibernate配置文件中加入对c3p0连接池的配置,同时将c3p0-0.8.4.5.jar拷贝到应用的lib文件夹下,配置后则采用第三方的c3p0连接池。 
建议使用c3p0连接池.

你可能感兴趣的:(Hibernate,数据库,c3p0,MyEclipse,Microsoft,sqlserver)