我在数据库中保存数据时遇到问题。我是 Spring Boot 的新手。当我运行程序时,写入数据的结果是:packagename@randomcode example:com.abc.Patient.Patient@6e3e681e
这是我的实体类 - Patient.java
@Entity
public class Patient {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String name;
// getter, setter, constructor, etc
}
这是我的 CrudRepo PatientRepository.java
public interface PatientRepository extends CrudRepository<Patient,Integer> {
}
这是我的服务类 PatientService.java
@Service
public class PatientService {
@Autowired
private PatientRepository patientRepository;
public void savePatient (String name) {
Patient patient = new Patient(name);
patientRepository.save(patient);
}
public Optional<Patient> showPatient(int id) {
return patientRepository.findById(id);
}
public List<Patient> showAllPatients() {
List<Patient> patients = new ArrayList<>();
patientRepository.findAll().forEach(patients::add);
return patients;
}
}
我认为问题出在这一行的 savePatient
方法中:
Patient patients = new Patient(name);
我检查了“name”
参数,它是100%正确的字符串。我正在使用 Derby DB。
最佳答案
您遇到的唯一问题是如何打印 Patient
类。定义适当的 toString()
或自行调试以查看结果字段。您的 JPA 实现没有问题。
查看此question了解默认 toString
关于java - Spring boot CrudRepository 保存不良数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53210748/