【发布时间】:2019-11-29 16:44:15
【问题描述】:
我有以下两个表:
Customer
id
name
Order
id
product_name
customer_id
一对一的关系
和java实体:
@Data
public class Customer{
@Id
private Long id;
private String name;
}
@Data
public class Order{
@Id
private Long id;
@Column("id")
private Customer customer; //i want to somehow map this
private String productName;
}
还有一个控制器
@Controller
public class MyController{
//...
@GetMapping("/")
public String getmap(Model m){
System.out.println(repository.findAll()) //prints "nullrows" due to wrong sql statement
return "mytemplate";
}
}
我当前的问题是,spring 正在执行以下 sql 语句:
SELECT Order.id, Order.product_name, Customer.id, Customer.name
FROM Order LEFT OUTER JOIN Customer ON Customer.id = Order.id
我真正想要的是加入Customer.id = Order.customer_id,同时保持课程不变,即客户参考需要保持秩序。
我已经尝试了迄今为止我能找到的所有注释,但没有取得任何进展。
编辑:
我不允许使用 jpa/hibernate
【问题讨论】:
-
Order和Customer是什么关系?
-
目前1对1
-
SQL语句什么时候执行
-
在我的控制器中调用“repository.findAll()”时
标签: java spring spring-data spring-jdbc