Results 1 to 10 of 10

Thread: Hibernate saving object

Threaded View

  1. #1

    Default Hibernate saving object

    Below is the code to save an object inside a MySql database:

    test. java
    -----------

    Code:
    import java.io.Serializable;
    import javax.persistence.Entity;
    import javax.persistence.Table;
    
    @Entity
    @Table(name="test")
    public class test implements Serializable{
    	
    	private static final long serialVersionUID = 1L;
    	private String data;
    
    	public String getData() {
    		return data;
    	}
    
    	public void setData(String data) {
    		this.data = data;
    	}
    }
    database.java
    ----------------

    Code:
    import java.sql.SQLException;
    import java.util.List;
    
    import org.hibernate.HibernateException;
    import org.hibernate.SQLQuery;
    import org.hibernate.Session;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import org.springframework.orm.hibernate3.HibernateCallback;
    import org.springframework.orm.hibernate3.HibernateTemplate;
    
    public class database {
    	public static void main(String[] args){
    	   ApplicationContext ctx = new ClassPathXmlApplicationContext("database.xml");
           HibernateTemplate hibernate = (HibernateTemplate)ctx.getBean("hibernateTemplate");
           
           System.out.println(hibernate.executeFind(new HibernateCallback() {
        	   @Override
        	   public Object doInHibernate(Session session) throws HibernateException, SQLException {
        		   test a = new test();
        		   a.setData("john");
        		   session.save(a);
        		   SQLQuery query = session.createSQLQuery("select * from test");
        		   return query.list();
        	   }
    		}).size());
       }
    }
    However, I am getting the following unpleasant message:

    Code:
    May 2, 2011 1:16:45 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
    INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@17ace8d: display name [org.springframework.context.support.ClassPathXmlApplicationContext@17ace8d]; startup date [Mon May 02 13:16:45 SGT 2011]; root of context hierarchy
    May 2, 2011 1:16:45 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFO: Loading XML bean definitions from class path resource [database.xml]
    May 2, 2011 1:16:46 PM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
    INFO: Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext@17ace8d]: org.springframework.beans.factory.support.DefaultListableBeanFactory@8f4fb3
    May 2, 2011 1:16:46 PM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
    INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@8f4fb3: defining beans [hibernateTemplate,bkl.hib.SessionFactory,bkl.hib.DataSource,bkl.hib.HibernateConfig]; root of factory hierarchy
    May 2, 2011 1:16:47 PM org.hibernate.cfg.annotations.Version <clinit>
    INFO: Hibernate Annotations 3.2.0.GA
    May 2, 2011 1:16:47 PM org.hibernate.cfg.Environment <clinit>
    INFO: Hibernate 3.2.1
    May 2, 2011 1:16:47 PM org.hibernate.cfg.Environment <clinit>
    INFO: hibernate.properties not found
    May 2, 2011 1:16:47 PM org.hibernate.cfg.Environment buildBytecodeProvider
    INFO: Bytecode provider name : cglib
    May 2, 2011 1:16:47 PM org.hibernate.cfg.Environment <clinit>
    INFO: using JDK 1.4 java.sql.Timestamp handling
    May 2, 2011 1:16:47 PM org.springframework.orm.hibernate3.LocalSessionFactoryBean buildSessionFactory
    INFO: Building new Hibernate SessionFactory
    May 2, 2011 1:16:47 PM org.hibernate.connection.ConnectionProviderFactory newConnectionProvider
    INFO: Initializing connection provider: org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: RDBMS: MySQL, version: 5.5.9
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: JDBC driver: MySQL-AB JDBC Driver, version: mysql-connector-java-5.0.8 ( Revision: ${svn.Revision} )
    May 2, 2011 1:16:50 PM org.hibernate.dialect.Dialect <init>
    INFO: Using dialect: org.hibernate.dialect.SQLServerDialect
    May 2, 2011 1:16:50 PM org.hibernate.transaction.TransactionFactoryFactory buildTransactionFactory
    INFO: Using default transaction strategy (direct JDBC transactions)
    May 2, 2011 1:16:50 PM org.hibernate.transaction.TransactionManagerLookupFactory getTransactionManagerLookup
    INFO: No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Automatic flush during beforeCompletion(): disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Automatic session close at end of transaction: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Scrollable result sets: enabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: JDBC3 getGeneratedKeys(): enabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Connection release mode: on_close
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Default batch fetch size: 1
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Generate SQL with comments: enabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Order SQL updates by primary key: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory createQueryTranslatorFactory
    INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
    May 2, 2011 1:16:50 PM org.hibernate.hql.ast.ASTQueryTranslatorFactory <init>
    INFO: Using ASTQueryTranslatorFactory
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Query language substitutions: {}
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: JPA-QL strict compliance: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Second-level cache: enabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Query cache: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory createCacheProvider
    INFO: Cache provider: org.hibernate.cache.NoCacheProvider
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Optimize cache for minimal puts: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Structured second-level cache entries: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Statistics: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Deleted entity synthetic identifier rollback: disabled
    May 2, 2011 1:16:50 PM org.hibernate.cfg.SettingsFactory buildSettings
    INFO: Default entity-mode: pojo
    May 2, 2011 1:16:50 PM org.hibernate.impl.SessionFactoryImpl <init>
    INFO: building session factory
    May 2, 2011 1:16:50 PM org.hibernate.impl.SessionFactoryObjectFactory addInstance
    INFO: Not binding factory to JNDI, no JNDI name configured
    May 2, 2011 1:16:50 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
    INFO: Running hbm2ddl schema update
    May 2, 2011 1:16:50 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
    INFO: fetching database metadata
    May 2, 2011 1:16:50 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
    INFO: updating schema
    May 2, 2011 1:16:50 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
    INFO: schema update complete
    Exception in thread "main" org.springframework.orm.hibernate3.HibernateSystemException: Unknown entity: test; nested exception is org.hibernate.MappingException: Unknown entity: test
    Caused by: org.hibernate.MappingException: Unknown entity: test
    	at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:548)
    	at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1338)
    	at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:96)
    	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
    	at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)
    	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:175)
    	at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)
    	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
    	at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:535)
    	at org.hibernate.impl.SessionImpl.save(SessionImpl.java:523)
    	at org.hibernate.impl.SessionImpl.save(SessionImpl.java:519)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.springframework.orm.hibernate3.HibernateTemplate$CloseSuppressingInvocationHandler.invoke(HibernateTemplate.java:1202)
    	at $Proxy1.save(Unknown Source)
    	at database$1.doInHibernate(database.java:22)
    	at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372)
    	at org.springframework.orm.hibernate3.HibernateTemplate.executeFind(HibernateTemplate.java:342)
    	at database.main(database.java:17)
    Last edited by solomon_13000; May 2nd, 2011 at 06:43 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •