SpringDataJPA中的补丁

时间:2017-11-26 13:15:58

标签: java android spring spring-data-jpa retrofit

我正在Android中编写移动应用程序。我有一个TomCat服务器,使用SpringBoot和SpringData JPA。要将Android连接到服务器,我使用Retrofit。我是新手,所以你能帮助我,请问如何使用Patch更新数据库?我有一个控制器:

@RestController
@RequestMapping("/student") 
public class StudentController {
private StudentRepository studentRepository;

@Autowired
public StudentController(StudentRepository studentRepository) {
    this.studentRepository = studentRepository;
}



@RequestMapping(method = RequestMethod.PATCH)//dodanie
public String updateStudent(@RequestBody Student student)
{
   studentRepository.save(student);
    return "{success:true}";
}

//zwraca liste studentow
@RequestMapping(method = RequestMethod.GET)
public List<Student> getStudent(){
    return studentRepository.findAll();
}
}

JPA存储库:

import org.springframework.data.jpa.repository.JpaRepository;

public interface StudentRepository extends JpaRepository<Student, Long>{

}

来自Android:

public interface StudentClient {
@PATCH("student")

Call<Student>updateStudent(@Body Student student);
 }

有什么遗漏?我应该在任何地方添加东西还是JPA?

1 个答案:

答案 0 :(得分:0)

你的问题很通用。

您可以参考本教程,了解PATCH动词如何在服务器端实现。

http://www.baeldung.com/http-put-patch-difference-spring

这个UI方面的教程。

https://futurestud.io/tutorials/retrofit-2-how-to-update-objects-on-the-server-put-vs-patch