Skip to Main Content

Java Programming

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

hibernate query...how to connect two databases...

807589Sep 1 2008 — edited Oct 20 2008
hi i m new to hibernate..
i created two tables..
1st table is catalog:
2nd table is acctinfo

//HBM file is :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="hibernate.example.Catalog" table="catalog">
<id name="id" type="integer" column="ID">
<generator class="increment"/>
</id>
<property name="journal" type="string" column="JOURNAL"/>
<property name="publisher" type="string" column="PUBLISHER"/>
<property name="edition" type="string" column="EDITION"/>
<property name="title" type="string" column="TITLE"/>
<property name="author" type="string" column="AUTHOR"/>
<bag name="accinfo" cascade="all" >
<key column="ID"/>
<one-to-many class="hibernate.example.Acctinfo"/>
</bag>
</class>
<class name="hibernate.example.Acctinfo" table="acctinfo">
<id name="id" type="integer" column="ID">
<generator class="increment"/>
</id>
<property name="account" type="string" column="ACCOUNT"/>
<property name="password" type="string" column="PASSWORD"/>
<property name="balance" type="string" column="BALANCE"/>
</class>
</hibernate-mapping>

///******************getter setter file is::****************

package hibernate.example;

public class Acctinfo
{
int id;
String account;
String password;
String balance;

public Acctinfo()
{}

public void setId(int id)
{
this.id = id;
}

public int getId()
{
return id;
}

public void setAccount(String account)
{
this.account = account;
}

public void setPassword(String password)
{
this.password = password;
}

public void setBalance(String balance)
{
this.balance = balance;
}

public String getAccount()
{
return account;
}

public String getBalance()
{
return balance;
}

public String getPassword()
{
return password;
}


}


//********************2nd getter setter file is:***********************

package hibernate.example;

import java.util.List;

public class Catalog
{
int id;
String journal;
String publisher;
String edition;
String title;
String author;
private List accinfo;

public Catalog()
{}

public void setId(int id)
{
this.id = id;
}

public int getId()
{
return id;
}

public void setJournal(String journal)

{
this.journal = journal;
}

public String getJournal()
{
return journal;
}

public void setPublisher(String publisher)
{
this.publisher = publisher;
}

public String getPublisher()
{
return publisher;
}

public void setEdition(String edition)
{
this.edition = edition;
}

public String getEdition()
{
return edition;
}

public void setTitle(String title)
{
this.title = title;
}

public String getTitle()
{
return title;
}

public void setAuthor(String author)
{
this.author = author;
}

public String getAuthor()
{
return author;
}

public void setAccinfo(List accinfo)
{
this.accinfo = accinfo;
}

public List getAccinfo()
{
return accinfo;
}

}


//*************************

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package hibernate.example;

import hibernate.example.Acctinfo;
import hibernate.example.Catalog;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
import org.hibernate.Query;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class CatalogClient
{
Session session = null;
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
public static void main(String str[])
{
CatalogClient clc = new CatalogClient();
//clc.saveData();
//clc.deleteData();
//clc.showData();
clc.updateData();
}
public void showData()
{
try
{
session =sessionFactory.openSession();
String SQL_QUERY ="select id, journal, publisher, edition, title, author from catalog";
// String SQL_QUERY ="select c.ID, c.JOURNAL, c.PUBLISHER, c.EDITION, c.TITLE, c.AUTHOR, a.ACCOUNT, a.PASSWORD,a.BALANCE from catalog c, ACCTINFO a where c.ID = a.ID";
SQLQuery query = session.createSQLQuery(SQL_QUERY);
System.out.println("*** query : *** "+ query);
//for(ListIterator it=query.list().listIterator();it.hasNext();)
// {
for (ListIterator lit = query.list().listIterator(); lit.hasNext();)
{
Object[] row = (Object[]) lit.next();
/*System.out.println("ID: " + row[0]);
System.out.println("Title: " + row[1]);
System.out.println("Author: " + row[2]);
System.out.println("Isbn: " + row[3]);
System.out.println("Pages: " + row[4]);
System.out.println("Copyright: " + row[5]);
System.out.println("Cost: " + row[6]);
System.out.println("******NEXT****************");
Object[] row = (Object[]) it.next();*/
System.out.println("ID: " + row[0]);
System.out.println("JOURNAL: " + row[1]);
System.out.println("PUBLISHER: " + row[2]);
System.out.println("EDITION: " + row[3]);
System.out.println("TITLE: " + row[4]);
System.out.println("AUTHOR: " + row[5]);
System.out.println("acc: " + row[6]);
System.out.println("pass: " + row[7]);
System.out.println("bal: " + row[8]);
System.out.println("***************************");
}
session.close();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
}
public void saveData()
{
session =sessionFactory.openSession();
Transaction transaction = null;
transaction = session.beginTransaction();

Catalog catalog = setBean();
//System.out.println("before save");
session.save(catalog);
//System.out.println("after save");
transaction.commit();
session.flush();
session.close();
}
public void updateData()
{
session =sessionFactory.openSession();
Catalog catalog = new Catalog();
catalog.setId(2);
catalog.setAuthor("manoj");
catalog.setJournal("java");
catalog.setEdition("1st");
catalog.setPublisher("indiabulls");
catalog.setTitle("java Servlet");
session.update(catalog);
session.flush();
session.close();
}
public void deleteData()
{
session =sessionFactory.openSession();
Catalog catalog = new Catalog();
catalog.setId(3);
session.delete(catalog);
session.flush();
session.close();
}
public static Catalog setBean()
{
Acctinfo accinfo = new Acctinfo();
accinfo.setAccount("MANOJ1");
accinfo.setPassword("orbis");
accinfo.setBalance("1000");

List list = new ArrayList();
list.add(accinfo);

Catalog catalog = new Catalog();
catalog.setJournal("india");
catalog.setPublisher("indiabulls");
catalog.setEdition("ist");
catalog.setTitle("orbis");
catalog.setAuthor("manoj");
catalog.setAccinfo(list);
return catalog;
}
}

//********************CFG FILE IS ******************

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="session">
<property name="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@172.16.31.25:1521:BOMBAY</property>
<property name="hibernate.connection.username">mumbai</property>
<property name="hibernate.connection.password">mumbai123</property>
<!-- Set AutoCommit to true -->
<property name="connection.autocommit">true</property>
<property name="dialect">org.hibernate.dialect.OracleDialect</property>
<!-- Mapping files -->
<mapping resource="Catalog.hbm.xml"/>
</session-factory>
</hibernate-configuration>


**********************error i m facing is :************************

0 [main] WARN net.sf.ehcache.config.Configurator - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/C:/Documents%20and%20Settings/d.poonam/Desktop/hibernate/lib/ehcache-1.1.jar!/ehcache-failsafe.xml
1188 [main] WARN org.hibernate.impl.SessionFactoryObjectFactory - Could not bind factory to JNDI
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getNameParser(Unknown Source)
at org.hibernate.util.NamingHelper.bind(NamingHelper.java:52)
at org.hibernate.impl.SessionFactoryObjectFactory.addInstance(SessionFactoryObjectFactory.java:90)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:247)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1043)
at hibernate.example.CatalogClient.<init>(CatalogClient.java:24)
at hibernate.example.CatalogClient.main(CatalogClient.java:27)


please help me out....
thanks in advance..
if u know how to connect two tables plz let me know..
its urgent....
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Nov 17 2008
Added on Sep 1 2008
21 comments
2,871 views