在HibernateJava中插入数据

在HibernateJava中插入数据,hibernate,Hibernate,我在hibernate中从文本文件中读取数据,但问题是最后两列(即年龄和薪水列)没有插入到person表中。最初,我在如下所示使用ClientPerson1类时将create设置为create,在如下使用ClientPerson2检索此表时将其更改为update //波乔班 package com.aamir; public class Person { private int id; private String name; private String address; private

我在hibernate中从文本文件中读取数据,但问题是最后两列(即年龄和薪水列)没有插入到person表中。最初,我在如下所示使用ClientPerson1类时将
create
设置为
create
,在如下使用ClientPerson2检索此表时将其更改为
update

//波乔班

package com.aamir;

public class Person {

private int id;
private String name;
private String address;
private String education;
private int age;
private int salary;

public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public String getAddress() {
    return address;
}
public void setAddress(String address) {
    this.address = address;
}
public String getEducation() {
    return education;
}
public void setEducation(String education) {
    this.education = education;
}
public int getAge() {
    return age;
}
public void setAge(int age) {
    this.age = age;
}
public int getSalary() {
    return salary;
}
public void setSalary(int salary) {
    this.salary = salary;
}

public String toString() {

    StringBuffer sb = new StringBuffer();
    sb.append("id = " + id);
    sb.append(", name = " + name);
    sb.append(", address = " + address);
    sb.append(", education = " + education);
    sb.append(", age = " + age);
    sb.append(", salary = " + salary);

    return sb.toString();
}
}

//person.txt

1, aamir, btm, BCA, 24, 30000
2, saqib, jpnagar, MCA, 22, 40000
3, holly, btm, ME, 34, 29090
4, sandy, jpnagar, ME, 20, 8000
5, mathew, btm, BCA, 42, 8000
6, kim, jpnagar, MCA, 38, 80000
7, Amjid, btm, BCA, 22, 30000
8, Landy, jpnagar, ME, 32, 40000
9, Andy, btm, BCA, 46, 80000
10, simon, btm, MCA, 52, 20000
//hibernate.cfg.xml

<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
    <session-factory>
     <property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
    <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
    <property name="hibernate.connection.username">system</property>
    <property name="hibernate.connection.password">mandriva</property>
    <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:XE</property>
     <property name="hibernate.hbm2ddl.auto">create</property>
    <property name="hibernate.show_sql">true</property>
    <mapping resource="com/aamir/person.hbm.xml"/>
</session-factory>
</hibernate-configuration>
//现在我正在从这个表中检索数据,但对于最后两列(年龄、薪水),每行返回0,当我检查d-base时,最后两列没有添加

//客户2

  package com.aamir;
 import org.hibernate.cfg.Configuration;
 import org.hibernate.Session;
 import org.hibernate.SessionFactory;
 import org.hibernate.Criteria;
 import java.util.List;

public class ClientPerson2 {

public static void main(String[] args) {

    Configuration c1 = new Configuration();
         c1.configure();
    SessionFactory sf = c1.buildSessionFactory();
    Session s1 = sf.openSession();

     Criteria ctr = s1.createCriteria(Person.class);
     List<Person> list = ctr.list();

     for(Person p : list) {

         System.out.println(p);
     }

    }
}
package com.aamir;
导入org.hibernate.cfg.Configuration;
导入org.hibernate.Session;
导入org.hibernate.SessionFactory;
导入org.hibernate.Criteria;
导入java.util.List;
公共类客户端人员2{
公共静态void main(字符串[]args){
配置c1=新配置();
c1.configure();
SessionFactory sf=c1.buildSessionFactory();
会话s1=sf.openSession();
Criteria ctr=s1.createCriteria(Person.class);
List List=ctr.List();
用于(人员p:列表){
系统输出println(p);
}
}
}

我猜您在person.hbm.xml中有一个输入错误:

<properties name="age"/> <properties name="salary"/> 而不是

<property name="age"/> <property name="salary"/>
谢谢,我太笨了。它成功了,再次非常感谢。 <properties name="age"/> <properties name="salary"/> <property name="age"/> <property name="salary"/>