【发布时间】:2016-06-24 23:09:03
【问题描述】:
所以这在我切换到引导之前就可以工作。基本上我能够将文本/uri-list 发布到 @OneToMany 资源就好了。我将我的项目切换为使用 Boot,并且在过程中的某个地方它停止工作。我可以在@ManyToOne 端放置一个文本/uri 列表,但这不是我想要做的。
当我提交 POST 时,我收到 204 响应,但我可以在控制台上看到 SQL 仅选择而不插入任何内容。 编辑:我使用 Postman,但这里有一个 curl 命令,它执行/返回相同
curl -v -X POST -H "Content-Type: text/uri-list" -d "http://localhost:8080/games/2" http://localhost:8080/developers/1/gameList
还有 IDEA 上的记录器:
Hibernate: select developer0_.developer_id as develope1_1_0_, developer0_.name as name2_1_0_ from developer developer0_ where developer0_.developer_id=?
Hibernate: select game0_.game_id as game_id1_6_0_, game0_.developer_id as develope5_6_0_, game0_.esrb_rating as esrb_rat2_6_0_, game0_.name as name3_6_0_, game0_.release_date as release_4_6_0_, developer1_.developer_id as develope1_1_1_, developer1_.name as name2_1_1_ from game game0_ left outer join developer developer1_ on game0_.developer_id=developer1_.developer_id where game0_.game_id=?
这是我的相关课程:
@Entity
public class Developer {
@Id
@GeneratedValue
@Column(name = "developerId")
private Long id;
private String name;
@OneToMany(mappedBy = "developer", cascade = CascadeType.ALL)
private List<Game> gameList;
另一个:
@Entity
public class Game {
@Id
@GeneratedValue
@Column(name = "gameId")
private Long id;
private String name;
private Date releaseDate;
private ESRBRating esrbRating;
@ManyToMany(mappedBy = "gameList", cascade = CascadeType.ALL)
private List<User> userList;
@ManyToOne
@JoinColumn(name = "developerId")
private Developer developer;
如果我缺少任何其他相关信息,请告诉我,我会提供。
【问题讨论】:
-
你能添加应该插入的代码吗?
-
您的问题解决了吗?我只是在处理完全相同的问题,而现有的答案并没有那么有帮助。
标签: spring hibernate spring-boot spring-data-rest