讲得好我加分!!!!!!!!!!!!!!! 1-------------------------------------- 
package com.bjsxt.hibernate; public class Student { private int id; private String name; private Classes classes; 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 Classes getClasses() { 
return classes; 
} public void setClasses(Classes classes) { 
this.classes = classes; 


关联的hbm。xml 
<?xml version="1.0"?> 
<!DOCTYPE hibernate-mapping PUBLIC 
"-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 
<hibernate-mapping> 
<class name="com.bjsxt.hibernate.Student" table="t_student"> 
<id name="id"> 
<generator class="native"/> 
</id> 
<property name="name"/> 
<many-to-one name="classes" column="classesid"/>"> 
</class> 
</hibernate-mapping> 
可以用别的代码代替此xml吗????????????????????????????????请详细讲解,我加分!!!!!!!!!!!!!
2------------------------------------ 
public class Classes { private int id; private String name; private Set students; 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 Set getStudents() { 
return students; 
} public void setStudents(Set students) { 
this.students = students; 
} } 
关联的hbm。xml 
<?xml version="1.0"?> 
<!DOCTYPE hibernate-mapping PUBLIC 
"-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> 
<hibernate-mapping package="com.bjsxt.hibernate"> 
<class name="Classes" table="t_classes"> 
<id name="id"> 
<generator class="native"/> 
</id> 
<property name="name"/> 
<set name="students" inverse="true" cascade="all"> 
<key column="classesid"/> 
<one-to-many class="Student"/> 
</set> 
</class> 
</hibernate-mapping> 
 
 可以用别的代码代替此xml吗????????????????????????????????请详细讲解,我加分!!!!!!!!!!!!!

解决方案 »

  1.   

    hibernate从3.2开始已经支持用Annotation来进行映射,具体细节请参考官方文档。另外,建议楼主学习的过程中多去官方网站,那里才是学习的最好的地方
      

  2.   

    请问lz要用什么代替呢?有什么不好吗,一个POJO对应一个映射文件,易于维护和修改
      

  3.   


    package com.bjsxt.hibernate; @Entity
    /*
     * 指定该类为实体类。
     */
    public class Student { @Id
    @GeneratedValue(generator="hibernate-uuid-generator")
    @GenericGenerator(name="hibernate-uuid-generator", strategy="uuid")
    /*
     * 指定这是id,生成策略为自定义的hibernate-uuid-generator生成策略
     * hibernate-uuid-generator生成策略又使用了hibernate中的uuid生成策略
     */
    private int id; private String name; private Classes classes; //这里不需要关联,关系从one的一方维护.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 Classes getClasses() { 
    return classes; 
    } public void setClasses(Classes classes) { 
    this.classes = classes; 

    }
    @Entity
    public class Classes { @Id
    @GeneratedValue(generator="hibernate-uuid-generator")
    @GenericGenerator(name="hibernate-uuid-generator", strategy="uuid")
    private int id; private String name; @OneToMany(mappedBy="classes")
    /*
     * 维护一对多关联关系映射.
     */
    private Set students; 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 Set getStudents() { 
    return students; 
    } public void setStudents(Set students) { 
    this.students = students; 
    } }
      

  4.   

    我是说xml里的代码可以用别的标签换吗
      

  5.   

    不能 既然你选择用hbm的映射,就必须按照它的标签规范给定义设置属性,不想用这个你可以选择其他数据库框架啊!如ibatis 或者其他的。
      

  6.   

    xml里面的东西可以换,同时,你就得把hibernate中对xml的解析部分重写.就相当于,现实中,如果想要违法还能像正常人一样生活,就需要改写法律。