比方说,我有两张表,Person和Car,我把这两张链接起来。以下代码是用Person.java编写的
@ManyToMany(cascade = CascadeType.ALL, mappedBy = "persons")
private Set<Car> cars= new HashSet<Car>();我看到一个创建了CAR_PERSON的表,但没有创建任何类。那么我该如何给一个人添加一个汽车列表呢?我已经获得了所需的person对象并创建了cars,但是如何将其添加到表中呢?在将汽车集分配给person对象之后,我尝试使用person.merge,但是表中没有条目。我昨天刚刚开始这个Spring Roo项目,所以请原谅我的无知:)下面是我写的用于链接汽车和人的代码。这是在PersonController中
@RequestMapping(value ="/saveCars", method = RequestMethod.POST)
@ResponseBody
public String saveCars(@RequestParam("personId")Long personId, @RequestParam("cars") String incomingCars){
Map<String, Object> response = new HashMap<String, Object>();
try{
...
for(int i=0 ; i<temp.length ; i++){
carID = Long.parseLong(temp[i]);
cars.add(Product.findCar(carID));
}
person.setCars(cars);
person.merge();
}
LOG.debug("cars successfully added to questionnaire");
response.put("message", "success");
}
return new JSONSerializer().exclude("*.class").deepSerialize(response);
}发布于 2012-02-16 17:30:58
如果你不想在保存时添加任何额外的东西,我会让Roo自己管理保存。我建议您将野战车辆添加到使用Roo shell的人员。然后,Roo将自动修改controllers以将汽车列表添加到person
https://stackoverflow.com/questions/9308387
复制相似问题