小编Mik*_*ike的帖子

如何在hibernate中对关联表进行排序?

给定两个实体通过连接表连接的数据库表的表示,是否可以通过注释以某种方式对指定排序顺序的另一个实体进行排序?

大致考虑以下数据库表:

actor ( id, name )
credit ( actorId, movieId, roleName )
movie ( id, title, year )
Run Code Online (Sandbox Code Playgroud)

和hibernate实体一样:

@Entity
class Actor {
    @Id
    Integer id;
    @Column
    String name;
    @OneToMany
    @JoinColumn(name = "actorId")
    List<Credit> credits;
}

@Entity
class Credit {
    @Column
    String roleName;
    @ManyToOne
    @JoinColumn(name = "movieId")
    Movie movie;
}

@Entity
class Movie {
    @Id
    Integer id;
    @Column
    Integer year;
    @Column
    String title;
}
Run Code Online (Sandbox Code Playgroud)

所以我希望能够让默认的排序顺序按照电影年份的降序返回一个Actor的Credits:

actor.getCredits(); // Returns credits in order of Credit.movie.year
Run Code Online (Sandbox Code Playgroud)

通过使用@OrderBy,例如@OrderBy("roleName")进行排序似乎非常简单,只有一层深度的加入......但是如何更深入地进行另一次加入呢?

谢谢!

java sql hibernate

8
推荐指数
1
解决办法
4576
查看次数

OS X版本(Lion或不是)检测的C宏?

是否有预定义的C宏来检测OS X的版本?我知道__APPLE____MACH__存在,但那些是二元的.是否有特定值__APPLE_CC__表示狮子?

特别是,Lion在Lion中添加了getline()to 的定义,<stdio.h>能够检测代码是否在Lion上进行编译以及是否可以解决编译错误会很好.

具体来说,我指的是在Bash(XCode之外)中构建Unix C代码.

c macos gcc

7
推荐指数
1
解决办法
4195
查看次数

标签 统计

c ×1

gcc ×1

hibernate ×1

java ×1

macos ×1

sql ×1