• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Hibernate Mapping

 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
sir...i am new for hibernate...i make two files names as Login.hmb.xml and Fees.hbm.xml....and i had created two table in postgresDB names as login and fees.

Login.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping auto-import="true" default-lazy="false">

<class
name="dream.dao.hibernate.Login"
table="login"
>

<id
name="id"
type="java.lang.Integer"
column="id"
>
<generator class="increment" />
</id>

<property
name="loginid"
type="java.lang.String"
column="loginid"
not-null="true"
unique="true"
length="20"
/>
<property
name="password"
type="java.lang.String"
column="password"
not-null="true"
length="20"
/>

<property
name="email"
type="java.lang.String"
column="email"
not-null="false"
length="30"
/>
<property
name="address"
type="java.lang.String"
column="address"
not-null="false"
length="60"
/>

<property
name="phno"
type="int"
column="phno"
not-null="false"
length="11"
/>


</class>
</hibernate-mapping>

Login.java

package dream.dao.hibernate;

import java.io.Serializable;

public class Login implements Serializable {

/** identifier field */
private Integer id;

/** persistent field */
private String loginid;

/** persistent field */
private String password;

/** persistent field */
private String email;


/** persistent field */
private String address;


/** persistent field */
private int phno;

/** full constructor */
public Login(Integer id, String loginid, String password, String email, String address, int phno) {
this.id = id;
this.loginid = loginid;
this.password = password;
this.address = address;
this.phno = phno;
this.email = email;
}

/** default constructor */
public Login() {
}

public Integer getId() {
return this.id;
}

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

public String getLoginid() {
return this.loginid;
}

public void setLoginid(String loginid) {
this.loginid = loginid;
}

public String getPassword() {
return this.password;
}

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

public String getAddress() {
return address;
}

public void setAddress(String address) {
this.address = address;
}

public String getEmail() {
return email;
}

public void setEmail(String email) {
this.email = email;
}

public int getPhno() {
return phno;
}

public void setPhno(int phno) {
this.phno = phno;
}

}

fees.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping auto-import="true" default-lazy="false">

<class
name="dream.dao.hibernate.Fees"
table="fees"
>

<id
name="id"
type="java.lang.Integer"
column="id"
>
<generator class="increment" />
</id>

<property
name="loginid"
type="java.lang.String"
column="loginid"
not-null="true"
unique="true"
length="20"
/>

<property
name="amount"
type="java.lang.Integer"
>
<column name="amount" sql-type="integer" not-null="true" length="11"></column>
</property>


</class>
</hibernate-mapping>

Fees.java
package dream.dao.hibernate;

import java.io.Serializable;

public class Fees implements Serializable {

/** identifier field */
private Integer id;

/** persistent field */
private String loginid;

/** persistent field */
private Integer amount;

/** full constructor */
public Fees(Integer id, String loginid, Integer amount) {
this.id = id;
this.loginid = loginid;
this.amount = amount;
}

/** default constructor */
public Fees() {
}

public Integer getId() {
return this.id;
}

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

public String getLoginid() {
return this.loginid;
}

public void setLoginid(String loginid) {
this.loginid = loginid;
}

public Integer getAmount() {
return this.amount;
}

public void setAmount(Integer amount) {
this.amount = amount;
}

}

Tabels login and fees


CREATE TABLE "login"
(
id integer NOT NULL,
loginid character varying(20) NOT NULL,
"password" character varying(20) NOT NULL,
email character varying(30),
address character varying(60),
phno integer DEFAULT 0,
CONSTRAINT primary_id PRIMARY KEY (id),
CONSTRAINT unique_loginid UNIQUE (loginid)
)
WITH (
OIDS=FALSE
);
ALTER TABLE "login" OWNER TO postgres;


CREATE TABLE fees
(
id integer NOT NULL,
loginid character varying(20) NOT NULL,
amount integer NOT NULL,
CONSTRAINT pk_sal PRIMARY KEY (id),
CONSTRAINT fk_sal FOREIGN KEY (loginid)
REFERENCES "login" (loginid) MATCH SIMPLE
ON UPDATE CASCADE ON DELETE CASCADE
)
WITH (
OIDS=FALSE
);
ALTER TABLE fees OWNER TO postgres;


Now my problem is that..when i am giving correct data they everything is fine but when i given wrong data also its inserting data fine without error...ex:--in my fees.hbm.xml and fees table the datatype of 'amount' column is integer.whenever i am giving char type value it also accept it and store it without throwing error..so how to fix this issue ..thanks in advance..please do needhul...
 
reply
    Bookmark Topic Watch Topic
  • New Topic