Hi Experts!!
I am begnnier in using Hibernate.
I am using Hibernate3.2 with NetBeans5.5 IDE
all the things work out finely but data is not being inserted my Sybase database table.
Here is my problem in depth ready for your reference:: :-)
1) Table structure (Say table Contact)
columnName type constraints
-----------------------------------------------------------------------
empId int notnull,primary key
firstName nvarchar
lastName nvarchar
email nvarchar
==========================================
2) java file for my table say Contact.java
public class Contact {
int empId;
String firstName;
String lastName;
String email;
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
public String getEmail() {
return email;
}
public int getEmpId() {
return empId;
}
public void setEmpId(int empId) {
this.empId = empId;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public void setEmail(String email) {
this.email = email;
}
}
============================================
3) .xml file for the same .... say contact.hbm.xml
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="roseindia.tutorial.hibernate.Contact" table="Test.mdave.Contact">
<id name="empId" type="int" column="empId" >
<generator class="assigned"/>
</id>
<!--<property name="firstName">
<column name="firstName" />
</property>
<property name="lastName">
<column name="lastName"/>
</property>
<property name="email">
<column name="email"/>
</property> -->
<property name="firstName"/>
<property name="lastName"/>
<property name="email"/>
</class>
</hibernate-mapping>
=========================================
4) My Hibernate configuration file .....
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">com.sybase.jdbc2.jdbc.SybDriver</property>
<property name="connection.url">jdbc:sybase:Tds:10.100.112.48:5000/Test</property>
<property name="connection.username">mdave</property>
<property name="connection.password">mdave1</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">10</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.SybaseDialect</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<!-- <property name="hbm2ddl.auto">create</property> -->
<mapping resource="roseindia/tutorial/hibernate/contact.hbm.xml"/>
</session-factory>
</hibernate-configuration>
===============================================
5) This is my mail class file
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class FirstExample {
public static void main(String[] args) {
Session session = null;
try{
// This step will read hibernate.cfg.xml and prepare hibernate for use
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
session =sessionFactory.openSession();
//Create new instance of Contact and set values in it by reading them from form object
System.out.println("Inserting Record .......");
Contact contact = new Contact();
contact.setEmpId(2);
contact.setFirstName("mike");
contact.setLastName("dave");
contact.setEmail("mike@hibernate.com");
session.save(contact);
System.out.println("Done");
}catch(Exception e){
e.printStackTrace();
System.out.println(e.getMessage());
}finally{
// Actual contact insertion will happen at this step
try{
session.flush();
session.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}
==============================================
6) This is what appear in out put window of NetBeans5.5 IDE
run:
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.
Inserting Record .......
Done
Hibernate: insert into Test.mdave.Contact (firstName, lastName, email, empId) values (?, ?, ?, ?)
BUILD SUCCESSFUL (total time: 16 seconds)
============
Please note that i have used Syabase database and when i run my program it gives me error.....
Thanks U All in Advance !!!!!
_________________ I am What I Am
|