web工程单独使用hibernate(用于测试以及hibernate入门)
1 首先下载hibernate包地址:http://hibernate.org/orm/
2 新建web工程,添加hibernate的lib参考包(将第一步解压的文件里的lib文件夹下required文件夹下的jar包复制到web工程的webroot的web-inf的lib下)
3 文件结构如图
4 Test类用作测试效果:代码:
package com.sinosoft; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; public class Test { public static void main(String[] args) { Configuration cfg=new Configuration(); cfg.configure("hibernate.cfg.xml"); @SuppressWarnings("deprecation") SessionFactory sf=cfg.buildSessionFactory(); Session session = sf.openSession(); Transaction tx=session.beginTransaction(); Person person = new Person(); person.setName("lxy"); session.save(person); tx.commit(); session.close(); sf.close(); } }
将Test类以java application运行即可检测效果。
5 注意事项: *<property name = "dialect">org.hibernate.dialect.OracleDialect</property>这个语句一定要和jar包驱动对应,不然会报hibernate_sequence找不到。
*以下报错可以忽略,仍能达成实验效果。
2014-10-21 11:05:31 org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit> INFO: HCANN000001: Hibernate Commons Annotations {4.0.5.Final} 2014-10-21 11:05:31 org.hibernate.Version logVersion INFO: HHH000412: Hibernate Core {4.3.6.Final} 2014-10-21 11:05:31 org.hibernate.cfg.Environment <clinit> INFO: HHH000206: hibernate.properties not found 2014-10-21 11:05:31 org.hibernate.cfg.Environment buildBytecodeProvider INFO: HHH000021: Bytecode provider name : javassist 2014-10-21 11:05:31 org.hibernate.cfg.Configuration configure INFO: HHH000043: Configuring from resource: hibernate.cfg.xml 2014-10-21 11:05:31 org.hibernate.cfg.Configuration getConfigurationInputStream INFO: HHH000040: Configuration resource: hibernate.cfg.xml 2014-10-21 11:05:31 org.hibernate.cfg.Configuration addResource INFO: HHH000221: Reading mappings from resource: com/sinosoft/config/Person.hbm.xml 2014-10-21 11:05:31 org.hibernate.cfg.Configuration doConfigure INFO: HHH000041: Configured SessionFactory: null 2014-10-21 11:05:31 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure WARN: HHH000402: Using Hibernate built-in connection pool (not for production use!) 2014-10-21 11:05:31 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator INFO: HHH000401: using driver [oracle.jdbc.driver.OracleDriver] at URL [jdbc:oracle:thin:@127.0.0.1:1521:orcl] 2014-10-21 11:05:31 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator INFO: HHH000046: Connection properties: {user=hjs, password=****} 2014-10-21 11:05:31 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator INFO: HHH000006: Autocommit mode: false 2014-10-21 11:05:31 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000115: Hibernate connection pool size: 20 (min=1) 2014-10-21 11:05:31 org.hibernate.dialect.Dialect <init> INFO: HHH000400: Using dialect: org.hibernate.dialect.OracleDialect 2014-10-21 11:05:32 org.hibernate.dialect.Oracle9Dialect <init> WARN: HHH000063: The Oracle9Dialect dialect has been deprecated; use either Oracle9iDialect or Oracle10gDialect instead 2014-10-21 11:05:32 org.hibernate.dialect.OracleDialect <init> WARN: HHH000064: The OracleDialect dialect has been deprecated; use Oracle8iDialect instead 2014-10-21 11:05:32 org.hibernate.engine.jdbc.internal.LobCreatorBuilder useContextualLobCreation INFO: HHH000424: Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException 2014-10-21 11:05:32 org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService INFO: HHH000399: Using default transaction strategy (direct JDBC transactions) 2014-10-21 11:05:32 org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory <init>
*上述Test类的main方法里的
Transaction tx=session.beginTransaction();这句意为已打开事务 如若添加tx.begin();语句则会报错。
希望大家能够调试成功。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。