我要作出这样的数据插入到我的数据库的请求。表中有4列:ID_DOCUMENT(PK),ID_TASK,说明,FILEPATH如何在spring数据中插入db?
实体
...
@Column(name = "ID_TASK")
private Long idTask;
@Column(name = "DESCRIPTION")
private String description;
@Column(name = "FILEPATH")
private String filepath;
...
库
@Modifying
@Query("insert into TaskDocumentEntity c (c.idTask, c.description, c.filepath) values (:id,:description,:filepath)")
public void insertDocumentByTaskId(@Param("id") Long id,@Param("description") String description,@Param("filepath") String filepath);
控制器
@RequestMapping(value = "/services/tasks/addDocument", method = RequestMethod.POST)
@ResponseBody
public void set(@RequestParam("idTask") Long idTask,@RequestParam("description") String description,@RequestParam("filepath") String filepath){
//TaskDocumentEntity document = new TaskDocumentEntity();
taskDocumentRepository.insertDocumentByTaskId(idTask,descriere,filepath);
}
当我运行我的测试,我得到这个错误: 引起:org.hibernate.hql.ast.QuerySyntaxException:期待OPEN,在第1行第32列附近找到'c'[插入到TaskDocumentEntity c(c.idTask ,c.descriere,c.filepath)值(:身份证,:descriere,:文件路径)] 我试图删除别名℃,甚至不`吨的工作。
删除你的'insertDocumentByTaskId'。在你的控制器创建的'TaskDocumentEntity'设置的属性的实例,并调用'save'方法。 JPA的整点是,你不必再编写查询... –
请张贴的代码资源库类不仅在方法声明,并发表您的春天配置类/ XML。 – dubonzi