MySQl数据库中新建数据库表Students,以StuNum为主键,其他列名包括序号Id、学号StuNum、姓名StuName、住址Address,使用Spring boot+JPA实现jpaRepository对以上数据库表做增删查改等常规操作
时间: 2023-06-08 18:09:27 浏览: 199
mysql数据库操作
好的,我了解了您的要求,下面是以Spring boot JPA实现jpaRepository进行增删查改的示例代码:
1. 首先,您需要创建一个实体类,用于映射数据库中的表Students:
```java
@Entity
@Table(name = "Students")
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column(name = "StuNum")
private String stuNum;
@Column(name = "StuName")
private String stuName;
@Column(name = "Address")
private String address;
// getter & setter
}
```
2. 然后,创建一个继承了JpaRepository的接口,用于对Students表进行增删查改等常规操作:
```java
public interface StudentRepository extends JpaRepository<Student, Integer> {
// 根据学号查询学生信息
Student findByStuNum(String stuNum);
// 根据姓名查询学生信息
List<Student> findByStuName(String stuName);
// 根据学号和姓名查询学生信息
Student findByStuNumAndStuName(String stuNum, String stuName);
}
```
3. 最后,在需要使用增删查改等常规操作的地方,注入StudentRepository,调用相关方法即可:
```java
@RestController
@RequestMapping("/students")
public class StudentController {
@Autowired
private StudentRepository studentRepository;
// 查询所有学生信息
@GetMapping("")
public List<Student> getAllStudents() {
return studentRepository.findAll();
}
// 根据id查询学生信息
@GetMapping("/{id}")
public Student getStudentById(@PathVariable Integer id) {
return studentRepository.findById(id).orElse(null);
}
// 新增学生信息
@PostMapping("")
public Student addStudent(@RequestBody Student student) {
return studentRepository.save(student);
}
// 修改学生信息
@PutMapping("/{id}")
public Student updateStudent(@PathVariable Integer id, @RequestBody Student newStudent) {
Student oldStudent = studentRepository.findById(id).orElse(null);
if (oldStudent == null) {
return null;
}
newStudent.setId(id);
return studentRepository.save(newStudent);
}
// 根据id删除学生信息
@DeleteMapping("/{id}")
public void deleteStudentById(@PathVariable Integer id) {
studentRepository.deleteById(id);
}
}
```
以上就是以Spring boot JPA实现jpaRepository对MySQL数据库表Students做增删查改等常规操作的示例代码,希望能够对您有所帮助。
阅读全文