hibernate高手帮忙!

来源:百度知道 编辑:UC知道 时间:2024/05/27 07:13:42
有一个学生表,怎么做学生之间的朋友关系!一个学生有很多这个表中的朋友,这个映射文件该怎么写啊?能不能写?不能写?那要用hibernate的话该怎么解决呢?

public class Student implements java.io.Serializable {
private Integer sid;
private String name;
private Set<Student> friends = new HashSet<Student>();
}
Student.hbm.xml:
<set name="friends" cascade="all">
<key>
<column name="fid" />
</key>
<one-to-many class="Student" />
</set>
表的创建可在Hibernate.cfg.xml中设置hbm2ddl.auto=create就行了,当然也可自己创建:
create table student(
sid Integer primary key auto_increment,
name varchar(20) not null,
fid Integer);
alter table student add constraint foreign key (fid) references student(sid);
觉得好,请追加分!

这个问题不错
有意思
hibernate这种情况怎么弄我不清楚

先说说不用hibernate的方法,我也不知道hibernate有没有对应的解决方案

8421 码的方法:
用8421码生成用户的id(1248...码 二进制就是1 10 100 1000 ...,就是说这些数不管怎么加结果都是惟一不会重复的 因为其二进制的每一位上只会有一个1(也可能是0),而这个1就决定了是那个id的:好好领会)
这样只要把所有好友的id加和把结果存一下就行了

8421